Аутентификация RSA: невозможно получить пароль без пароля с SSH

15358
pureman

Я настроил свой компьютер для выполнения публичной / частной аутентификации на удаленном сервере, но сегодня он почему-то не работает.

Я выполнил команду ssh key-gen -t rsa и затем удалил ее на удаленный компьютер.

Я могу scp без пароля (используя ключ pub / priv), но всякий раз, когда я пытаюсь использовать SSH, он запрашивает пароль.

Что я могу сделать, чтобы аутентифицироваться только на ключе?

1
Требуется ли пропуск для ключа или вашего имени пользователя? (Должно быть указано: пропуск для ключа ххх) M'vy 12 лет назад 0
Где / Как бы я это проверил? pureman 12 лет назад 0
В приглашении только говорится: Пароль: или что-то вроде ввода пароля для ключа '/ home / xxx' M'vy 12 лет назад 0
О, он запрашивает «пароль пользователя @ удаленного», поэтому имя пользователя. pureman 12 лет назад 0
Что говорит `ssh -v ...`? Это в основном показывает вам, где проблема. Также покажите нам `ls -la ~ / .ssh`. slhck 12 лет назад 0
... debug1: аутентификации, которые могут продолжаться: publickey, пароль debug1: следующий метод аутентификации: publickey debug1: пробный закрытый ключ: ~ / .ssh / identity debug1: предложение открытого ключа: ~ / .ssh / id_rsa debug1: аутентификации, которые могут продолжаться : publickey, пароль debug1: пробует закрытый ключ: ~ / .ssh / id_dsa debug1: следующий метод аутентификации: пароль [запрашивает пароль] pureman 12 лет назад 0
и разрешения на .ssh все в порядке. pureman 12 лет назад 0
Для записи, термин и опция sshd «Аутентификация RSA» принадлежат устаревшему SSHv1. В SSHv2 используются «Аутентификация с открытым ключом» или «PubkeyAuthentication». grawity 12 лет назад 0

4 ответа на вопрос

4
M'vy

You should check if you have (sshd_config) :

RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile %h/.ssh/authorized_keys UsePAM yes <-- That one is usually the last line of the sshd_config 

Then that your public key is added to authorized_keys in your ~/.ssh/. The last one (UsePAM yes) is very important, since if disabled it will force you to authenticate with your unix account. PAM is here to say that private key authentication is sufficient to log in. Eventually, if that still don't resolves you may have to check the PAM configuration.

Я думаю, что работа scp показывает, что проблема на стороне клиента, а не на стороне сервера. Basilevs 12 лет назад 2
UsePAM - "да", и все в моем файле pam.conf закомментировано. Любая дополнительная помощь будет принята с благодарностью. pureman 12 лет назад 0
Вы указываете ключ вручную с помощью -i? или с директивой в .ssh / config? Есть ли у вас pam_sshd или pam_ssh в каталоге /etc/pam.d/? Что вы используете для ssh и scp client: командная строка? GUI? Linux / Windows? M'vy 12 лет назад 0
0
Bora

You need to add your public key on the server to the authorized keys:

ssh-keygen -i -f keyfilename.pub >> ~/.ssh/authorized_keys2 

or

cat keyfilename.pub >> ~/.ssh/authorized_keys2 
0
rakslice

If you can scp with the key but not ssh, it sounds like your scp client can find the key, but the ssh client can't.

Since you mentioned ssh-keygen -t rsa I'm going to assume that you're using OpenSSH on UNIX of some kind and you saved the key in the default location in some user account.

Are you logged in as user other than the one with the key (e.g. sued or sudoed) when you're running the ssh client? If you need to ssh without a password from that account also, you'll probably want to use ssh-keygen in that account, and then put that account's public ssh key in the remote server's authorized keys file along side the other one.

0
GongT

First, On remote server:

/usr/sbin/sshd -de -p 1234

Second, On your computer:

ssh -vp 1234

You may find the error.

Or you can post them here.

Похожие вопросы