Iptables и Fail2ban в Debian 10

Доброго времени суток, уважаемые читатели. Сегодня статья на тему: "Iptables и Fail2ban в Debian 10". Рассмотрим использование Iptables, а так же установку и использование Fail2ban, в операционной системе Debian 10.
Iptables – это утилита для настройки системного Firewall.
Fail2ban – это утилита для контроля доступа, и предотвращения атак, методом подбора паролей.
- В прошлой статье, мы рассматривали установку и настройку утилиты UFW в Debian 10. Будем считать, что мы продолжаем работать с тем же сервером. Так как мы решили использовать Iptables, нам нужно будет предварительно отключить UFW, и отчистить Firewall от следов её присутствия.
Если у Вас не была установлена UFW, то пропустите первые действия.
Отключение утилиты UFW в Debian 10
- Как вы помните из предыдущей статьи, для отключения утилиты UFW и снятия её из автозагрузки, достаточно выполнить одну команду:
# ufw disable
- Но после её отключения, в системном Firewall остаётся много лишнего. Если мы проверим, то увидим такую картину:
# iptables -S

- Для очистки от всего лишнего, воспользуемся утилитой Iptables, так как она уже установлена в системе.
- Если в Вашем случае Iptables не установлена, то произведите её установку:
# apt install iptables
- Чтобы произвести очистку, будем использовать две команды Iptables:
iptables-save и iptables-restore
- Первой командой, мы можем сохранить в понятном утилите формате, действующие на данный момент правила Firewall, в каком-нибудь файле.
- Второй командой, мы можем произвести перезапись действующих на данный момент правил, на сохранённые в понятном утилите формате правила, записанные в каком-нибудь файле.
Предлагаю записать действующие правила в файл, почистить их от лишнего, и перезаписать уже очищенный вариант.
- Сохраняем правила в файле /etc/iptables.rules.v4
# iptables-save > /etc/iptables.rules.v4
- Открываем созданный файл, отчищаем его, приведя к такому виду:

- Сохраняем изменённый файл /etc/iptables.rules.v4, и производим перезапись.
# iptables-restore < /etc/iptables.rules.v4
- Проверяем что у нас получилось.
# iptables -S

- Как видно на картинке, мусора больше нет.
Iptables у нас работает. Мы можем добавлять правила, изменять, или удалять их. Но к сожалению все наши изменения будут действовать, только на время нашей сессии. То есть после перезапуска машины, все правила будут установлены по умолчанию.
Установка iptables-persistent в Debian 10
- Для того, чтобы изменения сохранялись, нам нужно установить дополнительный пакет iptables-persistent.
- Производим установку пакета:
# apt install iptables-persistent
- В процессе установки, выходит два сообщения, с предложением сохранить имеющиеся правила Firewall, в определённом файле. Соглашаемся оба раза.
- После установки пакета, нам становится доступно сохранение всех производимых настроек.
- Мы можем производить настройку через консоль, путем добавления правил, и последующего сохранения их в файле /etc/iptables/rules.v4. Либо добавление правил напрямую в файл /etc/iptables/rules.v4, с последующей перезаписью действующих правил.
- Например добавим через консоль, разрешающее правило на входящие соединения на 80 порту:
# iptables -A INPUT -p tcp --dport 80 -j ACCEPT
- Правило будет действовать до перезапуска ОС. Чтобы оно действовало и после перезапуска, сохраняем действующие настройки в файл /etc/iptables/rules.v4:
# iptables-save > /etc/iptables/rules.v4

- После произведённых действий, даже после перезапуска, наше правило будет действовать.
- Так же для примера, добавим три правила напрямую в файл /etc/iptables/rules.v4:
-A INPUT -p tcp --dport 443 -j ACCEPT -A INPUT -p tcp --dport 80 -j ACCEPT -A INPUT -p tcp --dport 22 -j ACCEPT

- Сохраняем файл, и перезаписываем действующие правила:
# iptables-restore < /etc/iptables/rules.v4
- Проверяем действующие правила:
# iptables -S

- Как видно на картинке, правила внесённые в файл /etc/iptables/rules.v4, были применены.
- Более подробную информацию по использованию утилиты iptables, можно найти в статье на сайте, на примере CentOS 7.
Установка Fail2ban в Debian 10
- Для установки Fail2ban в Debian 10, нужно запустить соответствующую команду:
# apt install fail2ban
- После установки, утилита будет автоматически запущена, и добавлена в автозагрузку.
- Кроме того, будет автоматически активирована защита SSH.
- Если мы запустим команду для проверки статуса, то увидим активный джейл sshd.
# fail2ban-client status

- Команды для управления Fail2ban:
# systemctl restart fail2ban # systemctl status fail2ban # systemctl start fail2ban # systemctl stop fail2ban
- Конфигурационный файл Fail2ban находится по адресу /etc/fail2ban/jail.conf. Но производить настройки в нём не желательно, так как он перезаписывается после обновления.
- Для настроек Fail2ban, нужно создавать в той же директории, дополнительный файл jail.local, который в итоге будет принят утилитой, и будет считаться более приоритетным.
- Копируем файл /etc/fail2ban/jail.conf, и переименовываем копию.
# cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
- В созданном файле jail.local, можно производить настройки под свои нужды.
- Более подробную информацию по использованию утилиты Fail2ban, можно найти в статье на сайте, на примере CentOS 7.
Сегодня мы рассмотрели тему: "Iptables и Fail2ban в Debian 10". Произвели отчистку Firewall, поработали с iptables, установили и запустили утилиту Fail2ban. Все действия были произведены в ОС Debian 10. Смотрите так же, видео по теме.
Надеюсь статья была вам полезна. До встречи в новых статьях.
✍
С уважением, Андрей Бондаренко.
Видео на тему "Iptables и Fail2ban в Debian 10":

WMZ-кошелёк = Z667041230317
«Debian»