標籤:
轉載說明: 本文轉載自 http://www.aips.me/mac-key-ssh-login-linux.html
- 產生金鑰組
- 用密碼登入遠程主機,將公開金鑰拷貝過去
- done
第一步:產生密匙對
執行命令 ssh-keygen -t rsa
執行結果如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
[email protected]:~ > ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/Users/charles/.ssh/id_rsa): Created directory ‘/Users/charles/.ssh’. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /Users/charles/.ssh/id_rsa. Your public key has been saved in /Users/charles/.ssh/id_rsa.pub. The key fingerprint is: c8:4b:85:87:90:7c:1這一段kdy隱藏....... [email protected] The key’s randomart image is: +–[ RSA 2048]—-+ | … .. o=.. | | +.*o. …+ | | Bo+o. o.. | | …+E o | | + S | | . . | | . | | | | | +—————–+ |
注意:提示enter passphrase的時候,不要輸入,因為你本來就想少打一次密碼的,這裡如果設定了用密碼保護私密金鑰,那登入的時候還是要輸密碼,就白做了。
做完這個步驟後,cd ~/.ssh,你就可以看到你剛才產生的金鑰組,id_rsa是私密金鑰,id_rsa.pub是公開金鑰。下一步,就是把公開金鑰拷貝到目標主機上。
第二步:將公開金鑰拷貝到目標主機
用ssh登入到目標主機,然後cd ~/.ssh目錄,如果目錄不存在,那麼要自己建立mkdir -p ~/.ssh。你今後要用哪個帳戶登入主機,就在哪個帳戶的home目錄下操作,如果要免登陸root,就要去/root下操作。使用~比較好,不用多想了。
有了.ssh目錄後,進去,然後把id_rsa.pub傳過去,可以用scp命令,這裡要做的一個主要操作,就是將id_rsa.pub,的檔案內容,寫到一個叫authorized_keys的檔案中去,如果目標主機的相應使用者名稱下已經有了.ssh目錄和authorized_keys檔案,那你操作要小心一點,可能別人也做過免登陸的設定,這個時候你要小心不要把別人的設定給覆蓋了。如果沒有的話,就建立檔案touch ~/.ssh/authorized_keys,然後執行cat id_rsa.pub >> authorized_keys,將你的公開金鑰寫入到authorized_keys中,公開金鑰檔案.pub裡面只有一行資訊,上面的命令相當於把那一行資訊追加到authorized_keys檔案最後一行。
如果.ssh目錄是你主機剛剛建立的,那麼可能還需要改變一下這個目錄的許可權,將許可權放低,chmod -R 0600 ~/.ssh,到此,所有設定就算做完了,你可以退出登入,在自己的主機上試一下了,現在再敲入ssh命令後,不用密碼就可以登入主機了。
Mac OS X上如何?到Linux主機的ssh免登陸