当前位置:首页 - 博客 - 正文

linux下两台或多台主机之间免密登录

1.先分别查看两台主机的主机名和ip(可省略,用ip即可)

  1. //查看主机名
  2. hostname
  3. // 查看ip
  4. ifconfig

免登陆图片

修改主机名称

http://blog.speechb.com/detail/965432a2b7404005bf75543d8a9bf4ee

2.在两个用户下分别在里边添加两个用户的ip和主机名

注意这里的两个主机之间的ip要在同一个网段上(可省略,用ip即可)

  1. vi /etc/hosts

免登陆图片

3.两台主机都分配置好之后,分别测试一下是否成功,都能ping通之后接着下一步

  1. ping 主机1的用户名/主机1ip
  2. ping 主机2用户名/主机2ip

免登陆图片

4.开始配置免密登录,这里以主机1免密登录主机2为例

在主机1上执行

  1. ssh-keygen -t rsa //输入之后连续按四次回车键

免登陆图片

5.查看产生的文件,会看到产生了两个文件

在主机1上执行
cd .ssh

免登陆图片

6.输入

在主机1上执行
ssh-copy-id 主机2的主机名

输入之后按回车,会有如下提示,按下图操作即可

免登陆图片

到这里主机1免密登录到主机2就配置完了,如果要主机2免密登录到主机1,切换到主机2,重复上边步骤4~6即可。

总结:

配置免密登录,在主机Master下执行如下命令

  1. #方法一
  2. ssh-keygen -t rsa #执行命令后连续按4次回车
  3. cd ~/.ssh/
  4. cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
  5. scp ~/.ssh/authorized_keys root@123
  6. scp ~/.ssh/authorized_keys root@123
  7. #这里的root是用户名,如果你使用的是其他用户,那就对应的改为其他用户
  8. #这里的123是要免密登录的主机的名字
  9. #方法二
  10. ssh-keygen -t rsa #执行命令后连续按4次回车
  11. cd ~/.ssh/
  12. cp ~/.ssh/id_rsa.pub
  13. ssh-copy-id 主机1的主机名
  14. ssh-copy-id 主机2的主机名

常见问题

免密失败日志查看

  1. tail -f /var/log/secure

错误日志:Connection closed by 114.116.121.133 port 57340 [preauth]

解决方法

vi /etc/ssh/sshd_config

  1. Port <你的随机端口号>
  2. PermitRootLogin yes # 开启 root 登录
  3. PasswordAuthentication yes # 确保开启密码认证
  4. PubkeyAuthentication yes # 确保启用公钥认证(不开启无法免密登录)

修改完毕后,重新加载 SSH 配置:

  1. sudo systemctl reload sshd