LINUX.ORG.RU
ФорумAdmin

как завернуть все сайты на один

 ,


0

1

имеется кеширующий днс unbound который крутится на фре 11

можно ли в нем сделать так чтобы вместо любого сайта на который хочет пройти пользователь открывался один единственный, так сказать некая заглушка для интернета.

Перемещено beastie из general



Последнее исправление: diakon2 (всего исправлений: 1)

днс
сделать так чтобы вместо любого сайта на который хочет пройти пользователь открывался один единственный

А причём тут DNS? Настрой веб-сервер.

h578b1bde ★☆
()
Ответ на: комментарий от h578b1bde

А причём тут DNS? Настрой веб-сервер.

При том, что надо на этот веб-сервер попасть сначала.

AS ★★★★★
()
Ответ на: комментарий от h578b1bde

это каким образом мне нужно настроить веб сервер чтобы люди желающие открыть ya.ru попадали на мой сайт?

diakon2
() автор топика

можно ли в нем сделать так чтобы вместо любого
сайта на который хочет пройти пользователь открывался
один единственный, так сказать некая заглушка для интернета.

Вообще в DNS можно: https://en.wikipedia.org/wiki/Wildcard_DNS_record
Можно ли в unbound - не знаю.

AS ★★★★★
()
Ответ на: комментарий от diakon2

чтобы люди желающие открыть ya.ru попадали на мой сайт

Неправильно понял задачу, подумал что ты хочешь дабы людям ботам, приходящим на веб-сервер извне по всяких странных адресах отдавалась заглушка вместо нормального сайта. В твоём же случае необходимо в настройках твоего DNS-сервера создать зону ya.ru и A-запись, указывающую на IP веб-сервера. Само собой твой DNS-сервер в списке DNS-серверов клиента должен стоять первым.

h578b1bde ★☆
()

Может быть тебе нужен captive portal? Возможно это проще сделать при помощи dnat.

sin_a ★★★★★
()
Ответ на: комментарий от diakon2

Ну да, в первом приближении как-то приблизительно так:

iptables -t nat -A FORWARD -o eth0 --dport 80 -j DNAT --to-destination 10.10.14.2
По мотивам: http://linux-ip.net/html/nat-dnat.html . Ну там, если у тебя bsd то ты наверно сам знаешь как у тебя пакетный фильтр управляется.

sin_a ★★★★★
()
Ответ на: комментарий от diakon2

на ней созданы саб интерфейсы, былобы просто чудно блокировать интернет так, чтобы у некоторых интернет работал полностью, а у некоторых не работало ничего кроме одного единственного сайта.

вот так сконфигурированы сабы

interface GigabitEthernet0/1.3011
 description buhgaltery
 encapsulation dot1Q 3011
 ip address 10.0.0.1 255.255.255.0
 no ip redirects
 no ip unreachables
 ip nat inside
 ip virtual-reassembly

diakon2
() автор топика
Ответ на: комментарий от anonymous

ну это нужно для того чтобы людям у которых кончились средства на счету вылезала заглушка мол - у вас недостаточно средств, оплатите.

биллинг самописный на перле, сеть на цысках, днс на freebsd+unbound

если есть идеи как это можно сделать то вы поделитесь, не держите в себе) я пока вижу такой вариант - биллинг в случае неоплаты навешивает acl на сабинтерфейс абонента блокирующие все кроме локального сервера днс и сервера с веб заглушкой.

в данный момент биллинг просто дает shutdown на саб абонента.

diakon2
() автор топика
Ответ на: комментарий от diakon2

Не нужен BGP, все DNS запросы и http/https натишь на свой сервер. Но с https будут проблемы, браузеры будут ругаться на сертификат, который надо будет делать wildcard на всё самоподписанным.

vodz ★★★★★
()
Ответ на: комментарий от vodz

так вот как все на любые днс запросы резолвить свой ип? трафик то зарубить проблем нет. с днес проблема

diakon2
() автор топика
Ответ на: комментарий от diakon2

