SSH無密碼登入,ssh密碼登入
SSH(Secure Shell),是專為遠程登入工作階段和其他網路服務提供安全性的協議。
使用SSH,可以遠程登入到其他Linux主機,但是需要輸入密碼。如在10.3.93.213登入10.3.93.212,會要求輸入密碼。
為了實現無密碼登入,可以使用ssh-keygen命令產生公開金鑰,然後將公開金鑰複製到要遠程登入的主機。
輸入ssh-keygen命令後,連續3個斷行符號。
進入.ssh檔案夾,可以看到產生了兩個檔案:
其中id_rsa.pub是公開金鑰,使用scp命令將其複製到10.3.93.212的.ssh檔案夾下。
如果10.3.93.212的authorized_keys檔案已經存在,則將id_rsa.pub複製過去以後,再運行cat id_rsa.pub>>authorized_keys。
再次SSH 10.3.93.212,已經可以無密碼登入。
ssh無需登陸密碼,怎配置?
這個要給你舉個例子:
192.168.1.1---client
192.168.1.2---slave
先在192.168.1.1上
ssh-keygen
產生id_rsa id_rsa.pub
把id_rsa.pub裡的內容複寫
在192.168.1.2的/root/.ssh/目錄下 建立 authorized_keys檔案
把192.168.1.1的id_rsa.pub裡的內容拷貝到authorized_keys檔案中
再在1.2上執行ssh-keygen
把id_rsa.pub 裡的內容拷貝到192.168.1.1的/root/.ssh/authorized_keys中
現在你可以嘗試一下了!
ubuntu中配置ssh無密碼登入應該怎操作
ssh與-keygen之間沒有空格。
ssh-keygen用來產生金鑰組。
命令是:
ssh -keygen -t dsa -f ~/.ssh/id_dsa
斷行符號後會提示你輸入口令passphrase, 直接跳過就行了。
完成後,會在~/.ssh/目錄下新產生兩個檔案,而非檔案夾。
id-dsa #私密金鑰
id_dsa.pub #尾碼public, 公開金鑰
還有,你-p命令可能有點混淆
man ssh-keygen
-P phrase Provide old passphrase. # -P後面跟上的參數是之前設定的舊口令。
-p Change passphrase of private key file. #-p,小寫p,不帶參數,表示你要修改口令
其實《鳥哥的私房菜》ssh一節講得很詳細,有圖有真相,你可以參考一下。
我把我嘗試的過程與你分享一下:
#設定使用密鑰驗證
1.產生本地的公開金鑰,私密金鑰對
2.修改私密金鑰許可權為600,只能本人訪問。
3.上傳公開金鑰到伺服器
4.將公開金鑰內容附加到遠程主機主目錄的/.ssh/authorized_keys檔案內。
修改authorized_keys許可權為600
刪除上傳的公開金鑰。
5.在本地的密鑰環中匯入建立的金鑰組。
命令如下:
1.
ssh-keygen -t rsa
#中途提示輸入passphraze,不要輸入,直接enter前進到底。
結果:產生金鑰組
Your identification has been saved in /home/Lynn/.ssh/id_rsa.
Your public key has been saved in /home/Lynn/.ssh/id_rsa.pub.
2.
chmod 600 /home/Lynn/.ssh/id_rsa
3.
cd ~/.ssh
sftp Capricorn@192.168.1.100
sftp> put id_rsa.pub
exit
4.
ssh Capricorn@192.168.1.100
cat id_rsa.pub >> ./.ssh/authorized_keys
chmod 600 ./.ssh/authorized_keys
rm id_rsa.pub
exit
5.#客戶機匯入keygen產生的新私密金鑰
# ssh-add — adds private key identities to the authentication agent
ssh-add
完成。...餘下全文>>