想必大家都有使用ssh登陆的过程了,那么,怎么设置ssh免密登陆呢?下面有一些我的总结:
环境:服务器主、从
主服务器:192.168.1.1
从服务器:192.168.1.2
实现主服务器ssh登录从服务器不需要输入登录密码(ssh 用户名@ip地址)
如果没有免密登陆,那么我们执行:ssh ip地址,会提示我们输出ip主机root的密码(默认是root用户的哦)。但是小伙伴们有没有想过,如果我们执行的过程中,需要不输入密码登陆会怎么办呢?反正博主我就是个这么懒的人。所以博主就get了这个技能来耍耍:
—————————————————————————————————————————————————
那么正式开始:
首先执行:ssh-keygen -t rsa (主从服务器都需要执行)
这时候/root/.ssh/下面会生成私钥和公钥分别是id_rsa,id_rsa.pub
然后将所有服务器上的公钥合并到一个文件authorized_keys中(一定是这个文件,博主就在这里吃了个亏,这个文件也是在/root/.ssh/下面):
主服务器上的id_rsa.pub拷贝到authorized_keys:cat id_rsa.pub >> authorized_keys
从服务器上的id_rsa.pub拷贝到authorized_keys:ssh 192.168.1.2 cat /root/.ssh/id_rsa.pub >> authorized_keys
备注:ssh 192.168.1.2 "cat /root/.ssh/id_rsa.pub >> authorized_keys" 大家感受一下这一句的意思
也就是说 authorized_keys 文件有主、从服务器id_rsa.pub信息
将 authorized_keys、known_hosts分别复制到其他服务器(现在只有主服务器上有)下的/root/,.ssh/下面
scp authorized_keys 192.168.1.2:/root/.ssh
scp known_hosts 192.168.1.2:/root/.ssh/
备注:known_hosts 也在/root/.ssh/下面
这个时候在执行ssh登录就不会需要输入密码了
—————————————————————————————————————————————————
小伙伴们有其他的意见可以告诉博主哦,有不对的地方欢迎大家指正,博主会第一时间修改的。
话说博主还是想要复制啊!这个ssh 192.168.1.2都需要一个个的打字很难受啊╭(╯^╰)╮