http://www.pentarh.com/wp/2008/07/21/ssh-public-key-authentication/
Настройка SSHD сервера для авторизации по публичному ключу.
Обычно стандартный конфиг современных демонов OpenSSH не нуждается в модификации. Но на всякий случай нужно проверить, включена ли RSA авторизация:
/etc/ssh/sshd_config:
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
Теперь нам нужно сообщить серверу, что наш ключ можно принимать для авторизации. Для этого в хомяке нужного пользователя нужно создать (если нет) каталог «.ssh«. и в нем создать пустой файл «authorized_keys«.
Все что осталось — добавить наш публичный ключ в файл «~/.ssh/authorized_keys«.
Если у вас ключ, сгенерированный unix-утилиткой «ssh-keygen«, то над содержимое вашего публичного ключа «~/.ssh/id_rsa.pub« (на машине-клиенте) добавить к содержимому «~/.ssh/authorized_keys» (на машине-сервере, ~ означает хомяк пользователя, под которым будете логиниться).
Если у вас ключ, сгенерированный PuttyGen, то его нужно еще преобразовать. На машине-сервере выполняем:
# cd /root
Если нет директории .ssh:
# mkdir .ssh
# chmod .ssh 700
качаем публичный ключ из веба:
# wget
http://coolsite.com/id_rsa.pub
конвертируем ключ в формат openssh:
# ssh-keygen -i -f id_rsa.pub >> .ssh/authorized_keys
Не забываем поставить на .ssh и .ssh/authorized_keys корректного овнера. Права — 700, 600 соответственно.
Все, можно коннектиться.