HowTo SSH without password 免密碼

Using SSH without password 

OS: Ubuntu Maverick server

After searching several approach with goole.....
Yes, there'r lots of article that talk about this.
But still have some tricky points.




assume A server and B client  使用root身分
當想從B SSH至A 而不用密碼的方式

B上生成公鑰與私鑰


ssh-keygen -t rsa -N '' -f ~/.ssh/id_rsa



-t 為加密格式有rsa1 & rsa2 ,
-N ' ' 設定phrasepass為空白,也就是不使用安全認證
-f 為指定金鑰的放置位置
※如要從B以root免密碼登入A , -f 後方參數應該為/root/.ssh/id_rsa , 這點很容易忽略,結果就是用root金鑰完全無法免密碼login到A


換言之如果要以user1 免密碼登入上列指令則可行,不過要在user1登入的狀態下。

接下來將公鑰 id_rsa.pub 丟給A server,原因是當B要登入時會使用"B的private key 去配對A持有的public key" 聽起來有點顛倒,but it's true.

<account_on_A> 在A上所要使用的帳號
<host_A> 可以是A的ip/hostname/FQDN

B上執行,將public key給A
scp id_rsa.pub <account_on_A>@<host_A>


A上執行,將B的public key附加入authorized_keys


cat <PATH>/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 711 ~/.ssh/                  
chmod 644 ~/.ssh/authorized_keys


B上使用root身分SSH到A的指定帳號

ssh <account_on_A>@<host_A>





=================FASTER WAY===================


條件:A 與 B 具有相同的非ROOT帳號名稱,以下都用該帳號進行操作


於B上產生金鑰(公/私)

ssh-keygen -t rsa -N '' -f ~/.ssh/id_rsa





於B上複製公鑰到A端

ssh-copy-id <帳號>@<each nova component server name> 






Comments

Popular posts from this blog