SSH 為 Secure Shell 的縮寫,由 IETF 的網(wǎng)絡(luò)小組(Network Working Group)所制定;SSH 為建立在應(yīng)用層基礎(chǔ)上的安全協(xié)議。SSH 是目前較可靠,專為遠(yuǎn)程登錄會(huì)話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議。利用 SSH 協(xié)議可以有效防止遠(yuǎn)程管理過程中的信息泄露問題。SSH最初是UNIX系統(tǒng)上的一個(gè)程序,后來又迅速擴(kuò)展到其他操作平臺(tái)。SSH在正確使用時(shí)可彌補(bǔ)網(wǎng)絡(luò)中的漏洞。SSH客戶端適用于多種平臺(tái)。幾乎所有UNIX平臺(tái)—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平臺(tái),都可運(yùn)行SSH。
以上摘入自百度百科,更多關(guān)于SSH的信息,大家自己去網(wǎng)上了解。接下來,我們將創(chuàng)建SSH,以及使用它進(jìn)行登錄。
1.查詢SSH Keys
在生成SSH Keys前,先看下是否存在SSH Keys秘鑰對。
$ cd ~/.ssh
如果文件夾不存在就可以直接去創(chuàng)建SSH Keys,如果存在查看目錄下是否存在對應(yīng)SSH的公私秘鑰
$ ls
如果命令行中出現(xiàn)了***.pub(Public Key) 和 ***(Private Key),類似這樣的一對文件,說明之前已經(jīng)生成過秘鑰,你可直接使用。
2.創(chuàng)建SSH Keys
在terminal中調(diào)用ssh-keygen命令來生成新的SSH文件
$ ssh-keygen -t rsa -C YOUR_EMAIL
過程中會(huì)有三次需要輸入的信息,根據(jù)提示的信息來設(shè)置。
第一個(gè)提示是:設(shè)置將要生成SSH的路徑和名字。文字中顯示的(~/.ssh/id_rsa)為默認(rèn)路徑和名稱;如果直接回車,生成的一對SSH Keys名字分別為:id_rsa 和id_rsa.pub,路徑為:~/.ssh/
Enter file in which to save the key (~/.ssh/id_rsa):
第二個(gè)提示是:創(chuàng)建的SSH設(shè)置密碼,在以后建立建立連接時(shí),需要用到。如果直接回車,默認(rèn)設(shè)置密碼為空。
Enter passphrase (empty for no passphrase):
第三個(gè)提示,確認(rèn)密碼
Enter same passphrase again:
3.查看SSH Public Key
這里我們查看id_rsa.pub的內(nèi)容;如果自行設(shè)置過了公鑰名,替換成自己的公鑰即可。
cat id_rsa.pub
輸出如下:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDhQwP4Ezu7LvcrHlMXD9nwfyQEGjbz1G
Rwr/D2/opal9H2JGk3Ix0upA0c7IshPyI/kHS1U+FgmbjDBbvUTI4Ij3Swym2AFTJ4fCZz
iRSjk2j3xbZNdXgwgfhLjRIJiIBnXVsqEt1tKKeQ/SxFWp99iTQ1J7KPlc6II/L3ftuyA
HAUzg47SdZztiBzPxvgDaVO7S5Vjp9L2h56uxCxC5aymW/piivngJATf4TP5NfCRd+YW
6vT1b8otIsKyDLJfNbOEWJtiJTym+4TLKYJDCIyBwxCerkw+RRtZ+UQV2nrVv2nqPV+Y
MUJKCBx6TapISkpMwxmxoaDPJ+VVd3YdyDR YOUR_EMAIL
4.添加公鑰
這里以github中設(shè)置Public Key為例,打開github -> 登錄(成功后) -> 進(jìn)入Personal settings -> 點(diǎn)擊左側(cè)欄中的SSH and GPG keys -> New SSH Key -> 將Public Key的內(nèi)容貼進(jìn)去,這樣就設(shè)置好了。
5.測試SSH Keys
$ ssh git@github.com
如果打印中出現(xiàn) You've successfully authenticated 的字樣,說明驗(yàn)證成功,接下去就可以正常使用了。
如果出現(xiàn)類似 Permission denied 的字段,檢查是否成功添加公鑰。