歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux管理 >> Linux維護 >> Linux取消SSH登錄密碼的方法

Linux取消SSH登錄密碼的方法

日期:2017/3/2 10:28:08   编辑:Linux維護

有時我們想要通過其他的賬戶進行登錄SSH,通常我們在登錄的時候需要重新輸入密碼。不過對於一些不想記太多密碼的用戶來說,這樣就顯得有些麻煩了,那麼該怎麼才能不輸入密碼進行登錄呢?

解決方法:

1. 你需要以用戶“aliceA”的身份登錄到hostA上。

2. 使用ssh-keygen生成一對rsa公私鑰,生成的密鑰對會存放在~/.ssh目錄下。

$ ssh-keygen -t rsa

3. 使用下面的命令在目標主機hostB上的aliceB用戶目錄下創建~/.ssh目錄。如果在aliceB@hostB上已經存在.ssh目錄,這一步會被略過。

$ ssh aliceB@hostB mkdir -p .ssh

4. 將hostA上用戶“aliceA”的公鑰拷貝到aliceB@hostB上,來實現無密碼ssh。

$ cat .ssh/id_rsa.pub | ssh aliceB@hostB ‘cat 》》 .ssh/authorized_keys’

自此以後,從aliceA@hostA上ssh到aliceB@hostB上再也不需要輸入密碼。(小編譯注:上述的創建目錄並復制的操作也可以通過一個 ssh-copy-id 命令一步完成:ssh-copy-id -i ~/.ssh/id_rsa.pub aliceB@hostB)

疑難解答

1. 即使在密鑰認證生效後,你可能仍然需要輸入SSH密碼。如果遇到這種情況,請檢查系統日志(如/var/log/secure)以查看是否出現下面的異常。

Authentication refused: bad ownership or modes for file /home/aliceB/.ssh/authorized_keys

在這種情況下,密鑰認證的失敗是由於~/.ssh/authorized_keys文件的權限或擁有者不正確。一般情況,如果這個文件對除了你之外的所有用戶都可讀,就會出現這個錯誤。用下面的方式改變文件的權限以修正錯誤。

$ chmod 700 ~/.ssh/authorized_keys

以上就是設置Linux系統中不輸入密碼登錄SSH服務器的方法了。有遇到這種情況的用戶,就按照上面的方法進行設置吧。

Copyright © Linux教程網 All Rights Reserved