iptables удалить правило по номеру
linux-notes.org
Удалить iptables правило
В своей статье «Удалить iptables правило» я хочу рассказать как можно удалять правила с iptables. На наглядных примерах, я покажу как пользоваться iptables на вашем сервере.
Вывести правила.
Для начала смотрим какие правила и цепочки у нас имеются:
Праметры:
-L — Вывести все правила.
-n — Отображать IP адрес с портом в числах (не используя DNS сервера для определения имен. Ускоряет отображение).
можно еще использовать параметр
-v — Данная опция, выводит дополнительную информацию. Этот параметр показывает имя интерфейса, его опции, TOS маски, отображает суффиксы ‘K’, ‘M’ or ‘G’.
Так же можно вывести список правил с нумерацией строк:
—line-numbers — вывод пронумерованных правил.
Удалить правила файрвола.
Выполняем поиск удобным для вас способом:
Можно просмотреть правила для конкретной цепочки:
Чтобы удалить используем:
Можно удалить и по-другому, если знаете IP адрес источника:
Для цепочки POSTROUTING.
Выполняем поиск удобным для вас способом:
Чтобы удалить используем:
Можно удалить и по-другому, если знаете IP адрес:
Для цепочки OUTPUT.
Выполняем поиск удобным для вас способом:
Чтобы удалить используем:
Можно удалить и по-другому, если знаете IP адрес:
Например, нужно удалить порт с правил iptables, можно сделать это так:
Тема «Удалить iptables правило» подошла к завершению.
Продолжаем знакомство с iptables на примере вывода и удаления правил.
120 просмотров 0 2021-08-13
Введение
В предыдущей статье мы изучили основные команды файрвола iptables и написали первые правила. В этой статье мы продолжим знакомство с утилитой iptables, необходимой для настройки межсетевого экрана в большинстве операционных систем Linux. Утилита управляет встроенным в ядро брендмауэром netfilter. Netfilter является важным компонентом в обеспечении сетевой безопасности ОС семейства Linux. Более подробно об основных понятиях iptables вы можете почитать тут. В статье рассмотрим, как выводить, читать правила iptables, а также удалять их. Что будет освящено в этой статье:
Все действия будем проводить в ОС Ubuntu 20.04.
Вывод списка правил iptables
Утилита iptables позволяет нам выводить список правил в двух форматах – в построчном и табличном.
Построчный вывод
Для вывода правил в виде последовательности строк используем команду:
В зависимости от имеющихся на сервере правил вывод может отличаться. В нашем случае он такой:
Если нам надо отфильтровать вывод и вывести, например, все правила iptables, регламентирующие установление TCP-соединений, используем команду:
Табличный вывод
В выводе видим все правила, разбитые в блоки по цепочкам.Как видим, вывод в виде таблицы более информативный и удобен для чтения.
Чтобы вывести правила конкретной цепочки, указываем ее имя после команды. Получим все правила базовой цепочки INPUT:
Давайте на этом примере рассмотрим, как читать эти правила.
Сперва идет имя самой цепочки – в нашем случае это INPUT. Цепочка может быть базовой (PREROUTING, INPUT, FORWARD, OUTPUT, POSTROUTING) и пользовательской (имя цепочки задается самим пользователем). После следует политика, применяемая к этой цепочке по умолчанию – DROP. Далее непосредственно сами правила, разбитые по заголовкам. Рассмотрим эти заголовки:
Сброс счетчика пакетов и их размера
Для начала разберем как вывести эти параметры, а потом рассмотрим, как их сбросить и для чего это делается.
Чтобы вывести сколько пакетов попали под конкретное правило и их суммарный размер используем команду:
Непосредственно сам сброс счетчиков выполняется командой:
Если хотим сбросить счетчик только для первого правила цепочки используем:
Для обнуления счетчиков и размера для всех цепочек и каждого правила:
Сброс счетчиков может быть полезен, если необходимо узнать приходит ли попадающий под правила новый трафик на сервер или нет. По умолчанию все счетчики сбрасываются после перезагрузки системы.
Удаление правил iptables
Приведем различные способы удаления правил iptables.
Удаление по имени правила.
Допустим в данном выводе мы нашли правило
и которое подлежит удалению.
Для этого введем:
Удаление по номеру правила в цепочке.
Для удаления этим способом нам необходимо знать название цепочки, к которой принадлежит правило и его порядковый номер в ней. Все это определяется командой:
Например, удалим привило с номером 5 в цепочке INPUT:
Удаление всех правил iptables
Для удаления правил во всех цепочках вводим команду:
Заключение
В этой статье мы продолжили изучение базовой утилиты сетевой безопасности iptables, научившись выводить, читать и удалять правила iptables, а также производить сброс счетчика пакетов.
Перечисление и удаление правил брандмауэра Iptables
Published on December 1, 2020
Введение
Iptables — это брандмауэр, который играет важную роль в обеспечении сетевой безопасности большинства систем Linux. Хотя многие руководства по работе с Iptables научат вас создавать правила брандмауэра для обеспечения безопасности вашего сервера, в этом руководстве мы будем уделять особое внимание другому аспекту управления брандмауэром: вывод списка и удаление правил.
В этом обучающем руководстве мы расскажем, как выполнять следующие задачи при работе с Iptables:
Примечание: при работе с брандмауэрами необходимо следить за тем, чтобы не заблокировать собственный доступ к серверу, запретив подключение по SSH (по умолчанию в этих целях используется порт 22). При потере доступа из-за настроек брандмауэра вам может потребоваться подключение к серверу через внеполосную консоль для восстановления доступа.
Предварительные требования
Если вам нужна помощь с данной начальной настройкой, воспользуйтесь нашим руководством по начальной настройке сервера Ubuntu 20.04. Вы также можете воспользоваться руководствами для Debian и CentOS
Давайте сначала рассмотрим, как просмотреть существующий список правил. Существует два различных способа просмотра действующих правил Iptables: в форме таблицы или списка спецификаций правил. Оба метода предоставляют приблизительно одну и ту же информацию в разных форматах.
Перечисление правил по спецификации
Перечисление списка правил конкретной цепочки
Теперь давайте рассмотрим альтернативный способ просмотра действующих правил Iptables в форме таблицы правил.
Перечисление правил в виде таблицы
Перечисление правил Iptables в виде таблицы может быть полезным при сопоставлении разных правил друг с другом.
Эта команда будет выводить все действующие правила, отсортированные по цепочкам.
Давайте рассмотрим пример цепочки INPUT:
Первая строка вывода указывает имя цепочки (в данном случае INPUT ), за которым следует используемая по умолчанию политика ( DROP ). Следующая строка состоит из заголовков каждого столбца таблицы, после чего идут правила цепочки. Давайте посмотрим, что означает каждый заголовок:
Последняя колонка, которая не имеет заголовка, указывает опции правила. Другими словами, это может быть любая часть правила, которая не указана предыдущими столбцами. Это может быть любая информация, начиная с портов назначения и исходных портов и заканчивая состоянием подключения пакета.
Отображение счетчиков пакетов и общего размера
Теперь, когда вы знаете, как выводить список действующих правил брандмауэра различными способами, давайте рассмотрим возможность сброса счетчиков пакетов и байтов.
Сброс счетчиков пакетов и общего размера
Если вы хотите очистить счетчики для конкретного правила, укажите имя цепочки и номер правила. Например, для обнуления счетчиков первого правила в цепочке INPUT запустите следующую команду:
Теперь, когда вы знаете, как сбросить счетчики пакетов и байтов Iptables, давайте рассмотрим два метода, которые можно использовать для удаления правил.
Удаление правил по спецификации
Удаление правил по цепочке и номеру
Теперь, когда вы знаете, как удалить отдельные правила брандмауэра, давайте рассмотрим возможность сброса цепочек правил.
Сброс цепочек
Iptables предлагает возможность удаления всех правил в цепочке или сброса цепочки. В данном разделе мы опишем разнообразные способы выполнения этой задачи.
Сброс отдельной цепочки
Например, для удаления всех правил в цепочке INPUT запустите следующую команду:
Сброс всех цепочек
Сброс всех правил, удаление всех цепочек и разрешение любого трафика
Из этого раздела вы узнаете, как выполнить сброс всех правил брандмауэра, таблиц и цепочек, чтобы разрешить прием любого сетевого трафика.
Примечание: результатом этих действий станет полное отключение вашего брандмауэра. Вам следует выполнять описанные в данном разделе действия только в том случае, если вы хотите начать настройку вашего брандмауэра с нуля.
Сначала задайте ACCEPT в качестве используемой по умолчанию политики для каждой встроенной цепочки. Главная причина этого шага состоит в том, чтобы гарантировать, что вы не заблокируете собственный доступ к вашему серверу через SSH:
Заключение
После изучения данного руководства вы должны получить представление о том, как вывести список ваших правил брандмауэра iptables и удалить определенные правила.
Как удалить правило iptables
Основная работа c межсетевым экраном Netfilter с помощью утилиты iptables состоит в удалении неверных или неиспользуемых правил и добавлении в цепочки новых правил. Их выполнение осуществляется последовательно.
В этой статье мы рассмотрим как удалить правило iptables с помощью различных команд, например, по его номеру или по действию, которое оно делает. Если вы не знакомы с командами просмотра правил Netfilter рекомендуем вам прочитать статью как просмотреть правила iptables.
Как удалить правило iptables
В рамках статьи нам придётся рассмотреть три варианта команды удаления:
Команды для протокола IPv6 будет абсолютно аналогичны:
Рассмотрим более подробно все варианты команд и их практическое применение. В данной статье для настройки firewall Netfilter используется операционная система Debian 10.2.
1. Как удалить правило по номеру
Чтобы удалить правило по номеру iptables будет использоваться такая команда:
Данная команда удалит из таблицы filter цепочки INPUT правила с номерами 2. Нумерация правил начинается с 1.
2. Как удалить правило по действию
Удалить правило iptables по выполняемому над пакетами действию можно с помощью следующей команды:
В спецификациях правила необходимо указать IP адрес отправителя или другие параметры правила, однозначно его определяющие (порт, IP адрес назначения, протокол и др.) и выполняемое действие, например, -j ACCEPT.
Данная команда удалит из таблицы filter цепочки INPUT правило с заданным отправителем 192.168.3.0/24 и действием над пакетами DROP.
3. Как удалить все правила из таблицы
Следует заметить, что существует возможность удалить правила текущей таблицы из всех цепочек правил с помощью опции -F (—flush). По умолчанию текущей таблицей является таблица filter. Поэтому, чтобы удалить все правила таблицы по умолчанию надо использовать команду:
Ещё можно указать таблицу из которой вы хотите выполнить удаление правила iptables:
Данная команда удалит все правила из всех цепочек таблицы nat.
4. Как удалить все правила в цепочке
Для того, чтобы удаление правил iptables из конкретной цепочки в заданной таблице выполняется такой командой:
Данная команда удалит все правила из таблицы nat в цепочке PREROUTING.
Выводы
В данной статье мы рассмотрели различные варианты удаления команд или целых блоков команд из цепочек и таблиц межсетевого экрана Netfilter с помощью утилиты iptables. Мы научились удалять все команды из текущей таблицы, из конкретной цепочки правил в указанной таблице, из указанной таблицы, научились удалять команды под указанными номерами и удалять команды с указанным действием над пакетами данных.
Вывод и удаление правил IPTables
IPTables – это фаервол (или брандмауэр), играющий очень важную роль в сетевой безопасности большинства дистрибутивов Linux. Данное руководство сфокусировано на различных аспектах управления фаерволом: выводе списка правил, удалении правил и т.п.
Это руководство охватывает следующие вопросы:
Примечание: При работе с брандмауэрами очень важно быть внимательным, иначе можно закрыть себе доступ к собственному серверу, заблокировав SSH-трафик (порт 22 по умолчанию). Если вы случайно заблокировали себе доступ к серверу, подключитесь к нему с помощью консоли, чтобы исправить настройки брандмауэра. Также решить эту проблему может перезагрузка сервера (только в случае если сохраненные правила брандмауэра разрешают трафик SSH).
Требования
Для начала нужно настроить сервер и создать не-root пользователя с расширенными правами. Подробнее об этом можно прочитать в руководствах:
Вывод правил IPTables
Существует два способа просмотра активных правил фаервола IPTables:
Оба метода предоставляют примерно одинаковую информацию в разных форматах.
Вывод правил по спецификации
Чтобы вывести список правил по спецификации, запустите:
Как видите, вывод содержит команды, которые использовались для создания правил (без команды iptables). Также эта команда выводит содержимое конфигурационных файлов, если вы когда-либо использовали такие команды:
iptables-persistent
iptables save
Вывод цепочки правил
Чтобы ограничить вывод до определённой цепочки (INPUT, OUTPUT, TCP и т.п.), нужно просто указать имя цепочки после опции –S. К примеру, чтобы получить все правила цепи TCP, нужно запустить:
Вывод правил в виде таблиц
Такой формат вывода правил iptables позволяет сравнивать разные правила.
Чтобы вывести все активные правила в виде таблицы, запустите iptables с опцией –L:
Это выведет все текущие правила брандмауэра, отсортированные по цепочкам.
Чтобы ограничить вывод до определённой цепочки, просто укажите имя нужной цепи после опции –L. Например:
Первая строка вывода показывает имя цепочки (в данном случае это INPUT), а затем её политику по умолчанию (DROP).Следующая строка содержит заголовки всех столбцов в таблице, а затем следуют правила цепочки. Рассмотрим подробнее каждый заголовок:
Последний столбец без названия определяет опции правила (опцией в данном случае называется любая часть правила, которая не относится ни к одному из предыдущих столбцов).
Вывод количества пакетов и байтов
К примеру, запросите цепочку INPUT:
Обратите внимание: в выводе добавилось два столбца по имени pkts и bytes.
Сброс счетчиков пакетов и байтов
Чтобы очистить счетчики пакетов и байтов, используйте опцию –Z. Эти счетчики сбрасываются после перезагрузки системы. Это позволяет узнать, получает ли сервер какой-либо трафик, совпадающий с правилами брандмауэра.
Итак, чтобы очистить счётчики для всех цепочек и правил, используйте опцию –Z без дополнительных параметров:
Чтобы очистить счётчики для всех правил определённой цепи, укажите имя цепочки после –Z. Например, чтобы сбросить счётчики цепи INPUT, нужно ввести:
Чтобы сбросить счётчики для конкретного правила, укажите имя цепочки и номер правила. Например, чтобы сбросить счётчики первого правила цепи INPUT, нужно использовать:
Удаление правил iptables
Удалять правила брандмауэра iptables тоже можно двумя способами.
Удаление правил по спецификации
Первый способов удаления правил Iptables – использование спецификации правила. Для этого нужно запустить команду iptables с опцией –D, после которой указывается спецификация правила. Чтобы удалить правила таким способом, можно обратиться за помощью к выводу уже знакомой команды:
Примечание: При этом нужно исключить опцию –А, которая задаёт положение правила во время создания.
Удаление правила по номеру и цепочке
Кроме того, правило можно удалить, зная имя цепочки и номер строки, к которой оно находится. Чтобы узнать номер строки правила, используйте опцию –line-numbers:
Это добавит номер строки для каждого правила.
Зная имя цепи и номер строки, в которой находится искомое правило, используйте команду iptables –D, указав после опции эти данные. К примеру, чтобы удалить правило цепочки INPUT, которое сбрасывает недействительные пакеты, нужно использовать:
Сброс цепочек правил
Брандмауэр Iptables предоставляет возможность удалить все правила цепочки – сбросить цепочку правил. Данный раздел рассматривает несколько способов сделать это.
Примечание: Будьте внимательны, не заблокируйте себя на собственном сервере, случайно сбросив цепочку правил с политикой drop или deny. Если же вы всё-таки заблокировали себя, используйте консоль, чтобы остановить доступ.
Сброс одной цепи
Чтобы сбросить определённую цепочку правил, используйте флаг –F (или его полную версию –flush), указав имя цепочки.
Например, чтобы удалить все правила цепочки INPUT, запустите:
Сброс всех цепочек
Чтобы сбросить все цепочки правил – то есть, удалить все правила фаервола, – используйте опцию –F (или –flush) без дополнительных параметров.
Сброс всех правил, удаление всех цепочек, разрешение всего трафика
Этот раздел покажет, как сбросить все правила, цепочки и таблицы брандмауэра и разрешить весь трафик.
Примечание: Это полностью отключит фаервол. Следуйте данному разделу только в том случае, если хотите заново настроить правила фаервола.
Сначала настройте стандартную политику всех цепочек; это должна быть политика ACCEPT. В основном это нужно для того, чтобы случайно не заблокировать себе доступ к собственному серверу.
Затем сбросьте таблицы nat и mangle, сбросьте все цепочки (флаг –F) и удалите все нестандартные цепочки правил (-X)
Теперь брандмауэр пропускает весь сетевой трафик. Если сейчас запросить список правил, результат будет нулевым, на экране появятся только имена стандартных цепочек (INPUT, FORWARD и OUTPUT).
Заключение
Помните, что все изменения правил при помощи команды iptables непостоянны, их нужно сохранять вручную, чтобы они оставались действительными после перезапуска системы.