В debian 12 фаервол iptables вшит в ядро и в отличие от предыдущих debian не имеет статуса службы. В данном руководстве мы рассмотрим основные команды по управлению.
1. Просмотр списка правил
iptables -L -n
Использование ключа -n отключает преобразование ip адресов в название хоста (IP-PTR).
1.1 Просмотр списка правил с нумерацией
iptables -L --line-numbers
2 Работа с правилами
2.1 Примеры правил для разрешения порта
2.1.1 Разрешим подключение по 22 порту
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
2.1.2 Разрешим подключение по 80 порту
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
2.1.2 Разрешим подключение по 443 порту и сделаем правило первым в цепочке правил
iptables -A INPUT 1 -p tcp --dport 443 -j ACCEPT
2.2 Удаление правил
2.2.1 Удаление по номеру правила
iptables -D INPUT 1
2.2.2 Удаление по содержанию правила
iptables -D INPUT -p tcp --dport 80 -j ACCEPT
2.3 Примеры правил для запрета
2.3.1 Запретим подключение для определенного ip к 25 порту
iptables -A INPUT -s xx.ip.xx.ip -p tcp –destination-port 25 -j DROP
2.3.2 Запретим подключение для определенного ip полностью
iptables -A INPUT -s 192.168.0.100 -j DROP
2.3.3 Запретим подключение для всей подсети
iptables -A INPUT -s 192.168.0.0/24 -j DROP
2.4 Сброс цепочки правил
Обратите внимание, чтобы у Вас было установлено правило по умолчанию перед вводом команды сброса правил, так как это приведет к потере соединения с сервером.
iptables -P INPUT ACCEPT
2.4.1 Сброс всех правил
iptables -F
2.4.2 Сброс цепочки правил
iptables -F INPUT
3. Сохранение правил
После перезагрузке сервера все прописанные правила будут удалены, чтобы этого не происходило, установим утилиту.
apt install iptables-persistent
В процессе установки будет предложено сохранить текущие настройки правил. iptables-persistent ищет файлы rules.v4 и rules.v6 в /etc/iptables и восстанавливает их при запуске сервера.
3.1 Сохранение правил
3.1.1 Сохранение через iptables-persistent
netfilter-persistent save
3.1.2 Сохранение через iptables
Для того чтобы сохранить настройки правил позже, используйте команду
iptables-save > /etc/iptables/rules.v4
ip6tables-save > /etc/iptables/rules.v6
3.2 Восстановление правил
3.2.1 Восстановление с заменой текущих правил
iptables-restore < /etc/iptables/rules.v4
3.2.2 Восстановление с сохранением текущих правил
iptables-restore -n < /etc/iptables/rules.v4