Гипервизор Proxmox является одной из самых популярных платформ для виртуализации, которая позволяет эффективно управлять виртуальными машинами (VM) и контейнерами с использованием технологий KVM и LXC.
Одним из ключевых элементов для обеспечения безопасного удалённого доступа к гипервизору Proxmox является SSH-сервер, так как доступ через SSH является основным методом подключения администраторов к серверам в большинстве случаев.
Однако открытые порты и уязвимости могут стать мишенью для злоумышленников. В этой статье мы рассмотрим основные методы защиты SSH-сервера на гипервизоре Proxmox.
1. Базовая настройка SSH
Изменение стандартного порта SSH
По умолчанию SSH-сервер работает на порту 22, что делает его уязвимым для атак типа brute-force. Один из простых способов повысить безопасность — это сменить стандартный порт на менее очевидный.
Для этого откройте конфигурационный файл SSH:
sudo nano /etc/ssh/sshd_config
Найдите строку:
#Port 22
Распишем порт, например, 2222:
Port 2222
Сохраните изменения и перезапустите SSH-сервис:
sudo systemctl restart sshd
Не забудьте обновить правила фаервола, чтобы разрешить новый порт.
Отключение входа по паролю
Один из самых эффективных способов защиты — это отключение входа с использованием пароля и разрешение доступа только через ключи SSH. Это предотвращает атаки с подбором пароля.
В конфигурационном файле /etc/ssh/sshd_config
измените или добавьте следующие строки:
PasswordAuthentication no
ChallengeResponseAuthentication no
После этого перезапустите сервис SSH:
sudo systemctl restart sshd
2. Использование ключей SSH для аутентификации
SSH-ключи обеспечивают более высокий уровень безопасности, чем пароли, и позволяют избежать использования слабых или предсказуемых паролей.
-
Генерация ключей на клиенте На клиентской машине создайте пару ключей:
ssh-keygen -t rsa -b 4096
-
Добавление публичного ключа на сервер После того как ключи будут сгенерированы, публичный ключ необходимо добавить на сервер. Для этого скопируйте его в файл
~/.ssh/authorized_keys
на сервере.На сервере выполните команду:
ssh-copy-id -i ~/.ssh/id_rsa.pub username@your_server_ip -p 2222
-
Отключение паролей Как уже упоминалось, следует отключить использование пароля для входа в SSH. Это также можно сделать в конфигурации SSH:
PasswordAuthentication no
3. Ограничение доступа по IP-адресам
Чтобы минимизировать потенциальные угрозы, можно настроить доступ к SSH только с определённых доверенных IP-адресов.
Для этого используйте файрвол (например, ufw
или iptables
). Допустим, вам нужно разрешить доступ к SSH только с IP-адреса 192.168.1.100. Для ufw
это будет выглядеть так:
sudo ufw allow from 192.168.1.100 to any port 2222
Для iptables
:
sudo iptables -A INPUT -p tcp -s 192.168.1.100 --dport 2222 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 2222 -j DROP
4. Использование двухфакторной аутентификации (2FA)
Двухфакторная аутентификация добавляет дополнительный уровень безопасности, требуя ввода кода, полученного на мобильное устройство или специальное приложение, помимо стандартного SSH-ключа.
Для этого можно использовать утилиту Google Authenticator. Установите её на сервер:
sudo apt install libpam-google-authenticator
Затем настройте её, запустив команду:
google-authenticator
Следуйте инструкциям для создания секретного ключа и QR-кода, который можно будет сканировать в мобильном приложении для генерации одноразовых паролей.
После настройки обновите файл /etc/pam.d/sshd
, добавив строку:
auth required pam_google_authenticator.so
Также в файле /etc/ssh/sshd_config
включите поддержку 2FA:
ChallengeResponseAuthentication yes
Перезапустите сервис SSH:
sudo systemctl restart sshd
5. Защита от атак на основе перебора паролей (brute-force)
Установка Fail2Ban
Fail2Ban — это инструмент для защиты от атак, которые пытаются перебрать пароли на сервере. Он мониторит логи и блокирует IP-адреса, которые пытаются выполнить слишком много неудачных попыток авторизации.
Установите Fail2Ban:
sudo apt install fail2ban
После установки, в файле /etc/fail2ban/jail.local
можно настроить защиту для SSH:
[sshd]
enabled = true
port = 2222
maxretry = 3
bantime = 600
После внесения изменений перезапустите Fail2Ban:
sudo systemctl restart fail2ban
6. Дополнительные рекомендации
- Обновления и патчи: Регулярно обновляйте систему и пакеты, чтобы закрывать известные уязвимости.
- Мониторинг: Используйте инструменты для мониторинга активности SSH-сессий, такие как
auditd
илиsyslog
, для обнаружения подозрительных действий. - Виртуальные машины и контейнеры: Для дополнительной изоляции приложений, используйте LXC-контейнеры или виртуальные машины, чтобы разделить критичные приложения и снизить риски.
Заключение
SSH является мощным инструментом для удалённого доступа, однако он также является популярной мишенью для атак. Важно принимать все необходимые меры для его защиты, чтобы избежать потенциальных угроз. Изменение порта, использование SSH-ключей, двухфакторная аутентификация, ограничение доступа и использование Fail2Ban помогут значительно повысить безопасность SSH-сервера на гипервизоре Proxmox и минимизировать риски несанкционированного доступа.
Реклама Google |
|
Внимание! Данная статья не является официальной документацией.Использование информации необходимо выполнять с осторожностью, используя для этого тестовую среду.
Если у вас есть вопросы о построении современных систем резервного копирования, репликации, синхронизации данных и защиты от программ вымогателей обратитесь в нашу компанию для получения консультации о современных технологиях резервного копирования и восстановления данных. Наша компания имеет более чем 20-летний опыт в этой области. |
Десять лучших практик резервного копирования в Казахстане
- Защита гипервизора oVirt — глубокое погружение
- Перенос виртуальной машины из oVirt в Proxmox
- Как перенести виртуальную машину из Proxmox в oVirt
- Защита контейнеров Kubernetes — глубокое погружение
- Как защитить гипервизор Proxmox от взлома - Глубокое погружение
- Использование Fail2Ban для защиты oVirt - Глубокое погружение
- Организация резервного копирования гипервизора oVirt — Глубокое погружение
- Перенос виртуальной машины между гипервизорами Proxmox
- Конфигурация гипервизора Proxmox для оптимальной работы виртуальных машин
- Защита root после взлома SSH на Proxmox - глубокое погружение