Глава 9. Основные положения системы сетевой защиты (Firewall)
ции адресов содержит две цепочки правил PREROUTING и POSTROUTING. Первая из них содержит набор
правил для входящих пакетов, вторая для исходящих.
Для иллюстрации работы подсистемы трансляции адресов создайте правило, которое маскирует все
пакеты, исходящие из вашей внутренней сети под пакеты, якобы отправленные с наружного интерфейса.
Для наружного интерфейса – сетевой карты (eth0) – в таблицу NAT (-t nat) добавьте к цепочке правил
исходящих пакетов (-A POSTROUTING) через сетевой интерфейс eth0 (–o eth0) маскарадинг (–j
MASQUERADE):
[root@bastion /]# /sbin/iptables –t nat –A POSTROUTING –o eth0 –j
MASQUERADE
Для наружного интерфейса – ppp0 (создаваемого при установке VPN-соединения по протоколу PPTP
или модемном соединении со шлюзом провайдера) – в таблицу NAT (-t nat) добавьте к цепочке правил
исходящих пакетов (-A POSTROUTING) через сетевой интерфейс ppp0 (–o ppp0) маскарадинг (–j
MASQUERADE):
[root@bastion /]# /sbin/iptables –t nat –A POSTROUTING –o ppp0 –j
MASQUERADE
Для перенаправления входящих пакетов на компьютер, находящийся во внутренней сети, создайте
правило в таблицу NAT (-t nat), добавьте к цепочке правил входящих пакетов (-A PREROUTING) на IP-
адрес 212.45.28.122 (-d 212.45.28.122) для протокола TCP (-p tcp) порта 80 (–dport 80) перена-
правление (-j DNAT) на IP-адрес 172.16.181.102 порта 8001(–to 172.16.181.102:8001):
Теперь, если вы хотите отправить информацию о порте, например, его значении, с TCP-пакетами,
входящими на внешний интерфейс по IP-адресу 207.35.78.2 на порту 8080 так, чтобы их отображение адре-
сата на локальный интерфейс было по IP-адресу 192.168.1.1 на порту 80, тогда вы могли бы использовать
следующие правила:
[root@bastion /]# /sbin/iptables -t nat -A PREROUTING -d 212.45.28.122 -p
tcp –dport 80 -j DNAT –to 172.16.181.102:8001
Проверка настроек сетевой защиты
Для просмотра всех правил во всех цепочках используйте команду:
[root@bastion /]# iptables -L
Для вывода всех правил в некоторой цепочке используйте, например, команду INPUT:
[root@bastion/ ] # iptables -L INPUT
Если вы предпочитаете числовой формат отображения информации, то используйте опцию –n, на-
пример:
[root@bastion /]# iptables –nL
ЗАМЕЧАНИЕ Команда iptables имеет большое число опций, которые позволяют создавать правила,
удовлетворяющие практически любым требованиям пользователей к системе сетевой защиты, и осуществ-
лять диагностику работы этой системы. Описание всех возможных и даже типовых конфигураций системы се-
тевой защиты выходит за рамки этой главы и книги. Поэтому перед применением на практике рекомендаций,
изложенных в настоящей главе, авторы рекомендуют изучить страницы руководства, связанные с IPTables, и
документ IPTables Tutorial.