Я только что установил в свою сеть точку беспроводного доступа.
Вот небольшая диаграмма:
Internet <===> linux box with iptables <===> LAN
Я подключил свою точку беспроводного доступа к локальной сети, и все работает нормально. Сеть работает между всеми устройствами.
У меня есть множество статических адресов, указанных с помощью dnsmasq. Это в основном адреса от x.y.z.1 до x.y.z.199.
У меня есть мой dhcp-сервер (на ящике linux), настроенный на раздачу адресов между x.y.z.200 и x.y.z.250
Моя цель - позволить устройствам локальной сети общаться с устройствами локальной сети и Интернетом. Беспроводные устройства могут только поговорить с Интернетом. У меня уже работает и настроена первая часть этого. Просто понадобится заклинание для второй части. Мои беспроводные устройства будут настроены через dhcp.
Я знаю, что VLAN идеально подходит для этого, но у меня нет управляемых коммутаторов и прочего. Это только для моего дома, и я собираюсь дешево.
Я надеялся сделать что-то вроде:
iptables -A input -p tcp -s 192.168.1.200:192.168.1.250 -d 192.168.1.1:192.168.1.199 -j REJECT
iptables -A input -p udp -s 192.168.1.200:192.168.1.250 -d 192.168.1.1:192.168.1.199 -j REJECT
Конечно, я не могу, потому что iptables использует только блоки или один ip. Я даже не уверен, как будет выглядеть синтаксис для создания блока адресов, которые вписываются в диапазон, который мне нужен.
Заранее спасибо!
Пока проводной и беспроводной хосты находятся в одной подсети, никакое количество iptables на шлюзе не помешает им общаться между собой.
Однако есть несколько способов подделать его:
Если все проводные узлы имеют статические IP-адреса (или зарезервированные адреса DHCP), но не используют динамические IP-адреса, то вы можете поместить вторичный IP-адрес в другую подсеть интерфейса LAN на узле iptables. Вы захотите отключить перенаправления (это sysctl) и жестко запрограммировать / использовать разные параметры DHCP для проводных клиентов, чем для беспроводных. Добавьте правило iptables для блокировки трафика между двумя подсетями, но разрешите / замаскируйте оба в сторону Интернета, и все будет настроено. Однако любой пользователь беспроводной сети, который знает, что это просто вторичный IP-адрес, может вручную настроить IP-адрес LAN-диапазона и обойти блокировку.
Если беспроводная точка доступа поддерживает теги VLAN (настоящие корпоративные точки доступа делают это, и WRT54-подобные с OpenWRT / ddwrt / и т. Д. Могут также), и если ваш коммутатор передает тегированные кадры, вы можете создать субинтерфейс vlan на машине Linux ( снова с другой подсетью, как указано выше). Хосты в локальной сети будут иногда получать помеченный кадр и отбрасывать его (если только они не запускают сниффер), но точка доступа должна (в зависимости от конфигурации) игнорировать немаркированные кадры, которые он слышит из локальной сети, поэтому утечка не должна происходить. Трафик LAN вернулся в беспроводной.
Конечно, лучшее разделение - это управляемый коммутатор с поддержкой VLAN или просто 3-я сетевая карта на хосте Linux.