windows 上若是要連接服務器能夠經過 xshell 和它附帶的 xftp 來很方便的連接,最近域名備案經過了,也用上了 mac 如何像 windows 那樣方便的操做服務器是我要解決的第一個問題。git
起先在 App Store 上搜了個免費的工具雖然能用ssh連上但發現沒有ftp的功能,後來知道了 mac 的終端自帶連接服務器的功能:shell
ssh 用戶名@ip -port
複製代碼
既然 mac 自帶那也就不必浪費 mac 金貴的磁盤空間了,果斷刪掉剛下的免費軟件。windows
ftp 的功能我目前用的是 ForkLift
體驗不比 xftp 差,並且仍是在 App Store 上直接下載的免費軟件。bash
這讓一來個人電腦能正常操做服務器了,可是總感受哪裏有點不對----每次都要輸入密碼以及要記住服務器 ip 地址。服務器
在網上搜了下發現 mac 又一個前往服務器功能能夠保存服務器 ip 可是用戶名又是默認的 mac 用戶名和個人阿里雲服務器對不上,真是醉了,折騰很久以後找到了一個終極解決方案---免密登錄。ssh
以前只用過 ssh 連接 git 沒想到還能用來連接服務器工具
好了廢話很少說直接上操做步驟ui
ssh-keygen -t rsa -C "yourEmail"
複製代碼
這個命令會生成公鑰和私鑰咱們須要把公鑰( id_rsa.pub
)弄到服務器的 ~/.ssh/authorized_keys
文件內.阿里雲
cd ~/.ssh
vi id_rsa.pub
複製代碼
複製
一下。spa
command+空格+z+回車 呼出終端
ssh root@xxx.xxx.xxx.xxx
輸入密碼登錄成功
cd ~/.ssh
vi authorized_keys #沒有這個文件的話先用 touch authorized_keys 建立再,執行這條命令。
複製代碼
將輸入法調爲美式鍵盤
按 o
鍵進入編輯狀態-粘貼
按下 esc
shift + ; 輸入:
而後接着輸入 wq
(:wq)保存並退出編輯狀態
打開本機終端
cd ~/.ssh
touch config # 已經存在的話直接用 vi 編輯
vi config
複製代碼
語法以下
Host *
UseKeychain yes
Host serverAlias
HostName xxx.xxx.xxx.xxx
User userName
複製代碼
例如
Host *
UseKeychain yes
Host server1
HostName 148.157.254.111
User root
Host server2
HostName 148.157.254.112
User root
複製代碼
大功告成
下次要登錄服務器只需
ssh server1
複製代碼
vi: 在 liunx 命令行 和 mac 終端以及 gitbash 中可使用,做用是查看可編輯文件
touch:在 liunx 命令行 和 mac 終端以及 gitbash 中可使用,做用是新建空文件
cd:進入一個具體的目錄 例如 cd ~
就是進入根目錄。 ../
上級目錄 ./file
同級目錄的file文件夾
ls:查看當前目錄下的文件和文件夾
pwd:查看當前目錄