Как настроить IPTables в Linux? [Пошаговое руководство 2021]

Как настроить IPTables в Linux? [Пошаговое руководство 2021]

IPTables - это имя системы межсетевого экрана, которая работает в Linux через командную строку.Программа в основном используется какUbuntuУтилита по умолчанию, представленная на.Администраторы часто используют брандмауэры IPTables, чтобы разрешить или предотвратить проникновение трафика в свои сети.

Если вы новичок в IPTables, первое, что вам нужно сделать, это обновить или установить его с помощью следующей команды:

$ sudo apt-get установить iptables

Хотя пользователи, не знакомые с интерфейсом командной строки, обнаруживают, что IPTables требует обучения, сама утилита очень проста и удобна в использовании.Существует ряд основных команд, которые можно использовать в качестве основы для управления трафиком.При этом вы должны быть очень осторожны при изменении правил IPTables.Ввод неправильной команды может полностью заблокировать доступ к IPTables до тех пор, пока вы не решите проблему на физическом компьютере.

В этой статье мы предоставим вам базовое руководство по IPTables и познакомим вас с основами.Прежде чем мы углубимся в суть IPTables, вам нужно убедиться, что у вас естьЗапустите Ubuntu 16.04VPAиС SSH-клиентом的 Локальная машина.Если они у вас уже есть, то пора начинать.

Учебное пособие по IPTables: цепочка

Одна из основных концепций, которые необходимо освоить в IPTables, - это концепция цепочек.Цепочка - это, по сути, правило.В таблице фильтров есть три цепочки, с которыми вы столкнетесь в IPTables;импорт,Вперед ИВыход.

    • ВХОД  - Цепочка INPUT - это правило, которое контролирует входящие пакеты данных.Здесь вы можете заблокировать или разрешить новые подключения.Вы можете сделать это в зависимости от порта, протокола и IP-адреса источника.
  • FORWARD  - Цепочка FORWARD фильтрует входящие пакеты, которые пересылаются в разные точки терминала.Если вы не выполняете маршрутизацию или специально не ищете пересылку, вы вряд ли будете использовать эту цепочку.
  • ВЫВОД  - Цепочка OUTPUT используется для управления исходящими пакетами данных и соединениями.Важно отметить, что если вы проверяете связь с внешним хостом, входная цепочка будет использоваться для возврата вам данных.

Поведение цепочки по умолчанию

Возможно, вы захотите сразу перейти к настройке определенных правил в начале, но вам нужно сделать шаг назад, чтобы определить поведение по умолчанию.Чтобы определить поведение цепочки по умолчанию, необходимо выполнить следующую команду:

$ sudo iptables -L команда

Это отобразит следующее:

user@ubuntu:~$ sudo iptables -L -v 
Цепочка INPUT (политика ACCEPT) 
Цепочка ВПЕРЕД (политика ПРИНЯТЬ) 
Цепочка ВЫХОДА (политика ПРИНЯТЬ) 
пользователь@убунту:~$

Эта информация точно сообщает вам цель конфигурации цепочки.В этом примере входная, прямая и выходная цепочки настроены для приема трафика.Эти настройки являются хорошей отправной точкой, поскольку они не препятствуют подключению, которое вам может понадобиться.

связанный вопрос  Linux против Windows [конфликт с радикальными операционными системами]

Однако, если вы обнаружите, что ваша политика не принимает подключения, вы можете ввести каждую из следующих команд, чтобы принимать все подключения:

$ sudo iptables —политика ВВОД ПРИНЯТЬ
$ sudo iptables --policy ВЫВОД ПРИНЯТЬ
$ sudo iptables —политика FORWARD ACCEPT

После того, как настройки по умолчанию принимают все подключения, вы можете контролировать доступ к IPTables, блокируя IP-адреса и номера портов.Это позволяет вам указать, какие соединения блокировать, вместо того, чтобы по умолчанию блокировать все соединения.

Если вы имеете дело с особо конфиденциальной информацией, вы можете настроить параметры по умолчанию, чтобы автоматически блокировать все соединения.Таким образом, вы можете использовать IPTables для выбора отдельных IP-адресов, которые вы хотите разрешить.Для этого нужно ввести следующую команду:

$ sudo iptables --policy INPUT DROP
$ sudo iptables —Policy OUTPUT DROP
$ sudo iptables —политика FORWARD DROP

Для большинства пользователей лучше всего принимать все соединения, но если вы работаете на сервере с высоким уровнем безопасности, об этом стоит помнить.

Настроить единое соединение

После настройки поведения цепочки по умолчанию вы можете настроить одно соединение.Здесь вы настраиваете так называемый ответ, зависящий от соединения.По сути, это сообщает IPTables, как взаимодействовать при подключении к IP-адресу или порту.Эти ответы следующие:прием,放棄,Отказаться.

Как вы можете видеть на изображении выше, пользователь определил правила цепочки, чтобы разрешать, отбрасывать или запрещать соединения в зависимости от требований.Ниже приводится описание того, что содержит каждый ответ:

  • ПРИНЯТЬ - Эта конфигурация разрешает только соединения.
  • DROP  - Drop блокирует соединение без какого-либо взаимодействия с источником.
  • БРАК  - Это заблокирует попытку подключения, но также отправит сообщение об ошибке.Обычно это делается для того, чтобы уведомить источник о том, что попытка подключения была заблокирована брандмауэром.

