啓動sshd時,報「Could not load host key」錯

現象:啓動sshd服務時,雖看似服務啓動成功,但客戶端並不能鏈接上sshd服務器端。
以下:
點擊(此處)摺疊或打開服務器

  1. [root@aefe8007a17d ~]# /usr/sbin/sshd
  2. Could not load host key: /etc/ssh/ssh_host_rsa_key
  3. Could not load host key: /etc/ssh/ssh_host_ecdsa_key
  4. Could not load host key: /etc/ssh/ssh_host_ed25519_key


緣由:
1. 從提示信息看是sshd守護進程不能加載主機密鑰文件,由於找不到這些密鑰文件(配置文件/etc/ssh/sshd_config中已定義密鑰文件名與路徑);
2. 通常openssh服務正常安裝後,主機會自動生成相應的主機密鑰文件,但這裏因未知緣由並無完成這一步動做,致使沒法遠程ssh鏈接。

檢查密鑰文件是否存在(還有一種現象爲:密鑰文件存在,但文件大小爲0):dom

點擊(此處)摺疊或打開ssh

  1. [root@aefe8007a17d ~]# ll /etc/ssh/
  2. total 252
  3. -rw-r--r-- 1 root root 242153 Mar 21 22:18 moduli
  4. -rw-r--r-- 1 root root 2208 Mar 21 22:18 ssh_config
  5. -rw------- 1 root root 4361 Mar 21 22:18 sshd_config


從新生成主機密鑰文件:
1. 生成rsa_key (-t表示生成的密鑰所使用的加密類型;-f項後接要生成的密鑰文件名);ide

點擊(此處)摺疊或打開加密

  1. [root@aefe8007a17d ~]# ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
  2. Generating public/private rsa key pair.
  3. Enter passphrase (empty for no passphrase): 
  4. Enter same passphrase again: 
  5. Your identification has been saved in /etc/ssh/ssh_host_rsa_key.
  6. Your public key has been saved in /etc/ssh/ssh_host_rsa_key.pub.
  7. The key fingerprint is:
  8. 5e:2d:19:51:b1:e3:e0:60:65:53:e4:14:f8:d8:38:af root@aefe8007a17d
  9. The key's randomart image is:
  10. +--[ RSA 2048]----+
  11. | ==Bo |
  12. | o.= . |
  13. | o o=+ |
  14. | . o+*o. |
  15. | S =oo |
  16. | . . .. |
  17. | . . |
  18. | E |
  19. | |
  20. +-----------------+
  21. [root@aefe8007a17d ~]# ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
  22.  

2. 生成ecdsa_key;
點擊(此處)摺疊或打開進程

  1. [root@aefe8007a17d ~]# ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key

3. 生成ed25519_key。ci

點擊(此處)摺疊或打開it

  1. [root@aefe8007a17d ~]# ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key


再次檢查密鑰文件是否存在且合規,能夠看到已生成相應主機密鑰文件(實際上主機密鑰文件爲私鑰,.pub文件爲公鑰):io

點擊(此處)摺疊或打開服務器端

  1. [root@aefe8007a17d ~]# ll /etc/ssh/
  2. total 276
  3. -rw-r--r-- 1 root root 242153 Mar 21 22:18 moduli
  4. -rw-r--r-- 1 root root 2208 Mar 21 22:18 ssh_config
  5. -rw------- 1 root root 227 May 22 16:48 ssh_host_ecdsa_key
  6. -rw-r--r-- 1 root root 179 May 22 16:48 ssh_host_ecdsa_key.pub
  7. -rw------- 1 root root 411 May 22 16:48 ssh_host_ed25519_key
  8. -rw-r--r-- 1 root root 99 May 22 16:48 ssh_host_ed25519_key.pub
  9. -rw------- 1 root root 1679 May 22 16:48 ssh_host_rsa_key
  10. -rw-r--r-- 1 root root 399 May 22 16:48 ssh_host_rsa_key.pub
  11. -rw------- 1 root root 4361 Mar 21 22:18 sshd_config


此時客戶端可ssh鏈接上sshd服務器端:

點擊(此處)摺疊或打開

  1. [root@localhost ~]# ssh 172.17.0.2
  2. The authenticity of host '172.17.0.2 (172.17.0.2)' can't be established. ECDSA key fingerprint is 37:2a:69:46:c4:bd:92:b2:43:b4:cc:42:41:8e:12:2e. Are you sure you want to continue connecting (yes/no)? 
相關文章
相關標籤/搜索