若想登入對方主機,而不需要輸入密碼,操作如下:
首先在自己主機上執行
ssh-keygen -t rsa
三次回車
在~/.ssh生成公私鑰:id_rsa.pub id_rsa
將id_rsa.pub拷貝到對方的~/.ssh中(記得重新命名,如my.pub)
在對方的.ssh中新建乙個authosized_keys,如果已存在,則不需要重建:
cd ~/.ssh
touch authorized_keys
cat my.pub>>authorized_keys
好了,現在在自己的機器上登入對方的機器就不需要輸入密碼了。
原理:密匙認證需要依靠密匙,首先建立一對密匙(包括公匙和密匙,並且用公匙加密的資料只能用密匙解密),並把公匙放到需要遠端伺服器上。這樣當登入遠端伺服器時,客戶端軟體就會向伺服器發出請求,請求用你的密匙進行認證。伺服器收到請求之後,先在你在該伺服器的宿主目錄下尋找你的公匙,然後檢查該公匙是否是合法,如果合法就用公匙加密一隨機數(即所謂的challenge)並傳送給客戶端軟體。客戶端軟體收到 「challenge」之後就用私匙解密再把它傳送給伺服器。因為用公匙加密的資料只能用密匙解密,伺服器經過比較就可以知道該客戶連線的合法性。
參考:
ssh 無密碼登入
今天在配置ssh登入的時候,遇到了一點問題 a.首先我建立了乙個使用者 useradd g hadoop m s bin bash hadoop b.進入hadoop主目錄,生成公鑰私鑰,但是發現沒有.ssh目錄,就手動生成.ssh目錄。c.進入 ssh 目錄下 ssh keygen t rsa,生...
SSH無密碼登入
a為本地主機 即用於控制其他主機的機器 b為遠端主機 即被控制的機器server 假如ip為172.24.253.2 a和b的系統都是linux 在a上的命令 ssh keygen t rsa 連續三次回車,即在本地生成了公鑰和私鑰,不設定密碼 ssh root 172.24.253.2 mkdir...
ssh 無密碼登入
ssh無密碼登入要使用公鑰與私鑰。linux下可以用用ssh keygen生成公鑰 私鑰對,下面我以centos為例。有機器a 192.168.1.155 b 192.168.1.181 現想a通過ssh免密碼登入到b。首先以root賬戶登陸為例。1.在a機下生成公鑰 私鑰對。root a ssh ...