Как заблокировать определенные порты в Linux с помощью UFW или firewalld

Чтобы заблокировать определенный порт в Linux, добавьте правило брандмауэра для порта и протокола, который вы хотите остановить. Например, в системе Ubuntu, использующей UFW, sudo ufw deny 8080/tcpблокируются новые входящие TCP-соединения к порту 8080. В системах, использующих firewalld, вы можете удалить существующее разрешение порта или добавить явное правило отклонения. Важно изменить брандмауэр, который фактически используется вашей системой, а не смешивать правила UFW, firewalld и низкоуровневые правила nftables.

Прежде чем блокировать порт

Сначала подтвердите номер порта и укажите, использует ли приложение TCP, UDP или оба протокола. Правило TCP не блокирует автоматически протокол UDP на том же номере. Вы также можете проверить наличие прослушиваемых сокетов с помощью:

sudo ss -lntup

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

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

Заблокируйте порт с помощью UFW

В документации Ubuntu указано , что UFW является инструментом настройки брандмауэра по умолчанию . Обычно UFW изначально отключен, поэтому перед добавлением или включением правил проверьте его состояние.

1. Проверьте UFW и безопасно включите его.

sudo ufw status

Если результат таков Status: inactiveи вы хотите включить UFW, сначала разрешите службу удаленного управления, на которую вы полагаетесь. Для стандартного профиля OpenSSH:

sudo ufw allow OpenSSH
sudo ufw enable
В терминале Linux отображается статус UFW как неактивный, после чего включается брандмауэр UFW.
Перед изменением правил UFW, особенно на удаленно управляемой машине, убедитесь, что эта функция активна.

2. Добавьте правило запрета для порта.

Замените 8080на порт, который вы хотите заблокировать. Укажите протокол, чтобы правило было однозначным:

sudo ufw deny 8080/tcp

Для UDP используйте:

sudo ufw deny 8080/udp

Если приложение использует оба протокола, добавьте оба правила. UFW также поддерживает reject; в отличие от молчаливого отказа, отказ сообщает отправителю о том, что соединение было отклонено.

В терминале Linux отображается команда sudo ufw deny 8080/tcp и подтверждение добавления правила брандмауэра.
Правило запрета UFW блокирует входящий TCP-трафик на выбранный порт.

3. Проверить или отменить правило UFW.

sudo ufw status numbered

В результате выполнения должна отобразиться запись DENY IN для заблокированного порта. Официальный синтаксис UFW также поддерживает удаление правила путем его повторения с помощью delete:

sudo ufw delete deny 8080/tcp
В терминале Linux отображается статус UFW с номером порта TCP 8080, запрещенный для IPv4 и IPv6.
Используйте пронумерованный вывод состояния, чтобы подтвердить, что нужное правило UFW активно.

Заблокируйте порт с помощью firewalld.

Если в вашей системе Linux используется firewalld, начните с определения активной зоны:

sudo firewall-cmd --get-active-zones
sudo firewall-cmd --zone=public --list-all

Замените publicприведенные ниже данные, если ваш интерфейс принадлежит другой зоне. Если порт 8080 был явно открыт, удалите это разрешение и перезагрузите постоянную конфигурацию:

sudo firewall-cmd --permanent --zone=public --remove-port=8080/tcp
sudo firewall-cmd --reload
В терминале Linux отображается активная зона firewalld, удаление TCP-порта 8080 и перезагрузка брандмауэра.
При использовании firewalld внесите изменения в соответствующую активную зону и перезагрузите постоянные правила.

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

sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule port port="8080" protocol="tcp" reject'
sudo firewall-cmd --reload
sudo firewall-cmd --zone=public --list-rich-rules

В документации firewalld по расширенным правилам описаны способы сопоставления портов с помощью действий rejectили . В руководстве firewall-cmd также объясняется разделение настроек на исполняемые и постоянные.drop

Чтобы позже снять явную блокировку firewalld, удалите то же самое расширенное правило и перезагрузите систему:

