[TOC] #### 1. mac 的 ssh --- mac 的終端自帶 ssh,不過(guò)我會(huì)使用 [iterm2](https://iterm2.com) 作為 mac 終端工具 ``` ssh 服務(wù)器用戶@服務(wù)器IP地址 ``` 輸入連接命令,回車,再輸入連接命令中使用的用戶密碼即可連接上服務(wù)器。下面是連接命令: ``` # 默認(rèn)使用 22 端口連接服務(wù)器 ssh root@182.92.187.217 # 使用 -p 參數(shù)指定端口連接服務(wù)器 ssh root@182.92.187.217 -p 23 ``` 當(dāng)曾經(jīng)連接過(guò)遠(yuǎn)程服務(wù)器,后來(lái)服務(wù)器重裝系統(tǒng)了(如:阿里云服務(wù)器更換了操作系統(tǒng)),再連接就會(huì)出現(xiàn)以下錯(cuò)誤  解決方案 1:直接刪除 known_hosts 文件 ```bash rm -rf ~/.ssh/known_hosts ``` 解決方案 2:刪除 known_hosts 中該 IP 相關(guān)內(nèi)容 因?yàn)樵撐募锌赡軙?huì)有其他 IP 的內(nèi)容,為了不影響其他 IP 的連接,所以推薦該方式 ``` # 刪除以下內(nèi)容 47.106.206.43 ssh-ed25519 .... 47.106.206.43 ssh-rsa .... 47.106.206.43 ecdsa-sha2-nistp256 .... ``` #### 2. 使用 SSH 密鑰連接 --- 當(dāng)經(jīng)常需要連接一個(gè)服務(wù)器時(shí),每次連接都輸入密碼就過(guò)于繁瑣了,我們可以使用 SSH 密鑰進(jìn)行免密登錄 生成 SSH 密鑰(使用 github 的開發(fā)者一般都生成過(guò),生成過(guò)的話無(wú)需重復(fù)生成) ``` ssh-keygen ``` 運(yùn)行以下命令將 SSH 密鑰推送到服務(wù)器,推送時(shí)需要輸入服務(wù)器用戶密碼 ssh-copy-id 可以把本地主機(jī)的公鑰復(fù)制到遠(yuǎn)程主機(jī)的 authorized_keys 文件,進(jìn)而實(shí)現(xiàn)免密登錄 這個(gè)命令會(huì)在服務(wù)器上生成一個(gè)文件: `~/.ssh/authorized_keys`,文件內(nèi)容就是我們推送的 SSH 密鑰 ```bash # 命令格式 ssh-copy-id 用戶@IP地址 # 使用示例 ssh-copy-id root@192.168.1.49 ssh-copy-id root@101.132.33.24 ``` 再使用 ssh 連接服務(wù)器就可以免密連接了  #### 3. 使用配置文件連接 --- 使用 SSH 密鑰連接的方式,雖然不用每次都輸入密碼,但還是要輸入服務(wù)器的用戶名和 IP 地址,還是挺麻煩的。 這時(shí)候可以給 IP 配置一個(gè)別名,進(jìn)而簡(jiǎn)化連接操作,創(chuàng)建文件: `~/.ssh/config`,文件內(nèi)容如下: ``` Host blog Hostname 101.132.33.24 Port 22 User root IdentityFile ~/.ssh/id_rsa ``` 使用配置的別名連接服務(wù)器,只需要使用以下指令就可以連接到服務(wù)器 ``` ssh blog ```  當(dāng)需要連接多個(gè)服務(wù)器時(shí),考慮到每個(gè)都要寫 Port、User,很麻煩,其實(shí)可以把這些公共的抽離出來(lái) ``` Host blog Hostname 101.132.33.24 # 以下為抽離的配置 # Host * :這個(gè)的意思是,所有Host以下如果沒有配置的話,都走以下配置 # Port : 默認(rèn)端口為22,如果不是22端口,可以在上面輸入 Port 2222 ,自己想要的端口進(jìn)行配置 # IdentityFile : 默認(rèn)的我們的密鑰文件地址位置在哪兒(也就是我們先開始生成密鑰的地址) Host * Port 22 User root ServerAliveInterval 60 ConnectTimeout 0 TCPKeepAlive yes IdentityFile ~/.ssh/id_rsa ``` #### 4. Windows 系統(tǒng) --- 對(duì)于 Windows 系統(tǒng)用戶,如果只是連接服務(wù)器的終端,進(jìn)行簡(jiǎn)單操作,比如: 安裝寶塔面板,可以使用 git 自帶的命令行工具 `Git Bash Here` 連接。但如果想要更多功能,還是要使用專業(yè)的軟件,如 xshell ``` ssh root@182.92.70.132 ``` 首次連接會(huì)有一個(gè)操作提示,輸入 `yes` 回車即可,然后輸入服務(wù)器用戶的密碼即可連接成功  #### 5. 退出 SSH 連接狀態(tài) --- 退出 SSH 連接可以使用 `exit` 命令,也可以使用快捷鍵 `control + d` 