примеры iptables

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модератор: SLEDopit

Darion
Сообщения: 52
ОС: Linux Debian / squeezy

примеры iptables

Сообщение Darion » 27.01.2008 19:29

накидайте рабочих несложных примеров iptables желательно с реализацией NAT и пробросом портов. после некоторого времени изучения теории написал свой первый скрипт для iptables и он естественно глючит( инет есть, фтп нет, пинга н идет дальше шлюза и порт не пробрасываеться) вот хочу посотреть как это должно быть на практике.
Спасибо сказали:

Аватара пользователя
esvaf
Бывший модератор
Сообщения: 844
Статус: экс- LinuxForum.Ru team
ОС: CentOS 5.3

Re: примеры iptables

Сообщение esvaf » 27.01.2008 19:49

Вот, пожалуйста:
Принудительное перенаправление на проксю (прозрачный режим) с проверкой того, не является ли назначением сам сервер(ибо там у меня апач)
-A PREROUTING -p tcp -m tcp ! -d внешний_ип -i eth1 --dport 80 -j REDIRECT --to-ports 3128

проброс порта
-A PREROUTING -p tcp -m tcp --dport 19876 -j DNAT --to-destination 172.16.0.7:19876

Выход на мировой днс будет работать только для внутреннего днс сервера(а.к.а контроллер домена)
-A POSTROUTING -p tcp -m tcp -s 172.16.0.1 --dport 53 -j MASQUERADE
-A POSTROUTING -p udp -m udp -s 172.16.0.1 --dport 53 -j MASQUERADE

Вот NAT для всей подсетки и конкретного порта назначения
-A POSTROUTING -p tcp -m tcp -s 172.16.0.0/255.255.0.0 --dport 443 -j MASQUERADE

Или диапазона
-A POSTROUTING -p tcp -m tcp -s 172.16.0.0/255.255.255.0 --dport 1024:65535 -j MASQUERADE
-A POSTROUTING -p udp -m udp -s 172.16.0.0/255.255.255.0 --dport 1024:65535 -j MASQUERADE

Пусть пингуют себе на здоровье
-A POSTROUTING -p icmp -s 172.16.0.0/255.255.0.0 -j MASQUERADE

Разрешаем все на внутренних интерфейсах (в инет у меня идет eth2)
-A INPUT -i eth1 -j ACCEPT
-A INPUT -i eth0 -j ACCEPT
-A INPUT -i lo -j ACCEPT

Разрешаем "установленные" и "дочерние" соединения
-A INPUT -m state --state ESTABLISHED -j ACCEPT
-A INPUT -m state --state RELATED -j ACCEPT

Разрешаем доступ к заданному порту из инета
-A INPUT -p tcp -m tcp -d внешний_ип --dport 80 -j ACCEPT

Открываем протокол
-A INPUT -p gre -j ACCEPT

P.S. У меня политика по умолчанию - DROP
Спасибо сказали: