ssh免登陆实现
背景
最近在维护mongo集群与spider集群之中,经常来回ssh 登录,非常的不方便,以下的操作可以省去大部分的工作精力
简短命令
我们可以切换到本地的ssh config 目录来重命名,这样就可以不用输入ip了
cd ~/.ssh/
vim config
结果展示
Host mongo001
HostName 192.168.8.4
Host mongo002
HostName 192.168.8.5
Host mongo003
HostName 192.168.8.6
免登录
1.在A机下生成公钥/私钥对
[hadoop@wang-PC ~]$ ssh-keygen -t rsa -P ''
敲击回车键即可,它在/home/hadoop下生成.ssh目录,.ssh下有id_rsa和id_rsa.pub。
2.把A机器下的id_rsa.pub复制到B机器下的.ssh/authorized_keys文件里
[hadoop@wang-PC ~]$ scp .ssh/id_rsa.pub hadoop@192.168.10.107:/home/hadoop/id_rsa.pub.hadoop_wang
hadoop@192.168.10.107's password
由于还没有免密码登录的,所以要输入密码
3.B机把从A机复制的id_rsa.pub.hadoop_wang添加到.ssh/authorzied_keys文件里
[hadoop@chen-PC ~]$ cat id_rsa.pub.hadoop_wang >> .ssh/authorized_keys
[hadoop@chen-PC ~]$ chmod 600 .ssh/authorized_keys
authorized_keys的权限要是600
4.A机登录B机
[hadoop@wang-PC ~]$ ssh 192.168.10.107
第一次登录是时要你输入yes,现在A机可以无密码登录B机了
5. 重启服务
如果出现还是无法登录的情况,有可能需要重启sshd服务,使用命令
service sshd restart
小结
登录的机子可有私钥,被登录的机子要有登录机子的公钥。这个公钥/私钥对一般在私钥宿主机产生。上面是用rsa算法的公钥/私钥对,当然也可以用dsa(对应的文件是id_dsa,id_dsa.pub),想让A,B机无密码互登录,那B机以上面同样的方式配置即可,把B的公钥复制过去添加到authorized_keys的末尾就行了,以上在需要登录192.168.8.4这台机器上时,可以直接ssh mongo001就可以了。相当方便
- 原文作者:大鱼
- 原文链接:https://brucedone.com/archives/554/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议. 进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。