Как разрешить или заблокировать соединения

В зависимости от ваших настроек есть много разных способов заблокировать или разрешить соединения.В следующем примере используется метод скрытой блокировки, то есть с использованиемПадение Отключитесь без какого-либо взаимодействия. iptables -А Позволяет добавлять дополнительные предупреждения к правилам, установленным настройками цепочки по умолчанию.Ниже вы увидите, как использовать эту команду для блокировки соединения:

Заблокировать один IP-адрес:

$ sudo iptables -A INPUT -S 10.10.10.10 -j DROP

В приведенном выше примере вы можете заменить 10.10.10.10 IP-адресом, который хотите заблокировать.

связанный вопрос  35 сочетаний клавиш Linux [вы должны знать в 2021 году]

Заблокируйте серию IP-адресов:

$ sudo iptables -A INPUT -s 10.10.10.10.0 / 24 -j DROP    

или

$ sudo iptables -A INPUT -s 10.10.10.0/255.255.255/.0 -j DROP

Заблокируйте один порт:

$ sudo iptables -A INPUT -p tcp --dport ssh -s 10.10.10.10 -j DROP 

Обратите внимание, что 'sh можно заменить любым протоколом или номером порта.Также обратите внимание, что сегмент кода -p tcp используется, чтобы указать, какой протокол вы хотите заблокировать: UDP или TCP.

Если протокол использует UDP, введите-p UDP而 不是-p TCP.Вы также можете заблокировать все подключения с IP-адресов, введя следующую команду:

$ sudo iptables -A ВВОД -p tcp --dport ssh -jDROP

Двусторонняя связь: учебное пособие по статусу подключения IPTables

Большинство протоколов, с которыми вы сталкиваетесь, требуют двусторонней связи для передачи.Это означает, что передача состоит из ввода и вывода.То, что попадает в вашу систему, не менее важно, чем то, что выходит из строя.Статус соединения позволяет вам смешивать и сопоставлять двусторонние и односторонние соединения.В следующем примере протокол SSH блокирует SSH-соединения с IP-адресов, но разрешает соединения с IP-адресами:

$ sudo iptables -A INPUT -p tcp --dport ssh -s 10.10.10.10 -m state --state NEW, ESTABLISHED -j ACCEPT 

$ sudo iptables -A ВЫХОД -p tcp —sport 22 -d 10.10.10.10.-m состояние —состояние УСТАНОВЛЕНО -J ПРИНЯТЬ

После ввода команды на изменение статуса подключения нужно сохранить изменения.Если вы этого не сделаете, ваша конфигурация будет потеряна при закрытии утилиты.В зависимости от используемой вами системы распространения вы можете использовать множество разных команд:

связанный вопрос  Как запускать приложения Windows в Linux? [Используйте Wine 6.1]

Ubuntu:

$ sudo / sbin / iptables-сохранить

Red Hat / CentOS -

$ sudo / sbin / service iptables сохранить

или

$ sudo /etc/init.d/iptables сохранить

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

Удалить правило

Возможность их удаления не менее важна, чем возможность сохранять правила.Если вы допустили ошибку или просто хотите отменить старые правила, вы можете использовать опцию - D 命令.Эта команда должна использоваться вместе с номером правила, который вы ввели.Этот номер сообщает IPTables, какое правило следует удалить.Например, если вы должны были ввести:

$ sudo iptables -D ВХОД 10

Тогда 10-е правило, которое вы настроили, будет удалено.

Если вы хотите навести порядок в доме и удалить ряд правил, вы можете использовать-F команда.Вы можете сделать это, введя следующее:

$ судо iptables-F

Это очистит весь набор правил и обновит ваш IPTable.

IPTables: правила обучающей цепочки!

На этом мы завершаем наше руководство по IPTables.Как видите, IPTables - это способ заблокировать и разрешитьLinuxВерсия выпускаМногофункциональный инструмент на потоке.Эффективное использование этой утилиты включает в себя эффективную настройку конфигурации по умолчанию и построение на ее основе других правил.Конфигурация по умолчанию позволит вам обрисовать в общих чертах намерение разрешить или запретить трафик;Эти правила позволят вам создать свой метод на основе IP-адреса, порта и протокола.

Мы лишь поверхностно рассмотрели потенциал IPTables, вы можете использовать множество различных команд, чтобы решить, как воспринимать трафик на сервере.Однако мы рекомендуем вам понять основы, прежде чем начинать использовать другие команды.Например, прежде чем заняться чем-то более профессиональным, вам необходимо понять основные правила цепочки.

Когда вы привыкнете к тому, как работает IPTables, вы можете начать интегрировать больше правил, чтобы настроить свой опыт.Сделав это, вы сможете точно указать типы подключений, которые вы разрешите, с большей точностью, чем когда-либо прежде.

о, привет 👋Рад встрече.

Подписывайтесь на нашу новостную рассылку, Отправляйте очень регулярноОтличная технологияК твоему сообщению.

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