История изменений
Исправление lext55, (текущая версия) :
Вот возьмем классическую схему:
LAN: 192.168.0.1/24 WAN: 1.1.1.1/30 (Static IP)
По умолчанию во всех таблицах ACCEPTED.
Чтобы расшарить интернет я делаю
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 1.1.1.1
ВСЕ! этого достаточно.
Теперь идем дальше мне требуется выдать доступ к интернету только отдельным IP адресам.
Поэтому я запрещаю пересылку пакетов по умолчанию
iptables -P FORWARD DROP
И далее уже рулю в таблице FORWARD запрещающими и разрешающими правилами.
#Пользователю с IP 192.168.0.10 - можно
iptables -A FORWARD -s 192.168.0.10/32 -j ACCEPT
#Пользователю с IP 192.168.0.20 - можно
iptables -A FORWARD -s 192.168.0.10/32 -j ACCEPT
Для всех остальных сработает FORWARD DROP по-умолчанию.
Но вот если я начну писать правила вот так
iptables -t nat -A POSTROUTING -s 192.168.0.10/32 -j SNAT --to-source 1.1.1.1
iptables -t nat -A POSTROUTING -s 192.168.0.20/32 -j SNAT --to-source 1.1.1.1
То получу кучу хейта о том что таблица nat POSTROUTING не предназначена для запрещающих/разрешающих правил, она не для этого.
ЧЯДНТ?
Исходная версия lext55, :
Вот возьмем классическую схему:
LAN: 192.168.0.1/24 WAN: 1.1.1.1/30 (Static IP)
По умолчанию во всех таблицах ACCEPTED.
Чтобы расшарить интернет я делаю
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 1.1.1.1
ВСЕ! этого достаточно.
Теперь идем дальше мне требуется выдать доступ к интернету только отдельным IP адресам.
Поэтому я запрещаю пересылку пакетов по умолчанию
iptables -P FORWARD DROP
И далее уже рулю в таблице FORWARD запрещающими и разрешающими правилами.
#Пользователю с IP 192.168.0.10 - можно
iptables -A FORWARD -s 192.168.0.10/32 -j ACCEPT
#Пользователю с IP 192.168.0.20 - можно
iptables -A FORWARD -s 192.168.0.10/32 -j ACCEPT
Для всех остальных сработает FORWARD DROP по-умолчанию.
Но вот если я начну писать правила вот так
iptables -t nat -A POSTROUTING -s 192.168.0.10/32 -j SNAT --to-source 1.1.1.1
iptables -t nat -A POSTROUTING -s 192.168.0.20/32 -j SNAT --to-source 1.1.1.1
То получу кучу хейта о том что таблица nat POSTROUTING не предназначена для запрещающих/разрешающих правил, она не для этого.