Ssh

即使在我嘗試了一切(我知道的)之後,SSH 仍然要求輸入密碼

  • March 17, 2021

ssh 仍然要求輸入密碼,即使我按照書本做了所有事情。我從一開始就包含了所有輸出。有任何想法嗎?

謝謝!

加里

  1. 生成公鑰/私鑰 rsa 密鑰對並檢查本地主機上的權限

編輯:=> 事實證明,這就是問題所在。正如«Mat»在第一條評論中指出的那樣,密鑰對需要在遠端機器上生成,而不是在本地機器上生成。如果您需要知道我們是如何到達那裡的,請閱讀解決方案中的許多評論。

on local computer:
mms: admin$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/admin/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /Users/admin/.ssh/id_rsa.
Your public key has been saved in /Users/admin/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:ekIFdhbYVGnWsRcpyhPXRPDF5LTqYI+u6l3URsIjC90 admin@mms.fritz.box
The key's randomart image is:
+---[RSA 2048]----+
|      o+=o.oo*+++|
|     ..+o B +oo=o|
|       ..* E.oo..|
|       .. * =..  |
|      . S. = +   |
|     . .  o *    |
|      o .  o o   |
|       o. o      |
|      .o.o..     |
+----[SHA256]-----+

mms: admin$ pwd && ls -al
/Users/admin/.ssh
total 16
drwx------   4 admin  staff   136 Dec 26 09:37 .
drwxr-xr-x+ 32 admin  staff  1088 Dec 26 08:53 ..
-rw-------   1 admin  staff  1675 Dec 26 09:37 id_rsa
-rw-r--r--   1 admin  staff   401 Dec 26 09:37 id_rsa.pub
  1. 複製公鑰:(來自遠端主機,因為遠端主機無法遠端訪問)

server:.ssh ahase$ scp admin@domain-of-local-computer.com:.ssh/id_rsa.pub ~/.ssh/authorized_keys 主機 ‘domain-of-local-computer.com (123.456.789.012) 的真實性’不能成立。RSA 密鑰指紋為 1f:14:32:84:c4:f8:4e:25:df:2d:56:49:e6:e5:79:1d。您確定要繼續連接(是/否)?是 警告:將 ‘domain-of-local-computer.com,123.456.789.012’ (RSA) 永久添加到已知主機列表中。密碼:id_rsa.pub 100% 401 0.4KB/s 00:00 3. 複製私鑰並檢查權限:

   編輯(根據建議)

server:.ssh ahase$ scp admin@domain-of-local-computer.com:.ssh/id_rsa ~/.ssh/id_rsa
Password:
id_rsa
100% 1675     1.6KB/s   00:00    
server:.ssh ahase$ ls -al
server:.ssh ahase$ scp admin@domain-of-local-computer.com:.ssh/id_rsa ~/.ssh/id_rsa
Password:
id_rsa                                                                                                        100% 1675     1.6KB/s   00:00    
server:.ssh ahase$ ls -al
total 24
drwx------   5 ahase  staff   170 26 Dez 12:07 .
drwxr-xr-x+ 18 ahase  staff   612 10 Dez 09:19 ..
-rw-------   1 ahase  staff   401 26 Dez 09:58 authorized_keys
-rw-------   1 ahase  staff  1675 26 Dez 12:07 id_rsa
-rw-r--r--   1 ahase  staff   410 26 Dez 09:58 known_hosts
  1. ssh 仍然要求輸入密碼(-vvv 輸出)

$$ edit after suggested changes $$ 伺服器:.ssh ahase$ ssh -vvv admin@domain-of-local-computer.com OpenSSH_5.2p1,OpenSSL 0.9.8k 2009 年 3 月 25 日 debug1:讀取配置數據 /etc/ssh_config debug2:ssh_connect:needpriv 0 debug1:連接到本地電腦域.com