Судя по расширенному описанию задачи вам подменять вывод DNS и не надо, ведь если доступ только ровно на один сайт, а не заглушка для некоторых, то просто всё 80/443 - на свой сайт

vodz ★★★★★
()
Ответ на: комментарий от diakon2

В догонку, вспомнил. Отвечать на всё одним IP умеет sheerdns, вызываешь с одним default, по документации. Но натить на него всё равно придётся.

vodz ★★★★★
()
Ответ на: комментарий от diakon2

биллинг в случае неоплаты навешивает acl на сабинтерфейс
абонента блокирующие все кроме локального сервера днс и
сервера с веб заглушкой.

Ну и делай. В чём проблема ? Только надо не DNS, а просто редирект http/https на сервер с заглушкой, а остальное реджектить. Хотя, можно и всё редиректить: фильтр проще, а серверу с заглушкой по барабану.

Только я бы оставил доступ ко всяким банкам и прочим онлайн-системам оплаты.

AS ★★★★★
()
Ответ на: комментарий от diakon2

а как на цыске завернуть так весь 80/443 трафик ?

А Гугль ? Например «cisco access list redirect». Я не знаю, я стратегией занимаюсь. :-)

На самом деле, цисок в качестве маршрутизаторов у нас нет давно, но я так думаю, что способ обязан быть, так как типовая задача.

Ну вот, гуглится сходу по фразе: https://supportforums.cisco.com/discussion/11573006/how-use-acl-redirect-traffic

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 1)
Ответ на: комментарий от diakon2

а как на цыске завернуть так весь 80/443 трафик ?

route-map redirect-http permit 10
match ip address 101
set next-hop <proxy-address>

! Allow the proxy to get out normally, to prevent a loop
access-list 101 deny tcp host <proxy-address> any
! All others are redirected to the proxy
access-list 101 permit tcp any any eq 80
access-list 101 permit tcp any any eq 443

interface Ethernet0
ip policy redirect-http
interface Ethernet1
ip policy redirect-http
....
vodz ★★★★★
()
Ответ на: комментарий от vodz

спасибо за подробный ответ)

вместо прокси адрес указать мой веб сервер?

diakon2
() автор топика
Ответ на: комментарий от vodz

где route-map redirect-http permit 10 именно 10 должно быть или 101?

и вот несовсем понятно по поводу правил, как они работают?

если на интерфейс навешана полиси то весь 80\443 трафик заворачивается а если нет то он свободно проходит минуя правило?

зач ем вот эта строка ? access-list 101 deny tcp host <proxy-address> any

и что будет с остальным трафиком у заблокированых пользователей? он зарежется или будет ходить?

diakon2
() автор топика
Ответ на: комментарий от diakon2

где route-map redirect-http permit 10 именно 10 должно быть или 101?

уберите вообще 'permit 10' это какой-то кривой copy-paste

зач ем вот эта строка ? access-list 101 deny tcp host <proxy-address> any

Там же коментарий стоит - чтобы не зацикливалось, любой трафик на сам proxy не заворачивать в route-map

vodz ★★★★★
()
Ответ на: комментарий от vodz

set next-hop <proxy-address>

