ИнфоАптека ®

Автоматизация аптек и аптечных сетей

Инструменты пользователя

Инструменты сайта


администрирование:блокировка_интернета

Блокировка интернета

Как известно, когда пользователь набирает в адресной строке обозревателя сети Интернет имя сайта или просто переходит по ссылке, то компьютер отправляет имя сайта на сервер имен DNS-сервер и получив от него ip адрес сайта переходит на него.

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

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

Большим плюсом этого способа является централизованное управление и моментальное применение настроек на практически не ограниченном количестве компьютеров в сети.

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

Кэширующий DNS сервер Unbound

В качестве DNS-сервера возьмем Unbound для Windows. После стандартной установки откройте файл настроек service.conf и настройте его как показано на примере ниже.

service.conf
# Unbound configuration file on windows.
# See example.conf for more settings and syntax
server:
	# verbosity level 0-4 of logging
	verbosity: 0
 
	# if you want to log to a file use
	#logfile: "C:\unbound.log"
logfile: "c:\Program Files (x86)\Unbound\unbound.log"
 
log-time-ascii: yes
log-queries: yes
 
	# on Windows, this setting makes reports go into the Application log
	# found in ControlPanels - System tasks - Logs 
	#use-syslog: yes
 
 
#server: auto-trust-anchor-file: "C:\Program Files (x86)\Unbound\root.key"
 
#interface: 192.168.0.80
#interface: 127.0.0.1
interface: 0.0.0.0
#outgoing-interface: 192.168.0.80
#interface-automatic: no
 
 
access-control: 0.0.0.0/0 allow
 
# здесь пропишите блокируемые ip адреса 
access-control: 109.252.253.98 refuse
 
port: 53
do-ip4: yes
do-ip6: no
do-udp: yes
do-tcp: yes

Работа по белому списку

Для работы по белому списку, то есть только по разрешенным сайтам, допишите файл конфигурации service.conf как указано ниже.

service.conf
forward-zone:
  name: "."
  forward-addr: 127.0.0.1
 
# --- Строки ниже определяют сайты, запросы на которые необходимо перенаправлять ---
 
forward-zone:
  name: "yandex.ru."
  forward-addr: 77.88.8.8
 
forward-zone:
  name: "infoapteka.com."
  forward-addr: 77.88.8.8
 
forward-zone:
  name: "ammyy.com."
  forward-addr: 77.88.8.8
 
forward-zone:
  name: "teamviewer.com."
  forward-addr: 77.88.8.8
 
forward-zone:
  name: "time.windows.com."
  forward-addr: 77.88.8.8

Работа по черному списку

Для работы по черному списку, то есть ограничить доступ только к некоторым сайтам, допишите файл конфигурации service.conf как указано ниже.

service.conf
# --- Строки ниже определяют сайты, запросы на которые необходимо блокировать ---
 
local-zone: "ok.ru" redirect
local-data: "ok.ru A 127.0.0.1"
 
local-zone: "vk.com" redirect
local-data: "vk.com A 127.0.0.1"
 
local-zone: "microsoft.com" redirect
local-data: "microsoft.com A 127.0.0.1"
 
# --- Запросы на остальные сайты передавать другому DNS серверу ---
forward-zone:
  name: "."
  forward-addr: 77.88.8.7
  forward-addr: 77.88.8.3

Настройки на внешних устройствах

Если компьютер с DNS-сервером находится за маршрутизатором (роутером), то необходимо настроить перенаправление портов (виртуальный сервер) в роутере.

Не забудьте открыть порт в брандмауэре. DNS-сервер работает по протоколу UDP на 53 порту.

По аналогии настройте второй DNS-сервер.

Со стороны клиентов (аптек) установите в маршрутизаторе (роутере) в качестве первичного и вторичного DNS-серверов, статические ip адреса ваших DNS-серверов.

Проверка работоспособности

После того, как вы внесете изменения в файл конфигурации service.conf, перезапустите службу Unbound DNS validator

Запустите в командной строке DNS клиент с параметрами: имя сайта и ip адрес вашего DNS-сервера.

mydns.cmd
nslookup yandex.ru 193.232.244.93

в ответ вы должны получить сообщение

C:\Documents and Settings\user>nslookup yandex.ru 193.232.244.93
*** Can't find server name for address 193.232.244.93: Server failed
Server:  UnKnown
Address:  193.232.244.93

Non-authoritative answer:
Name:    yandex.ru
Addresses:  77.88.55.66, 77.88.55.55, 5.255.255.55, 5.255.255.5

Если же вы получили ответ как указано ниже, то что-то пошло не так

C:\Documents and Settings\user>nslookup yandex.ru 193.232.244.93
DNS request timed out.
    timeout was 2 seconds.
*** Can't find server name for address 193.232.244.93: Timed out
Server:  UnKnown
Address:  193.232.244.93

DNS request timed out.
    timeout was 2 seconds.
DNS request timed out.
    timeout was 2 seconds.
*** Request to UnKnown timed-out
Только авторизованные участники могут оставлять комментарии.
администрирование/блокировка_интернета.txt · Последние изменения: 2017/09/13 11:21 — Владимир Сиренко