Способы оплаты Abuse

Что такое SSH ключи и почему они запрашиваются при подключении к ISPmanager

23.10.2025, 18:52

SSH-ключи (Secure Shell ключи) — это пара криптографических ключей, используемых для аутентификации при подключении к удалённым серверам по протоколу SSH. В контексте ISPmanager 6, панели управления для веб-хостинга, SSH-ключи позволяют безопасно подключаться к серверу без необходимости вводить пароль.

Основные аспекты использования SSH-ключей в ISPmanager 6

– Приватный ключ: хранится на вашем компьютере и не должен передаваться никому.

– Публичный ключ: размещается на сервере в файле ~/.ssh/authorized_keys для конкретного пользователя.

Использование SSH-ключей более безопасно, чем аутентификация по паролю, так как даже если кто-то перехватит соединение, ему не удастся получить доступ к вашему серверу без приватного ключа. После настройки SSH-ключей вам не нужно вводить пароль при каждом подключении к серверу, что упрощает процесс работы.

Как настроить SSH-ключи в ISPmanager 6

Создание ключей

Для этого используйте команду ssh-keygen в терминале для генерации пары ключей. Можно просто нажать Enter, чтобы использовать значения по умолчанию.

Добавление публичного ключа на сервер

  1. Зайдите в ISPmanager и перейдите в раздел управления пользователями.
  2. Найдите пользователя, для которого хотите добавить SSH-ключ, и откройте его настройки.
  3.  В разделе "SSH-ключи" добавьте содержимое вашего публичного ключа (находится в файле ~/.ssh/id_rsa.pub).

Подключение к серверу

Используйте SSH-клиент для подключения к вашему серверу с использованием приватного ключа.

Почему при подключении запрашивает пароль 

Симптоматика проблемы простая - во время попытки подключиться к серверу по SSH подключение прерывается запросом пароля.

Причин не так много. Чаще всего проблема кроется в:

  • конфигурации sshd;
  • неправильном формат ключа;
  • отсутствии прав на файл authorized_keys.

Дальше поговорим о том, как решить данную проблему. 

Возможные способы решения проблемы

Проверяем конфигурацию sshd

Проверьте настройки SSH на сервере в файле /etc/ssh/sshd_config. Убедитесь, что следующие строки не закомментированы и установлены в нужные значения:

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

После потребуется перезапустить службу sshd:

sudo systemctl restart sshd

Перезапуск службы sshd, в случае некорректной настройки, может вызвать потерю доступа к серверу. Перед перезапуском службы, нужно проверить альтернативный доступ к серверу. Это можно сделать с помощью интерфейса на стороне провайдера.

Проверяем формат sshd

В первую очередь проверьте, что ваш публичный ключ в файле по пути ~/.ssh/authorized_keys соответствует одному из форматов, о которых расскажем ниже.

SSH-RSA

Формат основан на алгоритме RSA (Rivest-Shamir-Adleman), который является асимметричным криптографическим методом.

Выглядит так:

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAr... ИМЯ_ПОЛЬЗОВАТЕЛЯ@АДРЕС_СЕРВЕРА

Безопасность RSA основывается на сложности факторизации больших чисел. Чем больше размер ключа (обычно 2048 или 4096 бит), тем сложнее его взломать.

SSH-DSS

SSH-DSS (Secure Shell Digital Signature Standard) — это один из алгоритмов, используемых для аутентификации в протоколе SSH

Их вид:

ssh-dss AAAAB3NzaC1yc...2EAAAABIwAAAQEAr ИМЯ_ПОЛЬЗОВАТЕЛЯ@АДРЕС_СЕРВЕРА

Если вам нужно создать ключи формата SSH-DSS, вы можете использовать утилиту ssh-keygen, которая входит в состав OpenSSH. 

Как проверить права authorized_keys

Вам нужно проверить, что файл по пути ~/.ssh/authorized_keys имеет права 600:

ls -lah ~/.ssh/authorized_keys 
-rw------- 1 root root 2.4K Nov 27 18:00 /root/.ssh/authorized_keys

Если права некорректные, измените их с помощью команды:

chmod 600 ~/.ssh/authorized_keys

Также проверьте права на директорию ~/.ssh/ - она должна иметь права 700:

ls -lah ~/.ssh
drwx------  2 root root 4.0K Nov 27 18:00

Если права некорректные, измените их командой:

chmod 700 ~/.ssh