нет такой комманды (

r1_c7301(config)#route-map redirect-http
r1_c7301(config-route-map)#set ?
  as-path           Prepend string for a BGP AS-path attribute
  automatic-tag     Automatically compute TAG value
  clns              OSI summary address
  comm-list         set BGP community list (for deletion)
  community         BGP community attribute
  dampening         Set BGP route flap dampening parameters
  default           Set default information
  extcomm-list      Set BGP/VPN extended community list (for deletion)
  extcommunity      BGP extended community attribute
  global            Set to global routing table
  interface         Output interface
  ip                IP specific information
  ipv6              IPv6 specific information
  level             Where to import route
  local-preference  BGP local preference path attribute
  metric            Metric value for destination routing protocol
  metric-type       Type of metric for destination routing protocol
  mpls-label        Set MPLS label for prefix
  nlri              BGP NLRI type
  origin            BGP origin code
  tag               Tag value for destination routing protocol
  traffic-index     BGP traffic classification number for accounting
  vrf               Define VRF name
  weight            BGP weight for routing table

r1_c7301(config-route-map)#set


diakon2
() автор топика
Ответ на: комментарий от vodz

неработает( указал адрес своего веб сервера но когда захожу на любой сайт то он просто не открывается( по Ip я могу зайти на свой сервер

r1_c7301#show route-map all
STATIC routemaps
route-map redirect-http, permit, sequence 10
  Match clauses:
    ip address (access-lists): 101
  Set clauses:
    ip next-hop 10.17.0.73
  Policy routing matches: 316 packets, 30910 bytes
DYNAMIC routemaps
 Current active dynamic routemaps = 0
r1_c7301#

вот на этом 10.17.0.73 весит веб страничка

diakon2
() автор топика
Ответ на: комментарий от diakon2

вот вывод нетстата


[root@perl httpd]# netstat -an
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 10.17.0.73:80          0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN
tcp        0      0 10.17.0.73:33136       137.205.124.72:443      TIME_WAIT
tcp        0      0 10.17.0.73:46700       195.248.234.19:80       TIME_WAIT
tcp        0      0 10.17.0.73:51628       91.210.88.42:443        TIME_WAIT
tcp        0      0 10.17.0.73:52742       129.69.8.112:80         TIME_WAIT
tcp        0      0 10.17.0.73:42550       91.216.163.60:80        TIME_WAIT
tcp        0      0 10.17.0.73:55808       194.8.57.42:443         TIME_WAIT
tcp        0      0 10.17.0.73:34316       89.102.0.150:80         TIME_WAIT
tcp        0      0 10.17.0.73:47042       193.1.193.64:443        TIME_WAIT
tcp        0      0 10.17.0.73:51740       78.136.82.244:80        TIME_WAIT
tcp        0      0 10.17.0.73:41494       217.243.224.144:443     TIME_WAIT
tcp        0      0 10.17.0.73:32896       129.177.13.120:80       TIME_WAIT
tcp        0      0 10.17.0.73:42652       193.84.206.135:80       TIME_WAIT
tcp        0      0 10.17.0.73:43548       91.236.251.12:443       TIME_WAIT
tcp        0      0 10.17.0.73:55978       193.166.3.2:80          TIME_WAIT
tcp        0      0 10.17.0.73:54664       194.8.197.22:443        TIME_WAIT
tcp        0      0 10.17.0.73:60212       109.74.12.226:80        TIME_WAIT

то есть цыска заворачивает трафик но он приходит не на 80 порт а на «рандомный»

это можно поправить в цыске или чтото делат ьс сервером чтобы слушал любой порт а не только 80?

diakon2
() автор топика
Ответ на: комментарий от diakon2

правда мне казалось что в Foreign Address должны быть адреса внутренней сети а не адреса в интернете

diakon2
() автор топика
Ответ на: комментарий от diakon2

К проксе будут идти соединения от ваших клиентов ко всем сайтам в Интернете за счёт перенаправления в маршрутизаторе, прозрачный он потому, что обращение идёт не по протоколу как к проксе, а напрямую «к сайтам» без знания о проксе. На проксе надо будет настроить либо редирект либо может даже интереснее будет обращение как ошибка доступа к вашему сайту. Тогда при оплате не надо будет клиенту принудительно обновлять кеш — как появится Интернет, браузер у него самостоятельно заменит 404-страницу прокси на реальный сайт.

vodz ★★★★★
()
Ответ на: комментарий от vodz

ясно, тогда вопрос по проксе) какую ставить и примерно как настраивать? я ставил сквид и запускал его как кеширующую прокси но как сделать так чтобы он на один сайт перенаправлял всех даже не представляю

diakon2
() автор топика
Ответ на: комментарий от diakon2

Вон там же url давал выше с описанием, что надо делать.

vodz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.