一、基本操做
1)若本地用戶名與遠程用戶名不一樣,則登陸命令格式以下:
$ ssh user@host
2)若本地用戶名和遠程用戶名一致,則登陸可省略用戶名:
$ ssh host
3)SSH默認端口是22,若訪問遠程服務器端口非22,則使用p參數,能夠修改這個端口。
$ ssh -p 2222 user@host 或 $ ssh -p 2222 hostgit
二、口令登陸
1)如果第一次訪問遠程主機,系統會先提示:
$ ssh user@host
The authenticity of host 'host (12.18.81.21)' can't be established.
RSA key fingerprint is 98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d.
Are you sure you want to continue connecting (yes/no)?github
而後提示: Are you sure you want to continue connecting (yes/no)? yes 最後提示: Password: (enter password),若輸入密碼正確,則登陸成功
2)若非第一次訪問遠程主機,系統直接提示:
Password: (enter password),若輸入密碼正確,則登陸成功服務器
這是由於第一次訪問遠程主機後,信息被保存在文件$ root/.ssh/known_hosts之中。當下次再鏈接這臺主機時,系統就會認出
它的,跳過警告部分,直接提示輸入密碼。
每一個SSH用戶都有本身的known_hosts文件,此外系統也有一個這樣的文件,一般是/etc/ssh/ssh_known_hosts,保存一些對所 ssh
有用戶均可信賴的遠程主機公鑰。ide
三、公鑰登陸
每次經過ssh訪問遠程主機時,都要求用戶輸入密碼,若以公鑰方式登陸,則可省去輸入密碼的步驟,設置公鑰密碼方式以下:
1)$ ssh-keygen #用戶生成用戶本身的公鑰和私鑰,中途會要求輸入口令(可忽略)。運行完成後,在$ root/.ssh/目錄下,會新生成code
兩個文件:id_rsa.pub(公鑰)和 id_rsa(私鑰)。
2)$ ssh-copy-id user@host #此命令是將公鑰傳送到遠程主機host上面,運行成功後,再登陸遠程服務器,就不無需輸入密碼blog
參考資料連接:https://github.com/guobinhit/cg-blog/blob/master/articles/others/detail-ssh.mdci