Когда я пытаюсь подключиться по ssh к моему удаленному серверу, иногда мой терминал запрашивает пароль пользователя, а иногда - пароль ssh. Это нормально? Как я могу сделать так, чтобы он всегда запрашивал пароль ssh?
Я использую Gitbash с Windows. Я использую файл конфигурации для указания хоста.
Мой конфигурационный файл настроен следующим образом:
Host remoteservername
Hostname serverbox.net
User samplename
IdentityFile ~/.ssh/id_rsa
IdentitiesOnly yes
и затем в ssh я делаю:
ssh remoteservername
Иногда я получаю обратно это:
samplename@remoteservername's password:
В другой раз я получаю то, что хочу, запрос на фразу-пароль:
Enter passphtase for key 'c/Users/name/.ssh/id_rsa'
Пароль для имени пользователя длинный и сложный, поэтому в идеале я хотел бы всегда просто использовать ключ ssh.
Текущая настройка работает, кроме случаев, когда она случайным образом запрашивает пароль пользователя вместо ключевой фразы.
UPDATE:
В соответствии с VonC я запустил ssh -Tvv и сравнил журналы успешного возврата с неправильным возвращением. Большинство бревен были идентичны до самого конца. Попытка, которая привела к запросу пароля пользователя, имела следующие строки:
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug2: we did not send a packet, disable method
debug1: Next authentication method: password
samplename@serverbox.net's password:
правильный ответ возвращает следующие строки:
debug1: Server accepts key: pkalg rsa-sha2-512 blen 279
debug2: input_userauth_pk_ok: fp SHA256:{KEY HERE}
Enter passphrase for key '/c/Users/name/.ssh/id_rsa':
Возможно, что-то не так с моим ssh? Или это может быть проблема конфигурации на сервере?