萬盛學電腦網

 萬盛學電腦網 >> 服務器教程 >> linux如何配置雙機SSH信任然後雙向免密碼登陸

linux如何配置雙機SSH信任然後雙向免密碼登陸

   一、實現原理

  使用一種被稱為"公私鑰"認證的方式來進行ssh登錄。"公私鑰"認證方式簡單的解釋是:

  首先在客戶端上創建一對公私鑰(公鑰文件:~/.ssh/id_rsa.pub;私鑰文件:~/.ssh/id_rsa),然後把公鑰放到服務器上(~/.ssh/authorized_keys),自己保留好私鑰。當ssh登錄時,ssh程序會發送私鑰去和服務器上的公鑰做匹配。如果匹配成功就可以登錄了。

  二、實驗環境

  A機:TS-DEV/10.0.0.163

  B機:CS-DEV/10.0.0.188

  三、Linux/Unix雙機建立信任

  3.1 在A機生成證書

  在A機root用戶下執行ssh-keygen命令,在需要輸入的地方,直接回車,生成建立安全信任關系的證書。

  # ssh-keygen -t rsa

linux如何配置雙機SSH信任然後雙向免密碼登陸 三聯

  注意:在程序提示輸入passphrase時直接輸入回車,表示無證書密碼。

  上述命令將生成私鑰證書id_rsa和公鑰證書id_rsa.pub,存放在用戶家目錄的.ssh子目錄中。

  3.2 查看~/.ssh生成密鑰的文件

  # cd ~/.ssh

  # ll

linux如何配置雙機SSH信任然後雙向免密碼登陸

  3.3 A對B建立信任關系

  將公鑰證書id_rsa.pub復制到機器B的root家目錄的.ssh子目錄中,同時將文件名更換為authorized_keys,此時需要輸入B機的root用戶密碼(還未建立信任關系)。建立了客戶端到服務器端的信任關系後,客戶端就可以不用再輸入密碼,就可以從服務器端拷貝數據了。

  # scp -r id_rsa.pub 10.0.0.188:/root/.ssh/authorized_keys

linux如何配置雙機SSH信任然後雙向免密碼登陸

  3.4 B對A建立信任關系

  在B機上執行同樣的操作,建立B對A的信任關系。

  # ssh-keygen -t rsa

linux如何配置雙機SSH信任然後雙向免密碼登陸

  # cd ~/.ssh/

  # ll

linux如何配置雙機SSH信任然後雙向免密碼登陸

  # scp -r id_rsa.pub 10.0.0.163:/root/.ssh/authorized_keys

linux如何配置雙機SSH信任然後雙向免密碼登陸

  如果想讓B,C同時可以scp不輸入密碼,傳輸A中的數據;

  則要把B、C的公鑰都給 A;

  操作步驟:把兩機器的id_rsa.pub中的數據都拷貝到A的/root/.ssh/authorized_keys文件中,一行表示一條;

  A: scp -r id_rsa.pub 10.0.0.163:/root/.ssh/authorized_keys

  B: scp -r id_rsa.pub 10.0.0.188:/root/.ssh/authorized_keys

  測試 ssh [email protected] 'hostname' /// ssh [email protected] 'hostname'

  如果連接反應慢,請修改以下兩參數

  /etc/ssh/sshd_config

  GSSAPIAuthentication no

  UseDNS no

  然後重啟service sshd restart

copyright © 萬盛學電腦網 all rights reserved