Я знаю, що тут є десятки запитань про те, як підключитися до SSH-сервера, не вводячи свій пароль кожен раз , і відповідь завжди "використовувати відкритий ключ". Ну, я опиняюся в тій рідкісній обставині, коли це насправді не є варіантом. З якоїсь незрозумілої причини налаштований демон OpenSSH на сервері, до якого я намагаюся підключитися
RSAAuthentication no
PubkeyAuthentication no
в /etc/ssh/sshd_config
. У мене немає жодного адміністративного доступу на сервері, тому я не можу змінити ці чи інші параметри налаштування сервера. (Я, звичайно, маю повний контроль над конфігурацією клієнта: OpenSSH 5.8 в Linux.)
Які мої варіанти, зокрема, який найбезпечніший варіант, щоб уникнути необхідності вводити свій пароль щоразу, коли я хочу ввести SSH на цей сервер? Я тримаю власні комп’ютери досить добре захищеними, тому припустимо, що ризики для безпеки зберігання пароля у файлі на клієнті прийнятно низькі, якщо це дійсно необхідно.
Інші методи аутентифікації, які сервер може прийняти - це, очевидно, GSS API (про який я нічого не знаю), інтерактивна клавіатура (про яку я теж нічого не знаю) та пароль. Ось кілька відповідних параметрів конфігурації:
#ChallengeResponseAuthentication yes
#KerberosAuthentication no
GSSAPIAuthentication yes
GSSAPICleanupCredentials yes
#UsePAM no
і ось слід налагодження ( -vv
):
debug1: Authentications that can continue: gssapi-with-mic,password,keyboard-interactive
debug1: Next authentication method: gssapi-with-mic
debug1: Unspecified GSS failure. Minor code may provide more information
Credentials cache file '/tmp/krb5cc_1000' not found
debug1: Unspecified GSS failure. Minor code may provide more information
Credentials cache file '/tmp/krb5cc_1000' not found
debug1: Unspecified GSS failure. Minor code may provide more information
debug1: Unspecified GSS failure. Minor code may provide more information
debug2: we did not send a packet, disable method
debug1: Next authentication method: keyboard-interactive
debug2: userauth_kbdint
debug2: we sent a keyboard-interactive packet, wait for reply
debug1: Authentications that can continue: gssapi-with-mic,password,keyboard-interactive
debug2: we did not send a packet, disable method
debug1: Next authentication method: password
/etc/krb5.keytab
, але це є /etc/krb5/krb5.keytab
. У мене немає доступу до вмісту. Ім'я сервера є sftp.pass.psu.edu
(я не думаю, що немає шкоди в наданні цього імені), якщо це допоможе вам пояснити процедуру.
/etc/krb5.keytab
? GSSAPI (Kerberos) може бути простим для налаштування на стороні клієнта; Мені доведеться запитати ім'я хоста сервера. (Також:keyboard-interactive
дуже схожий наpassword
, за винятком лише одного підказка "Пароль:".)