由於經常會在兩三台Linux主機之間使用SSH,另外Mirgration VM時也會使用到SSH,所以設定好免密碼驗證會讓操作上更加地便利。正確來說,其實不是免密碼,而是使用公私鑰的驗證方式來替代使用者輸入密碼。主要的原理就是先利用程式產生一組公私鑰(一個公鑰檔,一個私鑰檔),然後私鑰當然是保存在自己的帳戶目錄中,而把公鑰交給對方,這樣SSH在登入時,會先比對這組公私鑰,如果配對成功,就不會再向使用者索取密碼了。

有一點要特別注意的,就是 SSH和你的帳號有關,不同的帳號公私鑰要放在個自己資料夾之下。例如帳號是minhuang,那麼就是放在/home/minhuang/.ssh/之下,如果是root,則是放在/root/.ssh/之下。產生公私鑰匙對的程式是 ssh-keygen -t rsa,執行完畢之後,就會在你的家目錄.ssh目錄下產生兩個檔案,分別是id_rsa以及id_rsa.pub,前者是私鑰,放在原處不要動,後者是公鑰,要把它的內容複製到另外一台機器的同一個家目錄下的.ssh/authroized_keys中,基本上這樣就算是完成了。

(9)