Tôi biết có hàng tá câu hỏi ở đây về cách kết nối với máy chủ SSH mà không cần nhập mật khẩu của bạn mỗi lần và câu trả lời luôn là "sử dụng khóa chung". Chà, tôi thấy mình trong hoàn cảnh hiếm hoi nơi đó thực sự không phải là một lựa chọn. Vì một số lý do không thể giải thích được, daemon OpenSSH trên máy chủ mà tôi đang cố gắng kết nối được cấu hình với
RSAAuthentication no
PubkeyAuthentication no
trong /etc/ssh/sshd_config
. Tôi không có quyền truy cập quản trị trên máy chủ vì vậy tôi không thể thay đổi các tùy chọn này hoặc bất kỳ tùy chọn cấu hình máy chủ nào khác. (Tất nhiên, tôi có toàn quyền kiểm soát cấu hình máy khách: OpenSSH 5.8 trên Linux.)
Tùy chọn của tôi là gì và đặc biệt, tùy chọn an toàn nhất là gì để tránh phải nhập mật khẩu mỗi khi tôi muốn SSH vào máy chủ này? Tôi giữ các máy tính của riêng mình được bảo mật khá tốt, vì vậy, giả sử rủi ro bảo mật của việc lưu trữ mật khẩu trong một tệp trên máy khách là thấp, nếu điều đó thực sự cần thiết.
Các phương thức xác thực khác mà máy chủ có thể chấp nhận là API GSS (mà tôi không biết gì về nó), tương tác bàn phím (mà tôi cũng không biết gì về) và mật khẩu. Dưới đây là một số tùy chọn cấu hình có liên quan:
#ChallengeResponseAuthentication yes
#KerberosAuthentication no
GSSAPIAuthentication yes
GSSAPICleanupCredentials yes
#UsePAM no
và đây là -vv
dấu vết gỡ lỗi ( ):
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
, nhưng nó có /etc/krb5/krb5.keytab
. Tôi không có quyền truy cập vào nội dung. Tên máy chủ là sftp.pass.psu.edu
(tôi không nghĩ có bất kỳ tác hại nào trong việc đưa ra tên đó) nếu nó giúp bạn giải thích quy trình.
/etc/krb5.keytab
? GSSAPI (Kerberos) có thể đơn giản để thiết lập phía máy khách; Tuy nhiên, tôi phải hỏi tên máy chủ của máy chủ. (Ngoài ra:keyboard-interactive
rất giống vớipassword
, ngoại trừ không giới hạn ở một dấu nhắc "Mật khẩu:".)