Введение
Сетевые брандмауэры являются важным дополнением к безопасности компьютерной сети, выступая в качестве первой линии защиты от несанкционированного доступа и угроз безопасности.
Они выступают в качестве барьера между доверенной внутренней сетью и недоверенными внешними сетями.
Брандмауэры работают, постоянно отслеживая и контролируя входящий и исходящий сетевой трафик на основе заранее установленных правил безопасности.
На Linux iptables – это надежный пользовательский сетевой брандмауэр, который позволяет пользователям определять правила, регулирующие сетевой трафик.
Как скрыть порт приложения используя knockd в Linux
Хорошее знание установленных правил ведет к эффективному управлению.
Тем более, что иногда мы можем столкнуться с проблемами сетевого взаимодействия, и одним из главных подозреваемых часто являются правила сетевого брандмауэра.
В этом руководстве мы изучим iptables и узнаем, как просмотреть все правила iptables в Linux.
Эти знания позволят нам понять защитные механизмы нашей сетевой инфраструктуры.
Как добавить комментарии к правилам iptables в Linux
Что такое iptables
iptables – это фундаментальный компонент сети Linux, который предоставляет пользователю контроль над правилами фильтрации IP-пакетов в брандмауэре ядра Linux.
По сути, эти правила фильтрации пакетов применяются ко всем входящим, исходящим и перенаправленным пакетам, проходящим через сеть Linux-системы.
Обычно iptables поставляется предустановленным в системах Linux.
Для работы с этой утилитой нам нужны права пользователя root.
Давайте попробуем вывести версию iptables, чтобы проверить статус установки:
Если команда iptables -version ничего не выводит, это означает, что iptables не установлен в нашей текущей системе.
В этом случае мы можем установить iptables вручную:
В iptables есть три важных понятия, которые понадобятся нам в следующих разделах: таблицы, цепочки и правила.
Правила iptables содержат критерии, которые при сопоставлении с конкретным IP-пакетом вызывают определенные действия со стороны брандмауэра. iptables обходит все правила в цепочке последовательно в соответствии с происхождением пакета.
Более детально: Учебное пособие по брандмауэру Linux: таблицы, цепочки, основы IPTables на пальцах
Просмотр всех правил iptables (таблица по умолчанию)
Мы можем использовать несколько опций для вывода всех правил, доступных в iptables.
Если таблица не указана, iptables выведет правила для таблицы по умолчанию, которая является таблицей фильтров.
🖧 Как навсегда сохранить правила брандмауэра iptables на Linux
Во-первых, чтобы вывести список всех активных правил, мы можем использовать:
Здесь оба параметра -S и -list-rules обозначают одну и ту же функциональность.
Они выводят все правила, доступные для выбранной цепочки.
Примечательно, что аргумент chain_name является необязательным.
Если мы не указываем конкретную цепочку, утилита выводит правила для всех цепочек сразу.
Вот пример вывода результатов работы утилиты iptables с опцией -S:
В этом случае выводятся правила по умолчанию, которые настроены на прием всех пакетов в цепочках INPUT, FORWARD и OUTPUT.
Мы можем использовать аналогичный набор команд для выполнения той же задачи – перечисления всех правил в таблице по умолчанию:
В этих командах опции -L и -list взаимозаменяемы.
Их задача – вывести все правила в опционально выбранной цепочке.
Основное отличие этих опций от -S или -list-rules заключается в формате вывода.
Запустим команду iptables, не указывая никакой цепочки:
Из результатов видно, что политика по умолчанию – принимать все пакеты для трех цепочек: INPUT, FORWARD и OUTPUT.
Мы можем заметить, что формат вывода немного отличается, но правила по сути одинаковы.
Вывод правил различных таблиц
Иногда вышеупомянутых опций недостаточно, чтобы вывести все правила из всех таблиц. Как уже говорилось, существует пять отдельных таблиц, которые контролирует iptables. Поэтому, чтобы увидеть полный список всех правил в брандмауэре, нам нужно последовательно вызвать iptables в каждой из этих таблиц.
Мы можем использовать опцию -t, чтобы указать конкретную таблицу:
Здесь мы используем ту же опцию -L, что и в предыдущем разделе, которая перечисляет все правила во всех цепочках.
Опция -v или -verbose позволяет iptables отображать дополнительную информацию, такую как имена интерфейсов, параметры правил и т. д.
Опция -verbose особенно полезна, так как позволяет указать в выводе различные важные критерии, которые обычно не выводятся.
Так, чтобы вывести правила всех пяти таблиц, мы выполним команду:
Рассмотрим один конкретный пример вывода всех правил по умолчанию в таблице security:
Аналогичным образом мы можем перечислить правила, содержащиеся в остальных четырех таблицах.
Просмотр правил различных цепочек
Наконец, мы можем вывести список всех правил для определенных цепочек любой таблицы.
Это может быть полезно, если мы хотим просмотреть правила в соответствии с цепочками, поскольку правила в цепочке выполняются последовательно.
Наблюдение за правилами в одной цепочке дает дополнительное представление о том, как обрабатывается сетевой пакет.
Чтобы просмотреть цепочку в одной конкретной таблице, мы можем выполнить команду:
Здесь мы указываем аргументы chain_name и table_name, что дает нам больше контроля над тем, какие правила просматривать.
Кроме того, имя_цепочки должно быть указано сразу после опции -L.
Опять же, мы можем заменить опцию -L на опцию -S, чтобы отформатировать вывод по-другому.
Рассмотрим пример вывода списка всех правил INPUT таблицы nat:
Это правило по умолчанию, которое принимает любой пакет для трансляции сетевых адресов (NAT).
Таким образом, мы можем задавать и контролировать цепочки и таблицы для просмотра правил брандмауэра.
🛡️ Как перенести правила iptables CentOS / RHEL 6 в CentOS / RHEL 7 firewalld
Заключение
В этой статье мы узнали, как получить полный список правил из известного сетевого брандмауэра Linux, iptables.
Понимание и изучение этих правил важно для правильной фильтрации сетевых пакетов и устранения проблем с подключением.
Мы начали с краткого обзора iptables, включая его установку, основные правила, цепочки и таблицы.
Затем мы рассмотрели несколько опций, которые помогают распечатать список правил для таблицы по умолчанию.
Наконец, мы узнали, как сфокусироваться на определенной таблице и изучить все ее правила брандмауэра.
- Как сделать правила iptables постоянными после перезагрузки в Linux
- Как настроить IPtables для открытия портов в CentOS / RHEL
- Создание прозрачного прокси , используя Squid и iptables
- Как заблокировать клиента TOR с помощью IPTABLES
- ✗ toriptables2: устанавливает iptables и отправляет все службы и трафик через сеть Tor✗
- Как заблокировать IP-адреса из стран, используя Iptables Geoip Addons