Ip tables основы построения правил маршрутизации
Настройка
IpTables
Комментарий к обозначениям применяемым в правилах IpTables:
-А — добавление правила в конец цепочки применяется в правилах INPUT(входящие), OUTPUT (исходящие), FORWARD(перенаправление пакетов)
I —добавление правила в начало цепочки применяется в правилах INPUT(входящие), OUTPUT (исходящие), FORWARD(перенаправление)
i- интерфейс к которому применяется правило eth0 , eth1
-p — определяет протокол семейства TCP/IP (tcp, udp, icmp или all) к которому применяется правило (если параметр в правиле не указан то правило применяется ко всем протоколам) , разрешается использование числовых значений , указанных в файле /etc/protocols (Fedora)
-y в пакете содержащем запрос на установление TCP-соединения флаг SYN должен быть установлен а флаг ACK сброшен (если опция не указана то проверка не проводится)
!-y в пакете который передается в ответ на запрос на установление TCP-соединения , а так-же во всех последующих пакетах флаг ACK должен быть установлен , если опция не указана то состояние флага не проверяется.
— s адрес [порт] — определяет исходный адрес пакета — если опция не указана обрабатываются пакеты переданные с любого узла, если указан диапазон портов (или один порт) то правило применяется только к пакетам содержащим заданный номер порта, если диапазон портов не указан то правило применяется ко всем пакетам , независимо от номера порта источника .
— d адрес [порт] — определяет адрес назначения пакета — если опция не указана обрабатываются пакеты переданные любому узлу, если указан диапазон портов (или один порт) то правило применяется только к пакетам содержащим заданный номер порта, если диапазон портов не указан то правило применяется ко всем пакетам , независимо от номера порта источника
-j действие — определяет действие , которое должно быть выполнено над пакетом ACCEPT(принять пакет) REJECT(отклонить пакет и послать сообщение об ошибке) DROP(отклонить пакет и не посылать сообщение отправителю)
-l — если пакет удовлетворяет правилу, то в /var/log/message записывается сообщение ядра
Для настройки таблиц IpTables необходимо внести изменения в файл/etc/sysconfig/iptables ,
чтобы настроить таблицы маршрутизации и перенаправления пакетов внутри сервера необходимо включить forwarding (перенаправление пакетов) , для этого вносим изменения в файл \etc\sysctl.conf :
net.ipv4.ip_forward = 1 # заменяем значение «0» котрое в этой строке установлено по умолчанию на «1»
После внесения изменений в конфигурационный файл , для применения перенапрвления пакетов в терминале выполняем:
# sysctl -p