iptables
Отображать все действующие правила лучше с детализацией и нумерацией строк, Ключ —line-numbers нумерует строки, -L выводит список правил всех цепочек, -v отвечает за детализацию вывода, -n выводит IP-адреса и номера портов в числовом формате:
iptables --line-numbers -L -v -n
Удалить 4 правило в цепочке INPUT:
iptables -D INPUT 4
Сброс всех правил, создаем файл, делаем его исполняемым и редактируем:
touch /etc/iptables.reset && chmod +x /etc/iptables.reset && vi /etc/iptables.reset
!/bin/bash
colGreen="\033[32m"
resetCol="\033[0m"
echo -n "Flushing firewall rules and changing default policy to ACCEPT…"
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
echo -e "$colGreen Done! $resetCol"
Ставим утилиту
apt install iptables-persistent
Теперь для сохранения текущих настроек достаточно ввести команду:
service netfilter-persistent save
Вернуться к последним сохраненным правилам:
iptables-restore < /etc/iptables/rules.v4
Писать в лог, например событие DROP INPUT, записи пишутся в файл /var/log/syslog:
iptables -A INPUT -p tcp --dport 80 -j DROP
iptables -A INPUT -p tcp --dport 80 -j LOG --log-prefix "ACCESS RESTRICTED: "
Заблокировать адрес:
iptables -A INPUT -s 10.10.10.1 -j DROP
Разрешить адрес:
iptables -A INPUT -s 10.10.10.1 -j ACCEPT
Открыть порты:
iptables -A INPUT -p tcp -m multiport --dports 22,80 -j ACCEPT
то же самое в две строки:
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT