VPS — это полная свобода и полная ответственность. Не настроите безопасность сами — никто этого за вас не сделает. В статье — 8 правил защиты VPS, которые закрывают 95% типовых атак: от SSH-брутфорса до автоматических ботов, сканирующих интернет в поисках открытых портов. Базовую защиту удобно настроить на Beget.
1. Отключите root-вход по SSH
По умолчанию на новом VPS пароль root известен — он пришёл вам на email. Боты в интернете сканируют порт 22 и пытаются подобрать root-пароль. На любом публичном IP это начнётся через минуты после создания VPS.
Что делать:
- Создать обычного пользователя:
adduser admin - Дать ему sudo-права:
usermod -aG sudo admin - В
/etc/ssh/sshd_configпоставитьPermitRootLogin no - Перезагрузить SSH:
systemctl restart sshd - Вход только под пользователем +
sudo— большая часть автоматических атак отсеется.
2. Используйте SSH-ключи вместо паролей
Сгенерируйте ключ ssh-keygen -t ed25519, скопируйте через ssh-copy-id user@server, отключите PasswordAuthentication в /etc/ssh/sshd_config — вход только по ключу ed25519.
3. Поменяйте порт SSH с 22 на нестандартный
- Перенесите SSH на порт 2222 в
/etc/ssh/sshd_config, подключайтесь:ssh -p 2222 user@server. - Большинство ботов ищут только порт 22 — атак станет заметно меньше.
- ⚠️ Сначала откройте новый порт в брандмауэре, иначе запрёте себе доступ.
4. Настройте брандмауэр (UFW)
ufw default deny incoming ufw default allow outgoing ufw allow 2222/tcp # SSH на нестандартном порту ufw allow 80/tcp # HTTP ufw allow 443/tcp # HTTPS ufw enable

На CentOS/AlmaLinux вместо UFW обычно используют firewalld с похожей логикой.
5. Установите fail2ban
Установите fail2ban (apt install fail2ban), в /etc/fail2ban/jail.local включите sshd с maxretry = 3 — IP блокируется на час после трёх неудачных попыток.
6. Регулярно обновляйте систему
- Обновления ОС — обычно раз в 1–2 недели:
- Раз в неделю-две:
apt update && apt upgrade(Debian/Ubuntu) - Или:
yum update(CentOS/AlmaLinux) - Можно настроить автоматические security-обновления:
apt install unattended-upgrades - Особенно важны обновления nginx, PHP, MySQL — публично доступные сервисы.
7. Настройте автоматические бэкапы
Самая частая катастрофа — не взлом, а собственная ошибка в конфиге. rm -rf в неправильной папке убивает сайт за секунды.
Что должно быть:
- Автобэкапы провайдера (у Beget — бесплатно, ежедневные, на 30 дней)
- Внешние бэкапы — в облако (Yandex Cloud, Selectel S3, или Dropbox через rclone). Не держите единственную копию на том же сервере.
- Тестовое восстановление — раз в месяц проверяйте, что бэкап действительно открывается. Иначе можно обнаружить «битый» бэкап в момент катастрофы.
8. Мониторинг и алерты
Безопасность — это не только настройка, но и наблюдение. Если сервер взломали — лучше узнать об этом за час, чем за неделю.
Минимальный набор:
- Логи доступа —
/var/log/auth.log(SSH-попытки),/var/log/nginx/access.log(запросы к сайту) - Алерты на email при нагрузке выше нормы (через cronjob с проверкой top или netstat)
- Внешний мониторинг доступности — UptimeRobot бесплатно проверяет, открывается ли сайт извне
- Wordfence или Sucuri — для WP-сайтов, ловят попытки взлома и подозрительные изменения файлов
Публичная статистика взломов — в 2024 Annual WordPress Security Report от Wordfence и Sucuri Hacked Website Report. По их данным, около 90% компрометаций идут через устаревший софт и слабые пароли.
Дополнительно для продакшена
- Для продакшена с ПДн и платежами:
- SSL-сертификат — обязательно. Let’s Encrypt бесплатный.
- Cloudflare WAF или хостинговый WAF — фильтрует атаки на уровне HTTP.
- Двухфакторная авторизация в панели хостинга и в админке сайта.
- Регулярные penetration-тесты — сами или через агентство.
- Логирование действий администраторов — кто и когда что менял.
Что делать дальше
- Pillar VPS-кластера: «VPS — что это: простыми словами».
- Если ваш сайт на WordPress: «Защита WordPress от взлома: 8 шагов».
- Если уже взломали или подозрения: «Сайт в спам-списке».
- Регулярные бэкапы: «Бэкап сайта на WordPress».
Часто задаваемые вопросы
Можно ли оставить SSH на стандартном порту 22?
Можно, но это значит, что 100% автоматических сканеров будут пытаться вас взломать. Перенос на нестандартный порт отсекает большинство.
Как создать SSH-ключи на Windows?
Через PuTTYgen или OpenSSH (включён в Windows 10+ из коробки): в PowerShell `ssh-keygen -t ed25519`.
UFW работает на CentOS?
На CentOS/AlmaLinux обычно используют firewalld с похожей логикой.
Сколько хранить бэкапы?
Минимум 7 дней. Хорошо — 30 дней. У Beget — 30 дней бесплатно во всех VPS-тарифах.
Нужен ли fail2ban, если SSH на нестандартном порту?
Да. Fail2ban защищает не только SSH, но и веб-сервисы (apache/nginx), почту, FTP.
Как часто обновлять систему?
Минимум раз в неделю-две. Можно настроить unattended-upgrades для автоматических security-обновлений.
Что делать, если сервер уже взломан?
Восстановить из бэкапа на чистом VPS, проанализировать логи доступа, поменять все пароли и ключи.
Какие порты должны быть открыты?
Только нужные: SSH (нестандартный), 80 и 443 (HTTP/HTTPS). Остальные — закрыть через UFW.
Cloudflare защищает VPS от DDoS?
Да, на уровне HTTP/HTTPS. Прямые атаки на IP сервера — нет, нужен hardware DDoS-protection от провайдера.
Нужен ли антивирус на Linux VPS?
Не критично для типового сайта. ClamAV полезен, если на сервере есть формы загрузки файлов от пользователей.









