SSH вход с помощью ключа

2016-02-22 15:28:32 Блог

Кратка инструкция для авторизации по ключу. Так же решение проблемы когда всё сделано правильно, но ssh сервер всё равно просит пароль. Я использую ubuntu/debian.

Генерируем у себя ключ:

ssh-keygen -t rsa

Скопируем ключ на сервер:

ssh-copy-id -i ~/.ssh/id_rsa.pub имя_пользователя@IP_адрес_сервера

Если на сервере используется не стандартный порт (22):

ssh-copy-id -i ~/.ssh/id_rsa.pub "-p ПОРТ имя_пользователя@IP_адрес_сервера"

Настроив на одной машине подобным образом столкнулся с проблемой. Прокидываю ключ, пробую авторизоваться, всё равно просит пароль.

По этому важно проверить права на папки и файл. Заходим на сервер, переходим в домашнюю директорию пользователя:

cd ~/.ssh

Проверяем права:

  • У файла authorized_keys права должны быть 600
  • У папки ~/.ssh права должны быть 700
  • У папки cd ~ т.е. самой домашней папки пользователя должны быть 700

После этого у меня авторизация заработала.

Дополнительно

Для дебага можно использовать:

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

Перезагрузить ssh сервер можно командой:

service ssh restart