August 13, 2026 · by Alex M.
Парольная аутентификация по SSH — одна из самых распространённых точек входа для злоумышленников. Боты непрерывно сканируют интернет в поисках открытого порта 22 и за секунды перебирают тысячи комбинаций логин/пароль (brute-force атаки). Надёжная и удобная альтернатива — аутентификация по SSH-ключам: криптографический механизм, который рекомендуют все системные администраторы.
В этом руководстве мы пройдём весь процесс — от генерации пары ключей до отключения парольной аутентификации — применительно к любому Linux-серверу, будь то VPS NVMe или выделенный сервер.
SSH поддерживает два основных метода аутентификации:
Закрытый ключ можно дополнительно защитить парольной фразой (passphrase), что добавляет второй фактор защиты.
Откройте терминал на своём компьютере (Linux, macOS или WSL в Windows) и выполните:
ssh-keygen -t ed25519 -C "[email protected]"
Почему ed25519? Это современный алгоритм — более короткие ключи при более высокой безопасности по сравнению с RSA-2048/4096. На очень старых серверах используйте
ssh-keygen -t rsa -b 4096.
Команда запросит:
1. Путь к файлу — нажмите Enter для пути по умолчанию (~/.ssh/id_ed25519).
2. Парольную фразу — рекомендуется установить; защищает закрытый ключ при несанкционированном доступе к компьютеру.
Результат — два файла:
- ~/.ssh/id_ed25519 — закрытый ключ (никому не передавайте!)
- ~/.ssh/id_ed25519.pub — открытый ключ (копируется на сервер)
ssh-copy-id (рекомендуется для Linux/macOS)ssh-copy-id -i ~/.ssh/id_ed25519.pub пользователь@IP_СЕРВЕРА
Команда подключится по текущему паролю, автоматически создаст ~/.ssh/authorized_keys и добавит ключ.
ssh-copy-id)# Выведите открытый ключ и скопируйте его
cat ~/.ssh/id_ed25519.pub
На сервере, под вашим пользователем:
mkdir -p ~/.ssh
chmod 700 ~/.ssh
nano ~/.ssh/authorized_keys
# Вставьте содержимое открытого ключа, сохраните
chmod 600 ~/.ssh/authorized_keys
До отключения парольной аутентификации откройте новый терминал и проверьте подключение:
ssh -i ~/.ssh/id_ed25519 пользователь@IP_СЕРВЕРА
Если вы подключились без пароля (или с парольной фразой ключа) — всё работает. Не закрывайте текущую сессию до подтверждения!
IP-адрес вашего VPS SSD в CLIQHOST доступен в панели управления клиента.
Это ключевой шаг. Отредактируйте конфигурационный файл SSH:
sudo nano /etc/ssh/sshd_config
Найдите и измените (или добавьте) следующие директивы:
PasswordAuthentication no
PubkeyAuthentication yes
PermitEmptyPasswords no
ChallengeResponseAuthentication no
В Ubuntu 22.04+ проверьте также файлы в /etc/ssh/sshd_config.d/ — они могут переопределять основные настройки:
grep -r 'PasswordAuthentication' /etc/ssh/sshd_config.d/
После изменений перезапустите службу SSH:
sudo systemctl restart sshd
Пока вы работаете с файлом, примените следующие рекомендации:
# Запрет прямого входа под root
PermitRootLogin no
# Ограничение пользователей, которым разрешён SSH-доступ
AllowUsers ваш_пользователь
# Смена стандартного порта (опционально, снижает шум в логах)
Port 2222
# Тайм-аут при бездействии
ClientAliveInterval 300
ClientAliveCountMax 2
Важно при смене порта: сначала обновите правила файрвола, иначе заблокируете себя!
# UFW
sudo ufw allow 2222/tcp
# iptables
sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT
Для комплексного управления файрволом и безопасностью сервера воспользуйтесь нашим сервисом администрирования серверов.
~/.ssh/config на локальном компьютереЕсли вы администрируете несколько серверов, создайте конфигурационный файл для упрощения подключения:
# ~/.ssh/config
Host vps-prod
HostName 185.x.x.x
User adminuser
Port 2222
IdentityFile ~/.ssh/id_ed25519
Host vps-dev
HostName 185.x.x.y
User devuser
Port 22
IdentityFile ~/.ssh/id_ed25519_dev
Теперь достаточно выполнить:
ssh vps-prod
Регулярно (раз в год или при смене команды) генерируйте новый ключ, добавляйте его в authorized_keys и удаляйте старый. Не оставляйте неиспользуемые ключи на сервере.
На управляемом выделенном сервере, где работает команда, у каждого администратора должна быть своя пара ключей. Ключи добавляются в authorized_keys по одному на строку:
# authorized_keys — каждая строка = один открытый ключ
ssh-ed25519 AAAA...ключ_admin1... [email protected]
ssh-ed25519 AAAA...ключ_admin2... [email protected]
Когда администратор покидает команду, просто удалите соответствующую строку — сбрасывать ключи всего сервера не нужно.
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
authorized_keys одной строкой без переносов.ssh -vvv пользователь@серверrestorecon -Rv ~/.ssh
Если вы отключили пароль, а ключ не работает, воспользуйтесь VNC-консолью VPS в панели управления CLIQHOST или обратитесь в службу поддержки — доступ можно восстановить на уровне гипервизора.
Если на ключе установлена парольная фраза (правильное решение!), не нужно вводить её при каждом подключении — SSH Agent хранит её в памяти на время сессии:
# Запуск агента
eval "$(ssh-agent -s)"
# Добавление ключа (парольная фраза вводится один раз)
ssh-add ~/.ssh/id_ed25519
На macOS ключ можно сохранить в Keychain: ssh-add --apple-use-keychain ~/.ssh/id_ed25519
ed25519~/.ssh/authorized_keys на сервереPasswordAuthentication no установлено в sshd_configPermitRootLogin no включеноАутентификация по SSH-ключам — одна из наиболее эффективных мер безопасности, которую можно применить на Linux-сервере. Настройка занимает 10–15 минут и практически исключает риск брутфорс-атак на SSH.
Если ваш проект работает на высокопроизводительном VPS NVMe или на выделенном сервере, защита SSH-доступа — первый шаг к комплексной стратегии безопасности.
Не уверены, как правильно настроить сервер? Команда CLIQHOST предоставляет полный спектр услуг по администрированию Linux-серверов — от первоначального hardening до непрерывного мониторинга. Свяжитесь с нами — настроим ваш сервер по лучшим стандартам безопасности.
Реальные отзывы клиентов, которые доверяют CLIQHOST за производительность, надёжность и профессиональную техническую поддержку.
"Перенесли интернет-магазин с зарубежного хостинга — разница огромная: страницы открываются мгновенно, а поддержка отвечает за минуты, на румынском."
"Перенесли 12 клиентских сайтов на CLIQHOST. Бесплатная миграция, нулевой даунтайм, а настройка cPanel — именно то, что нужно нашей команде. Очень рекомендую."
"Наш VPS NVMe спокойно держит пики трафика. Полный root, локальный дата-центр и оплата в MDL — всё, что мы хотели от провайдера."