Скрипт быстрой настройки IPTables

Иногда нужно например удалить все правила IPTables и прописать только нужное, так вот для удобства можно указать их в скрипте, после чего выполнить его.

Переключимся на root пользователя, в Ubuntu это можно сделать так:

sudo -i

Сначала посмотрим существующие правила (возможно некоторые будут нужны и их можно будет скопировать в скрипт):

iptables -nvL
iptables -L -t nat
iptables -L -t mangle

И собственно ниже приведу пример скрипта с набросанными правилами IPTables:

#!/bin/sh
# Пример очистки и удаления всех существующие правил и цепочек
/sbin/iptables -t filter -F
/sbin/iptables -t nat -F
/sbin/iptables -t mangle -F
/sbin/iptables -F
/sbin/iptables -t filter -X
/sbin/iptables -t nat -X
/sbin/iptables -t mangle -X
/sbin/iptables -X
# Запретим все входящие и проходящие соединения, разрешим все исходящие от сервера
/sbin/iptables -P INPUT DROP
/sbin/iptables -P FORWARD DROP
/sbin/iptables -P OUTPUT ACCEPT
/sbin/ip6tables -P INPUT DROP
/sbin/ip6tables -P FORWARD DROP
/sbin/ip6tables -P OUTPUT ACCEPT
# Разрешим локальный интерфейс
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/ip6tables -A INPUT -i lo -j ACCEPT
# Не трогаем уже установленные соединения
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/ip6tables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Откроем порты SSH, HTTP, HTTPS для всех если нужно
/sbin/iptables -A INPUT -p tcp --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 80 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# При необходимости можно разрешить все входящие соединения конкретному IP-адресу
/sbin/iptables -A INPUT -s 192.168.10.101 -j ACCEPT
# Пример разрешения PING
/sbin/iptables -A INPUT -p icmp -j ACCEPT
/sbin/iptables -A OUTPUT -p icmp -j ACCEPT
# и т.д.

Сделаем файл скрипт исполняемым:

chmod +x rules.sh

Выполним его:

./rules.sh

Смотрите также мои статьи:
Как сохранить IPTables правила
Настройка IPTables

Оставьте комментарий

Добавить комментарий

Больше на IT Blog

Оформите подписку, чтобы продолжить чтение и получить доступ к полному архиву.

Continue reading