一、基本操做
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