Linux下SSH免密碼登入

2022-03-28 07:24:39 字數 1305 閱讀 4309

**:

ssh配置  

主機a:10.0.5.199

主機b:10.0.5.198 

需要配置主機a無密碼登入主機a,主機b

先確保所有主機的防火牆處於關閉狀態。

在主機a上執行如下:

1. $cd ~/.ssh

2. $ssh-keygen -t rsa  --------------------然後一直按回車鍵,就會按照預設的選項將生成的金鑰儲存在.ssh/id_rsa檔案中。

3. $cp id_rsa.pub authorized_keys 

這步完成後,正常情況下就可以無密碼登入本機了,即ssh localhost,無需輸入密碼。

4. $scp authorized_keys [email protected]:/root/.ssh   ------把剛剛產生的authorized_keys檔案拷乙份到主機b上.  

5. $chmod 600 authorized_keys       

進入主機b的.ssh目錄,改變authorized_keys檔案的許可許可權。

(4和5可以合成一步,執行:  $ssh-copy-id -i [email protected] )

正常情況下上面幾步執行完成後,從主機a所在機器向主機a、主機b所在機器發起ssh連線,只有在第一次登入時需要輸入密碼,以後則不需要。

可能遇到的問題:

1.進行ssh登入時,出現:agent admitted failure to sign using the key .

執行: $ssh-add

2.如果無任何錯誤提示,可以輸密碼登入,但就是不能無密碼登入,在被連線的主機上(如a向b發起ssh連線,則在b上)執行以下幾步:

$chmod o-w ~/

$chmod 700 ~/.ssh

$chmod 600 ~/.ssh/authorized_keys

3.如果執行了第2步,還是不能無密碼登入,再試試下面幾個

$ps -af | grep agent 

檢查ssh**是否開啟,如果有開啟的話,kill掉該**,然後執行下面,重新開啟乙個ssh**,如果沒有開啟,直接執行下面:

$ssh-agent

還是不行的話,執行下面,重啟一下ssh服務

$sudo service sshd restart

注意的是:

linux系統中$home目錄下的.ssh目錄為使用者所有,許可權必須為700(只有使用者自己可以全權訪問);

.ssh目錄下的授權檔案「authorized_keys」為使用者所有,許可權 必須為644。

Linux下SSH免密碼登入

ssh配置 主機a 10.0.5.199 主機b 10.0.5.198 需要配置主機a無密碼登入主機a,主機b 先確保所有主機的防火牆處於關閉狀態。在主機a上執行如下 1.cd ssh 2.ssh keygen t rsa 然後一直按回車鍵,就會按照預設的選項將生成的金鑰儲存在.ssh id rsa...

Linux下SSH免密碼登入

ssh配置 主機a 10.0.5.199 主機b 10.0.5.198 需要配置主機a無密碼登入主機a,主機b 先確保所有主機的防火牆處於關閉狀態。在主機a上執行如下 1.cd ssh 2.ssh keygen t rsa 然後一直按回車鍵,就會按照預設的選項將生成的金鑰儲存在.ssh id rsa...

Linux下SSH免密碼登入

ssh配置 主機a 10.0.5.199 主機b 10.0.5.198 需要配置主機a無密碼登入主機a,主機b 先確保所有主機的防火牆處於關閉狀態。在主機a上執行如下 1.cd ssh 2.ssh keygen t rsa 然後一直按回車鍵,就會按照預設的選項將生成的金鑰儲存在.ssh id rsa...