Здравствуйте, A13x, Вы писали:
A>Хочется в домашней сети перенаправить весь трафик через единственный линукс хост, цель — запрет определенных адресов, а также запрет на внешний интернет для определенных устройств в сети — желательно на основе белого списка. В идеале сделать так, чтобы лишь часть заранее явно указанных устройств имела доступ к внешнему интернету, а остальные — только к локалке (т.е. друг к другу). Все устройства которые хочется иметь возможность (раз)блокировать будут подключаться только по wifi.
A>В наличии — Intel NUC с установленным Debian, который и хочется использовать как gateway, ethernet router, docsis modem (через который собственно осуществляется коннект к интернету) и wifi router. В теоретическом багаже — знание линукса на уровне уверенного пользователя coreutils, знание сетей на уровне application developer'a.
A>Есть понимание, что для озвученного выше на Gateway нужно следующее squid который собственно и будет обрабатывать трафик, DNS server для возможности конфигурирования сетевых имен, DHCP server для раздачи IP.
A>Собственно вопрос: в голове у меня пока нет "ментальной модели" как все это хозяйство заставить работать. Есть время и желание разобраться поглубже, но не настолько чтобы на это потратить чуть больше нескольких вечеров.
A>Если кто-то делал подобное — пните в правильном направлении, поделитесь пожалуйста куда "копать"? Для начала достаточно хотя бы примитивного проксирования трафика с белым списком доступа к интернету.
A>Какое железо помимо озвученного выше требуется чтобы собрать требуемую конфигурацию? A>Самое главное — как wifi modem должен быть подключен к gateway чтобы весь трафик шел через этот gateway? A>Какие ключевые вещи нужно изучить чтобы собрать такую конфигурацию?
По железу — если предположить, что интерфейс в DOCSIS есть в Gateway как-то, то вроде всё есть. У меня ещё в конфигурации есть свитч, но это для NAS и телевизора.
WiFi-router переключить в режим Access Point и проводом в Gateway воткнуть, в DHCP-lease выдавать в качестве default gateway адрес Gateway, тогда автоматически всё, что через WiFi, пойдёт через Gateway. На самом Gateway настройка доступа может делаться через iptables, DNS, squid или объединение этих вариантов. Может оказаться, что трафик между локальными девайсами в этом случае идёт через Gateway, встречались мне такие тупые AP.
Либо WiFi-router оставить как есть, а его uplink воткнуть в Gateway, тогда может немного усложниться задача в плане IP подсетей (если Client-WiFi и WiFi-Gateway будут разные), но всё равно достаточно просто. Трафик между локальными девайсами тогда останется в WiFi-router.
Автоматический "заворот" HTTP(S) в Squid можно сделать с помощью Iptables, если не предполагается ни для каких устройств "прямого" доступа к сайтам (что может понадобиться для обновлений, например).
Насчёт Squid — могу сказать, что не так давно пытался с помощью squid (на OpenBSD, правда) настроить фильтрацию Youtube (ограничить некоторые клипы), но не преуспел — либо youtube отваливался через n минут, либо был доступ ко всему. Прочее SSL/TLS проксирование работало на ура. Возможно, это мои кривые руки и недостаток знаний.