Как защитить VPS от взлома: чек-лист из 12 пунктов
Свежий сервер в интернете начинают сканировать боты уже через минуты после запуска. Этот чек-лист закрывает 90% типовых векторов атаки простыми и проверенными шагами.
Содержание
Обсудить статью, задать вопрос или начать новую тему
Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.
Перейти в сообщество →Почему пустой сервер уязвим
Как только VPS получает белый IP, его сразу находят автоматические сканеры. Они перебирают SSH-пароли, ищут открытые порты баз данных, старые версии CMS и незакрытые панели управления. Чем дольше сервер стоит «как из коробки», тем выше шанс, что перебор рано или поздно сработает. Речь не о целенаправленной атаке хакера — это фоновый шум ботнетов, которому подвергается любой публичный адрес круглосуточно.
Хорошая новость: базовая защита занимает 20–30 минут и делается один раз. Ниже — 12 пунктов, которые стоит пройти сразу после создания сервера, ещё до того, как вы развернёте на нём сайт или приложение. Порядок важен: сначала закрываем доступ, потом наводим порядок в сервисах. На VPS MAATRIX у вас полный root-доступ, поэтому все команды выполняются без ограничений и обходных путей.
Держите под рукой доступ к консоли через панель управления — это спасательный круг, если вы случайно отрежете себе SSH при настройке фаервола или входа. Любой из 12 шагов можно откатить, если действовать по инструкции и не закрывать текущую сессию до проверки.
Нужен сервер под эту задачу?
Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.
Арендовать защищённый VPSПункты 1–4: доступ и учётные записи
- 1. Обновите систему. Первым делом закройте известные уязвимости пакетов — многие взломы используют дыры, для которых патч вышел месяцы назад.
- 2. Заведите отдельного пользователя с sudo вместо постоянной работы под root. Так вы разделяете полномочия и снижаете цену ошибки.
- 3. Настройте вход по SSH-ключу и позже отключите пароль.
- 4. Смените порт SSH — это не защита сама по себе, но убирает основную массу шумовых сканов и разгружает логи.
apt update && apt upgrade -y
adduser maat
usermod -aG sudo maat
rsync --archive --chown=maat:maat ~/.ssh /home/maat
После создания пользователя проверьте, что вы можете зайти под ним и выполнить sudo-команду. Только убедившись в этом, переходите к ужесточению доступа. Работа под отдельной учёткой — не формальность: если скомпрометируют приложение, атакующий не сразу получит полные права системы.
Пункты 5–8: сеть и вход
- 5. Включите фаервол (ufw или nftables) и откройте только реально нужные порты.
- 6. Поставьте fail2ban — он банит IP после серии неудачных попыток входа, автоматически отсекая перебор.
- 7. Отключите root-логин по SSH, чтобы боты не могли даже пытаться зайти под самой ценной учёткой.
- 8. Ограничьте sudo паролем и логируйте выполненные команды.
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp
ufw enable
apt install fail2ban -y
systemctl enable --now fail2ban
fail2ban из коробки защищает SSH: после 5 неудачных попыток IP блокируется на время. Проверить работу можно командой fail2ban-client status sshd — она покажет число забаненных адресов. При желании добавьте джейлы для nginx, почты и других сервисов, отредактировав /etc/fail2ban/jail.local.
Пункты 9–12: обслуживание и контроль
- 9. Включите автообновления безопасности через unattended-upgrades, чтобы критичные патчи ставились без вашего участия.
- 10. Настройте бэкапы. На MAATRIX ежедневные бэкапы уже включены в тариф — это ваша страховка от шифровальщиков и собственных ошибок.
- 11. Мониторьте логи входов и потребления ресурсов.
- 12. Уберите лишние сервисы — чем меньше слушающих портов, тем меньше поверхность атаки.
apt install unattended-upgrades -y
dpkg-reconfigure --priority=low unattended-upgrades
ss -tulpn
Команда ss -tulpn покажет все открытые порты и процессы за ними. Всё, что вы не узнаёте, — кандидат на отключение или закрытие фаерволом. Особое внимание уделите базам данных: MySQL (3306), PostgreSQL (5432), MongoDB (27017), Redis (6379) не должны слушать внешний интерфейс без явной необходимости.
Для контроля входов полезно регулярно просматривать журнал: lastb покажет неудачные попытки, а last — успешные сессии. Всплеск незнакомых IP в успешных входах — повод немедленно менять ключи и разбираться.
Частые ошибки
- Оставить SSH по паролю «на всякий случай» — именно его и ломают в первую очередь.
- Открыть порт базы данных наружу (3306, 5432, 27017) без фаервола и с дефолтным паролем.
- Работать постоянно под root и хранить там ключи и секреты.
- Не проверять, что бэкап реально восстанавливается — «есть бэкап» и «бэкап рабочий» это разные вещи.
- Отключить пароль SSH, не проверив вход по ключу, и потерять доступ к серверу.
Быстрый и предсказуемый диск помогает и в безопасности: на AMD EPYC + NVMe у MAATRIX обновления пакетов и восстановление из бэкапа проходят в разы быстрее, чем на старых SATA-нодах, а значит вы дольше не откладываете важные операции «на потом».
Пройдите этот чек-лист один раз на новом сервере — и вы отсечёте подавляющее большинство автоматических атак. Дальше стоит углубиться в отдельные темы: ключи, фаервол, системы обнаружения вторжений и 2FA, о которых есть отдельные разборы.
Нужен сервер под эту задачу?
Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.
Арендовать защищённый VPSОбсудить статью, задать вопрос или начать новую тему
Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.
Перейти в сообщество →Частые вопросы
Смена порта SSH действительно защищает?
Сама по себе — нет, порт можно найти сканером. Но она убирает 95% шумового брутфорса и разгружает логи. Основная защита — ключи и fail2ban.
Нужен ли фаервол, если открыт только 22 порт?
Да. Фаервол защищает от случайно поднятых сервисов и служб, которые начинают слушать наружу без вашего ведома при установке пакетов. Это дешёвая страховка.
Что делать, если сервер уже взломали?
Проще всего развернуть чистый VPS из бэкапа и перенести данные, а не «лечить» скомпрометированную систему. Ежедневные бэкапы MAATRIX делают это быстрым и предсказуемым.