免费登录就是 服务器配置下设置,允许免密登录.然后客户端生成秘钥对,把公钥放在服务器,客户端就可以登录服务器了(这里以centos为例)。
下面说明步骤:
1.检查服务器的设置,需要修改sshd_config
- vim /etc/ssh/sshd_config
解开注释:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
重启sshd
- service sshd restart
2.客户端生成秘钥对,将公钥拿出来
ssh-keygen -t rsa
- cat ~/.ssh/id_rsa.pub
3. 登录服务器是需要用户的,要登录为哪个用户,就在那个用户下 也执行下ssh-keygen -t rsa (会生成.ssh目录,这样就不用自己调整权限了,也可以自己新建目录.ssh然后修改权限700)
进入到.ssh目录,然后把cat出来的公钥,追加到authorized-keys这个文件后面。
修改文件权限 chmod 600 authorized-keys (该文件权限必须为600,系统有内部校验)
4. 现在就可以了免费登录了(前提是输入密码可以登录,排除了网络不通、防火墙 或者端口问题)
5.要实现相互免费,把服务器当成客户端,再来一次操作就可以了,也可以在host里面给ip命名自定义路由,或者在环境变量里面自定义命令来简化面密登录的输入过程