LinuxForum.Fans
Тема

Ограничить доступ маленького ребёнка к интернету.

Автор: mk_2021 4 сообщений 751 просмотров
09.05.2023 19:42 #438860

Коллеги, всем доброго времени суток.
Прошу помочь в настройке доступа.
Есть отдельно стоящий ПК, дебиан 11.
Локальной сетки нет и она не нужна.
Требуется запретить доступ ко ВСЕМ интернет-сайтам, кроме конкретно заданных.
Например, разрешаем условно:
буратино.ру
чебурашка.ру
учеба.ру
...
...
Доступ ко всем остальным надо блокировать.
-----
ЗЫ
Раньше это можно было сделать оч. просто через hosts.allow и hosts.deny.
Сейчас, уже не все программы поддерживают libwrap.
Так, например, в выводе ldd для моей версии фаерфокса не упоминается libwrap.so.
Поэтому редактирование hosts.allow и hosts.deny, насколько я понимаю, бесполезно.
Можно ли как-то обойтись без возни с nftables/iptables, прокси и т.п.?

09.05.2023 21:49 #438861
"mk_2021" написал:
Можно ли как-то обойтись без возни с nftables/iptables, прокси и т.п.?

Не без iptables:

text

#!/bin/bash

# Скрипт: iptables whitelist # Требуются: iptables, ipset, bind-utils (утилита host)

# Очищаем iptables; Разрешаем всё для создания актуального whitelist iptables -F ; iptables -X iptables -P INPUT ACCEPT; iptables -P OUTPUT ACCEPT; iptables -P FORWARD ACCEPT

# Создаём список разрешенных сайтов whitelist [[ $(ipset -L ) ]] || ipset -N whitelist iphash; ipset -F whitelist # URL сайтов; для некоторых может потребоваться www. в имени for site in ya.ru mail.ru www.google.com; do for ip in $(host $site | grep "has address" | cut -d " " -f4); do ipset -A whitelist $ip done done

# Вывод всех IP-сайтов в белом списке (визуальный контроль) ipset -L whitelist

# Запрещаем всё iptables -P OUTPUT DROP

# Разрешаем установленные iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT # Разрешаем DNS iptables -A OUTPUT -p udp -m udp --dport 53 -j ACCEPT

# Разрешаем все ip из списка whitelist iptables -A OUTPUT -m set --match-set whitelist dst -j ACCEPT

Для поверки не забывайте переоткрывать браузер по факту применения новых правил iptables. Как-то так. :)

Похожая тема: SiteBlocker - блокировщик сайтов и другого контента по времени

11.05.2023 20:50 #438862

Cпасибо за подробный ответ!
Если найду более простое решение, - поделюсь.

12.05.2023 13:25 #438863
"mk_2021" написал:
Если найду более простое решение, - поделюсь.

Ок. Для разнообразия можете попробовать свежую прогу "Цензор": https://github.com/AKotov-dev/censor Список правда не белый, а черный: планировщик, три метода блокировки, графика. В релизах есть *.deb.

Войдите или зарегистрируйтесь, чтобы ответить.