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

Шаг 1. Генерация открытого и закрытого ключей на клиентской стороне

Сначала создадим ключи на рабочей машине (клиенте):

ssh-keygen

Оставьте предложенные стандартные значения и пустым поле passphrase (без парольной фразы).

Шаг 2. Копирование открытого ключа на сервер

Теперь отправим созданный открытый ключ на сервер:

cat ~/.ssh/id_rsa.pub | ssh user@server "cat >> .ssh/authorized_keys"

Здесь user@server замените на реальный логин и IP-адрес сервера.

Шаг 3. Настройка разрешений на сервере

Важно удостовериться, что права доступа установлены верно:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

Шаг 4. Проверка настроек SSH-демона

На сервере откройте файл конфигурации SSH демона:

sudo mcedit /etc/ssh/sshd_config

Убедитесь, что параметр PubkeyAuthentication включен:

PubkeyAuthentication yes

Перезапустите демон SSH:

sudo systemctl restart sshd

Шаг 5. Проверка подключения

Попробуйте подключиться к серверу без ввода пароля:

ssh user@server

Если вход выполнен успешно, значит, настройка выполнена корректно.

Заключение

Безпарольное подключение значительно ускоряет рабочий процесс и снижает риск ошибок при повторном вводе пароля. Тем не менее будьте внимательны и защитите закрытые ключи надёжными мерами.