2007年6月6日 星期三

不需輸入帳號密碼便可登入SSH

SSH Server:Windows+Cygwin OpenSSH
Client:Portable Putty(0.59) (隨身碟)

在Server上先輸入 ssh-keygen -t rsa
並設定好大於四個字元的 passphrase (也可空白)

產生金鑰後,到 ~/.ssh 裡,輸入 cat id_rsa.pub >> authorized_keys
便完成 Server 部份的設置(註一),接著把 id_rsa 抓回自己電腦
利用Putty作者寫的Puttygen讀取 id_rsa ,確認完 passphrase 後,
存為 private key

開啟Putty,在 SSH->Auth ,選擇剛剛的 private key
接著輸入Server位址,SSH連線

連上後,會要求輸入登入帳號
接著輸入
passphrase 即可。(註二)


有一點要提的是--不要直接利用Puttygen產生金鑰,我就是照作者網頁上的指示去試,結果浪費我將近兩個小時...



註一:不同設定和Server時,檔案存放位置可能是在~/.ssh2,或認證金鑰檔的名稱不同

註二:若當初 passphrase 設空白,則輸入帳號後便直接登入,我是考慮到隨身碟遺失,以及怕外面電腦上有keystoke logger,不想把本機密碼洩漏,才設 passphrase

參考資料:

鳥哥的私房菜
linux.vbird.org/linux_server/0310telnetssh.php

Jamyy's Blog
cha.homeip.net/blog/archives/2006/04/_winxp_cygwin_s.html

Using public keys for SSH authentication
the.earth.li/~sgtatham/putty/0.60/htmldoc/Chapter8.html#pubkey-puttygen

沒有留言: