Защита и обслуживание VPS Linux: брандмауэр, fail2ban и обновления

Опубликовано 21/08/2026 Обновлено 06/10/2026 Просмотров: 89
Pare-feu VPS Linux fail2ban

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

Как настроить брандмауэр VPS Linux?

С помощью ufw в Debian и Ubuntu и firewalld в AlmaLinux, Rocky и CentOS Stream: по умолчанию всё запрещено, затем открываются только SSH и действительно публичные порты.

В Debian и Ubuntu с помощью ufw:

apt install ufw
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp
ufw allow 80,443/tcp
ufw enable
ufw status verbose

В AlmaLinux, Rocky и CentOS Stream с помощью firewalld:

dnf install firewalld
systemctl enable --now firewalld
firewall-cmd --permanent --add-service=ssh
firewall-cmd --permanent --add-service=http --add-service=https
firewall-cmd --reload
firewall-cmd --list-all

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

Открывайте только порты действительно публичных сервисов. База данных почти никогда не должна принимать подключения извне: настройте её на прослушивание 127.0.0.1 и администрируйте через SSH-туннель.

Как блокировать повторяющиеся попытки входа с помощью fail2ban?

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

apt install fail2ban        # Debian, Ubuntu
dnf install fail2ban        # AlmaLinux, Rocky, CentOS Stream

Создайте /etc/fail2ban/jail.local — никогда не изменяйте jail.conf, он перезаписывается при обновлениях:

[DEFAULT]
bantime  = 1h
findtime = 10m
maxretry = 5
ignoreip = 127.0.0.1/8 YOUR_OWN_IP

[sshd]
enabled = true

Затем:

systemctl enable --now fail2ban
fail2ban-client status sshd

Если указать в ignoreip свой собственный адрес, вы не заблокируете сами себя после нескольких неудачных попыток.

Как устанавливать обновления безопасности на сервер?

Вручную с помощью apt upgrade или dnf upgrade либо автоматически с помощью unattended-upgrades в Debian и Ubuntu и dnf-automatic в AlmaLinux, Rocky и CentOS Stream.

Вручную, регулярно:

apt update && apt upgrade      # Debian, Ubuntu
dnf upgrade                    # AlmaLinux, Rocky, CentOS Stream

Автоматически, только исправления безопасности:

apt install unattended-upgrades && dpkg-reconfigure -plow unattended-upgrades
dnf install dnf-automatic && systemctl enable --now dnf-automatic.timer

Автоматизация не избавляет от необходимости проверять: некоторые исправления начинают действовать только после перезапуска службы или ядра.

systemctl list-units --failed
needrestart          # Debian, Ubuntu

Как следить за тем, что работает на VPS?

С помощью systemctl и journalctl — состояние служб и их журналы, df -h — место на диске, а вкладка Графики в личном кабинете даёт общую картину.

systemctl status nginx        # состояние службы
journalctl -u nginx -n 50     # её последние 50 строк журнала
journalctl -p err -b          # ошибки с момента загрузки
df -h                         # место на диске

Заполненный диск — самый частый и самый незаметный сбой: журналы перестают записываться, базы данных отказываются записывать данные, и ничто об этом не сообщает, пока кто-нибудь не посмотрит. Следите за df -h и удаляйте старые журналы командой journalctl --vacuum-time=14d.

Вкладка Графики в личном кабинете будет полезным дополнением: загрузка CPU, часами упирающаяся в потолок, необычный исходящий сетевой трафик или нехватка памяти видны на ней сразу.

Обеспечивает ли By-Hoster резервное копирование VPS?

Личный кабинет не предлагает услугу резервного копирования для VPS. Снапшоты, доступные на одноимённой вкладке, — это страховка на время рискованной операции, а не резервная копия: они хранятся в том же хранилище, что и машина. Предусмотрите копию действительно незаменимых данных за пределами VPS и время от времени проверяйте восстановление.

Помогла ли вам эта статья?