sudo firewall-cmd --permanent --zone=public --remove-rich-rule='rule port port="8080" protocol="tcp" reject'
sudo firewall-cmd --reload

Подтвердите, что порт больше недоступен.

Запустите программу sudo ss -lntupеще раз, если хотите проверить, продолжает ли приложение прослушивать запросы. Затем протестируйте с другого компьютера в соответствующей сети. Если установлен Netcat, проверка TCP может выглядеть следующим образом nc -vz SERVER_IP 8080: . Протестируйте с того же сетевого пути, который используют ваши реальные клиенты; проверка на localhost не доказывает, что внешний трафик заблокирован.

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

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

Как безопасно восстановить потерянные разделы и данные с жесткого диска

Как безопасно восстановить потерянные разделы и данные с жесткого диска

Узнайте, как восстановить потерянные разделы и файлы с помощью TestDisk и PhotoRec. Защитите исходный диск, проведите безопасное сканирование и сохраните восстановленные данные на другой диск.

Как сканировать QR-коды на настольном компьютере с Linux

Как сканировать QR-коды на настольном компьютере с Linux

Сканируйте QR-коды в Linux с помощью CoBang, используя веб-камеру или файл изображения. См. варианты установки, шаги настройки и решения проблем с доступом к камере Flatpak.

Как изменить настройки веб-камеры в Linux с помощью Cameractrls

Как изменить настройки веб-камеры в Linux с помощью Cameractrls

Изменяйте настройки веб-камеры в Linux с помощью Cameractrls: настраивайте экспозицию, цвет, подавление мерцания и другие поддерживаемые параметры, а затем проверяйте совместимые видеорежимы.

Как установить PhpStorm на Linux: Toolbox, Tar.gz, Snap и AUR

Как установить PhpStorm на Linux: Toolbox, Tar.gz, Snap и AUR

Установите PhpStorm на Linux с помощью JetBrains Toolbox или автономного архива tar.gz, а также через Snap и Arch AUR. Java уже включена в комплект.

Как создать резервную копию CD-ROM в формате ISO в Linux

Как создать резервную копию CD-ROM в формате ISO в Linux

Создайте образ CD-ROM ISO в Linux с помощью GNOME Disks или dd. Определите оптический привод, отслеживайте процесс копирования, проверяйте образ и узнавайте, когда поврежденный диск или аудиодиск требует использования другого инструмента.

Как вырезать изображение в Linux с помощью GIMP

Как вырезать изображение в Linux с помощью GIMP

Удаление фона фотографии в Linux с помощью GIMP: обведите контур объекта, удалите выделенный фон, сохранив прозрачность, и экспортируйте многоразовый PNG-файл.

Как установить Cisco Packet Tracer на Linux

Как установить Cisco Packet Tracer на Linux

Загрузите Cisco Packet Tracer 9.0.1 для Ubuntu 64-бит, установите DEB-пакет с помощью APT, примите лицензионное соглашение в Терминале и войдите в систему, чтобы начать лабораторную работу.

Скачайте FlightGear бесплатно: официальное руководство по установке

Скачайте FlightGear бесплатно: официальное руководство по установке

Скачайте FlightGear бесплатно с официального сайта. Сравните пакеты для Windows, macOS и Linux, установите файлы данных и совершите свой первый полет.

Настольное приложение Google Tasks: как им пользоваться на компьютере

Настольное приложение Google Tasks: как им пользоваться на компьютере

Откройте Google Задачи в браузере, добавьте ярлык Chrome или запустите приложение, и управляйте задачами с указанием даты через Календарь и Gmail.

OKSampler: Бесплатный и простой музыкальный сэмплер для клавишных ритмов.

OKSampler: Бесплатный и простой музыкальный сэмплер для клавишных ритмов.

OKSampler сопоставляет MP3-клипы с клавишами клавиатуры и может зацикливать аудио. Узнайте, что делает эта старая бесплатная программа, на чем заканчиваются ее старые функции и что нужно проверить перед загрузкой.