Linux
SSH 連接失敗,不支持密鑰交換算法
有許多具有相同標題的問題,但是沒有一個解決方案適用於我的問題。我的
sshd
日誌中出現以下錯誤行:Jan 6 21:57:55 <computer name> sshd[30103]: Received signal 15; terminating. Jan 6 21:57:55 <computer name> sshd[30175]: Server listening on 127.0.0.1 port 22. Jan 6 21:58:00 <computer name> sshd[30184]: error: Could not load host key: /etc/ssh/ssh_host_ed25519_key Jan 6 21:58:00 <computer name> sshd[30184]: error: Could not load host key: /etc/ssh/ssh_host_rsa_key Jan 6 21:58:00 <computer name> sshd[30184]: Disabling protocol version 1. Could not load host key Jan 6 21:58:00 <computer name> sshd[30184]: fatal: No supported key exchange algorithms [preauth]
但關鍵文件
/etc/ssh/...
存在並具有正確的權限:執行la /etc/ssh/
total 276K -rw-r--r-- 1 root root 222K Jan 6 22:01 moduli -rw-r--r-- 1 root root 2.2K Jan 6 20:45 ssh_config -rw-r--r-- 1 root root 2.8K Jan 6 21:57 sshd_config -rw------- 1 root root 464 Jan 6 21:23 ssh_host_ed25519_key -rw-r--r-- 1 root root 109 Jan 6 21:23 ssh_host_ed25519_key.pub -rw------- 1 root root 3.3K Jan 6 21:24 ssh_host_rsa_key -rw-r--r-- 1 root root 753 Jan 6 21:24 ssh_host_rsa_key.pub -rw-r--r-- 1 root root 338 Jan 6 17:44 ssh_import_id
我最近更改了我的配置以使其更安全。我試過重新生成所有關鍵文件,但沒有運氣。客戶端是同一台機器(嘗試連接到
ssh localhost
)但沒有運氣。
好的,我想我找到了問題所在。我刪除了伺服器並重新安裝了它。如果我讓生成的密鑰文件
rsa
保持ed25519
工作狀態。如果我使用以下命令刪除並重新生成它們,它會中斷ssh-keygen -t ed25519 -f ssh_host_ed25519_key < /dev/null ssh-keygen -t rsa -b 4096 -f ssh_host_rsa_key < /dev/null
編輯終於找到了真正的問題。如果我將密碼片語放在我的密鑰文件上,那麼它將不起作用,我會收到連接已關閉的錯誤。