ssh是什么
SSH为一项创建在应用层和传输层基础上的安全协议,为计算机上的Shell(壳层)提供安全的传输和使用环境。
对于笔者这种不擅长服务器操作的人来说,就是一个可以远程登录服务器的工具
如何使用
ssh root@127.0.0.3 //如果ssh服务器默认端口没改动的话,回车之后就可以输入密码了
ssh root@127.0.0.3 -p 2222 //服务器ssh端口改掉的话,登录的时候要指明端口 -p,这里的-p不是指的password,而是port,回车之后同样需要输入密码
免密码登录
使用密匙(shi)登录的原理
客户端有一对密匙(shi),包括公匙,私匙,需要先把公匙存储到服务器。然后下次客户端登录的时候就发送一段用密匙加密的文本,服务器用公匙解密,成功则直接登录,失败则登录不成功
如何配置
如果客户端还没有密匙的话,需要先生成一下
ssh-keygen
然后一路回车就可以了
ssh-copy-id root@127.0.0.3 把公匙存储到服务器上
下次就可以直接登录,不需要密码了
ssh root@127.0.0.3
ssh-copy-id
命令的原理就是把客户端生成在$HOME/.ssh/id_rsa.pub里面的文本复制到服务器$HOME/.ssh/authorized_keys中,当然你直接复制也是一样的,不过就怕少了一个字符,就很难发现错误了
不过有时候服务器是没有authorized_keys这个文件的,需要新建一个,但是记住,一定要给这个文件设置权限
chmod 600 authorized_keys
好了,现在我们可以使用ssh root@127.0.0.3
无须密码登录了,可以难倒需要我们每次都记住ip吗?
当然不是啦
免账号登录
在~/.ssh/config
(如果没有可以新增一个)中,这些都可以配置的
配置格式如下
Host ddz
HostName 120.76.251.39
Port 22
User root
IdentityFile /Users/zhangran/.ssh/id_rsa
一看这个配置就很明白吧。
好了,终于可以这样子登录了
ssh ddz //ok