Настройка «черных» и «белых» списков позволяет организовать доступ к интернет-сайтам компьютерам, находящимся в локальной сети. «Черные» списки разрешают доступ ко всем сайтам, кроме тех, что указаны в списке. «Белые» списки наоборот разрешают доступ только к указанным сайтам, остальные сайты блокируются. В связи с используемой схемой (Рисунок 1), настройку необходимо производить на обоих серверах.
Начало истории
Предварительно на рассматриваемой сети была настроена IP-адресация
а также поднят DHCP-сервер для получения IP-адресов рабочими станциями (без этого не получится организовать работу сети)
Настройку доступа, с использованием списков, можно выполнить следующим образом:
1) Определить МАС-адреса устройств, к которым будут применены списки доступа.
В операционной системе Windows для этой цели в командной строке можно ввести команду
ipconfig /all
в операционной системе на Linux в терминале
ifconfig
или
ip address
МАС-адрес имеет размер 6 Байт и записывается в шестнадцатеричной системе счисления (рис. 2).
2) На втором сервере открыть конфигурационный файл dhcpd.conf
sudo nano /etc/dhcp/dhcpd.conf
и дописать в конце файла необходимую конфигурацию. В приведенном примере постоянные адреса выдаются двум рабочим станциям (рис. 3)
Содержимое конфигурации расшифровывается следующим образом:
host – служит для указания имени рабочей станции. В данном случае имя Windows22, но можно использовать другое, не обязательно связанное с именем рабочей станции;
hardware ethernet – МАС-адрес рабочей станции (взят из рисунка 2);
fixed-address – IP-адрес, который всегда будет присваивается указанному сетевому адаптеру (в примере 192.168.0.111).
Для каждого адаптера используются фигурные скобки (на открытие и закрытие).
3) Аналогичным образом указываются и другие МАС-адреса и IP-адреса компьютеров, к которым будут применены списки доступа.
4) Сохранить файл и перезапустить сервис командой:
sudo systemctl restart isc-dhcp-server
проверить статус сервиса:
sudo systemctl status isc-dhcp-server
служба должна стать активной.
5) Включить (перезагрузить) рабочие станции и убедиться, что они получили IP-адреса, которые за ними были закреплены.
6) Перейти на первый сервер, создать файл, в котором будет хранится список сайтов:
sudo touch /etc/squid/urllist
Открыть файл для редактирования
sudo nano /etc/squid/urllist
и записать выбранные сайты, например (рис. 4):
youtube\.com
ok\.ru
Сохранить и закрыть файл.
7) Открыть файл конфигурации Squid
sudo nano /etc/squid/squid.conf
7.1) Перед строкой acl localnet src 192.168.0.0/24 добавить строки с новыми статическими IP-адресами в формате (рисунок 5):
acl blackip src 192.168.0.110
acl whiteip src 192.168.0.111
7.2) Далее добавить файл с URL сайтов:
acl url_filtred url_regex -i "/etc/squid/urllist"
7.3) Перед строкой http_access allow localnet указать доступ и запрет к сайтам:
http_access deny blackip url_filtred
http_access deny whiteip !url_filtred
7.4) Сохранить и закрыть файл.
7.5) Перезапустить сервис
sudo systemctl restart squid
проверить статус сервиса
sudo systemctl status squid
Если статус активен, то можно переходить к следующему пункту
8) Для проверки включить поочередно рабочие станции, указанные в списке, проверить ее IP-адрес, включить браузер и проверить доступ (или запрет к доступу) к указанным в пункте 6 сайтам. В примере запрет доступа к сайту youtube.com (рис. 6)
9) Для выключения «черных» списков можно закомментировать их параметры в конфигурационном файле (Рисунок 7).
Если нужно отключить работу "белого" списка, то можно выключить только его параметры в конфигурационном файле (рис. 8)
Можно создавать отдельные файлы с указанием сайтов для "черных" и "белых" списков, включать эти списки для диапазона адресов, а также составлять для отдельных компьютеров свои списки. Объем экспериментов ограничивается только фантазией администратора сервера. Главное не сломать конфигурационный файл, иначе все компьютеры сети останутся без доступа к сети Интернет.