LINUX.ORG.RU
ФорумAdmin

роутинг


0

0

всем привет, помогите разрулить. есть локальная сеть, один сервер с двумя интерфейсами один смотрит в интернет, другой в локалку, и есть еще два сервака с конектом только в локалку. нужно сделать раздачу интернета для двух этих серваков. сделал так iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE в данном случае сервак могут делать gateway'ем кто угодно в сети, а мне нужно чтобы роутинг был только для данных двух серваков, в iptables не вникал еще, а сделать надо срочно. подскажите как?

в FORWARD делаешь умолчательную политику DROP, а с нужных айпишников ACCEPT-ишь.

Komintern ★★★★★
()

1. MASQUERADE для динамических ip, если на интерфейсе статический ip-адрес, то лучше SNAT.

2. Обычно ограничивают доступ в таблице filter, цепочка FORWARD, что-то наподобние:
iptables -A FORWARD -s IP-сервера-1 -j ACCEPT
iptables -A FORWARD -s IP-сервера-2 -j ACCEPT
iptables -A FORWARD -j DROP

Или можно писать:
iptables -t nat -A POSTROUTING -s IP-сервера-1 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s IP-сервера-2 -o eth0 -j MASQUERADE

3. А вникать в iptables надо, а то мало ли что я вам тут насоветовал.

mky ★★★★★
()
Ответ на: комментарий от mky

спасибо, конечное решение получилось такое 

iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source x.x.x.x (внешний ip)
iptables -A FORWARD -s 192.168.1.8 -i eth1 -o eth0 -j ACCEPT
iptables -A FORWARD -d 192.168.1.8 -i eth0 -o eth1 -j ACCEPT
iptables -A FORWARD -s 192.168.1.9 -i eth1 -o eth0 -j ACCEPT
iptables -A FORWARD -d 192.168.1.9 -i eth0 -o eth1 -j ACCEPT
iptables -t filter -A FORWARD -j DROP

bezgubov
() автор топика
Ответ на: комментарий от bezgubov

По-православному должно быть так:
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source x.x.x.x
iptables -P FORWARD DROP
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -s 192.168.1.8 -j ACCEPT
iptables -A FORWARD -s 192.168.1.9 -j ACCEPT
При наличии модуля conntrack разрешать ответные пакеты, заставляя их пробегать через всю цепочку FORWARD нет нужды. Обычно добавляют первым правилом строку в FORWARD (там где -m state)

azure ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.