Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

UFW_FIREWALL_INIT Linux / DevOps

Настройка фаервола UFW в Ubuntu: как открыть SSH (порт 22) и защитить сервер

Обновлено: 26.08.2026 · Официальная документация ↗

Новый Linux-сервер подключен напрямую к сети Интернет и подвергается постоянным попыткам перебора паролей (брутфорс), открытые порты баз данных (3306, 5432, 6379) доступны всему миру, и сервер необходимо срочно защитить фаерволом.

Что такое UFW (Uncomplicated Firewall)?

UFW — это простой и удобный инструмент в Ubuntu для управления правилами защиты (брандмауэром iptables/nftables). Он позволяет открывать и закрывать сетевые порты буквально в одну понятную команду.


ГЛАВНОЕ ПРАВИЛО: Не заблокируйте сами себя!

Перед тем как включать фаервол, **всегда первым шагом открывайте порт SSH (22)**, иначе после включения ваша текущая сессия заблокируется, и вы потеряете доступ к удаленному серверу!


Шаг 1. Разрешаем подключение по SSH

sudo ufw allow 22/tcp
# или по имени службы:
sudo ufw allow ssh

Шаг 2. Разрешаем веб-трафик для сайтов (порты 80 и 443)

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Шаг 3. Включаем брандмауэр (ufw enable)

Активируйте защиту:

sudo ufw enable

Терминал спросит: «Command may disrupt existing ssh connections. Proceed with operation (y|n)?». Нажмите клавишу y и затем Enter.


Шаг 4. Проверка статуса и списка открытых портов

sudo ufw status verbose

Ожидаемый результат:

Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW IN    Anywhere
80/tcp                     ALLOW IN    Anywhere
443/tcp                    ALLOW IN    Anywhere

Все остальные порты теперь надежно закрыты от внешнего мира!

💡 Практика специалистов: Политика UFW по умолчанию: 'deny incoming, allow outgoing'. Это идеальный баланс: сервер может сам выходить в интернет за обновлениями, но блокирует любые незапрошенные внешние входящие подключения.

Частые вопросы (FAQ)

Как удалить ошибочно созданное правило в UFW?

Выведите список правил с их номерами: sudo ufw status numbered, найдите номер ненужного правила (например, [3]) и удалите его: sudo ufw delete 3.

Как временно полностью отключить UFW?

Выполните команду: sudo ufw disable. Все фильтры будут мгновенно сняты.

Как разрешить доступ к базе данных MySQL (порт 3306) только с одного конкретного IP-адреса?

Используйте правило с указанием IP источника: sudo ufw allow from 198.51.100.25 to any port 3306 proto tcp.

Что делать, если я сменил порт SSH на 2222 и включил UFW?

Обязательно выполните: sudo ufw allow 2222/tcp ДО включения ufw enable.

Полезные материалы
Рекомендуем