$$ 123.456.789.012 $$埠 22。 debug1:已建立連接。debug1:身份文件 /Users/ahase/.ssh/identity type -1 debug3:不是 RSA1 密鑰文件 /Users/ahase/.ssh/id_rsa。debug2:key_type_from_name:未知鍵類型’—–BEGIN’ debug3:key_read:缺少keytype debug3:key_read:缺少空格debug3:key_read:缺少空格debug3:key_read:缺少空格debug3:key_read:缺少空格debug3:key_read:缺少空白調試3:key_read:缺少空格調試3:key_read:缺少空格調試3:key_read:缺少空格調試3:key_read:缺少空格調試3:key_read:缺少空格調試3:key_read:缺少空格調試3:key_read:缺少空格調試3:key_read:缺少空格調試3 :key_read:缺少空格debug3:key_read:缺少空格debug3:key_read:缺少空格debug3:8192)發送Debug1:預期SSH2_MSG_KEX_DH_GEX_GROUP DEBUG2:DH_GEN_KEY:PRUD鍵位設置:158/320 DEBUG2:BITS SET:1048/2048 DEBUG1:SSH2_MSG_KEX_DH_GEX_INIT發送DEBUG1:期待SSH2_MSG_KEX_DH_GEX_REPLED DEBUG3:CHECK_HOST_IN_HOSTFILE:FILENAME /USERS/ahase/.ssh/known_hosts debug3 : check_host_in_hostfile: 匹配第 1 行 debug3: check_host_in_hostfile: 文件名 /Users/ahase/.ssh/known_hosts debug3: check_host_in_hostfile: 匹配第 1 行 debug1: 主機 ‘domain-of-local-computer.com’ 是已知的並且匹配 RSA 主機密鑰。debug1:在 /Users/ahase/.ssh/known_hosts 中找到密鑰:1 debug2:位設置:1023/2048 debug1:ssh_rsa_verify:簽名正確 debug2:kex_derive_keys debug2:set_newkeys:模式 1 debug1:SSH2_MSG_NEWKEYS 已發送 debug1:期待 SSH2_MSG_NEWKEYS debug2:set_newkeys :模式0調試1:SSH2_MSG_NEWKEYS收到調試1: 密碼:

debug3: packet_send2: 添加 32 (len 21 padlen 11 extra_pad 64) debug2: input_userauth_info_req debug2: input_userauth_info_req: num_prompts 0 debug3: packet_send2: 添加48 (len 10 padlen 6 extra_pad 64) debug1: 認證成功(鍵盤互動)。調試1:通道0:新

$$ client-session $$ debug3: ssh_session2_open: channel_new: 0 debug2: channel 0: send open debug1: Requesting no-more-sessions@openssh.com debug1: 進入互動式會話。debug1:client_input_global_request:rtype hostkeys-00@openssh.com want_reply 0 debug2:回調開始 debug2:client_session2_setup:id 0 debug2:通道0:請求pty-req確認1 debug2:通道0:請求shell確認1 debug2:fd 3設置TC​​P_NODELAY debug2:回調完成 debug2:通道 0:打開確認 rwindow 0 rmax 32768 debug2:channel_input_status_confirm:類型 99 id 0 debug2:通道 0 上接受 PTY 分配請求 debug2:通道 0:rcvd 調整 2097152 debug2:channel_input_status_confirm:類型 99 id 0 debug2:通道 0 上接受的 shell 請求上次登錄:2015 年 12 月 26 日星期六 12:22:40 來自 123.456.789.012 mms:~ admin$

我無法查看日誌文件(/var/log/auth.log 或 /var/log/daemon.log 不存在,我不知道它們的位置)。本地電腦是執行 10.10.5 的 Mac,遠端電腦是執行 10.6 的 Mac(無法更改)。

謝謝!

(我想知道術語“admin@mms.fritz.box”是否會導致任何問題。這是本地網路中本地主機的名稱。fritz.box 是路由器的名稱)

不,這只是評論

debug1: identity file /Users/sinclair/.ssh/id_rsa type -1
[...]
debug1: Trying private key: /Users/sinclair/.ssh/id_rsa
debug3: no such identity: /Users/sinclair/.ssh/id_rsa

您的客戶沒有使用密鑰。

要@Mat 評論,在客戶端上,您需要可訪問~/.ssh/id_rsa且在伺服器上的~/.ssh/authorized_keys. 你反過來設置。

引用自:https://unix.stackexchange.com/questions/251606