配置到第二台虚拟机显示报错,第一台成功,不知道什么原因,求解答,尝试了多种办法

关注引自免费微信小程序:皆我百晓生
在CentOS中配置SSH免密登录,以实现Hadoop集群中的节点间无密码互访,通常需要以下步骤。由于您提到第二台虚拟机配置时出现错误,请按照以下流程排查并重新配置:
生成SSH密钥对: 在第一台虚拟机(主机A)上执行:
ssh-keygen -t rsa
这将会在~/.ssh/目录下生成一对密钥:id_rsa(私钥)和id_rsa.pub(公钥)。默认情况下,系统会提示你三次回车,无需设置密码。
将公钥复制到目标机器: 将主机A的公钥复制到第二台虚拟机(主机B)的授权keys列表中:
ssh-copy-id -i ~/.ssh/id_rsa.pub 用户名@第二台虚拟机IP或主机名
请确保替换“用户名”为实际用户名称,以及“第二台虚拟机IP或主机名”为实际值。
检查权限和文件内容:
确保在主机B上的.ssh目录及其中的所有文件都具有正确的权限,例如:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
检查主机B的authorized_keys文件内是否包含主机A的公钥信息。
防火墙与SELinux配置: 确认CentOS的防火墙没有阻止SSH端口(默认为22),可以临时关闭防火墙测试:
systemctl stop firewalld
若因SELinux导致的问题,可尝试调整其策略或者暂时禁用SELinux进行测试。
网络问题排查: 确保两台虚拟机之间的网络连接正常,可以通过ping命令测试。
SSH服务重启: 在主机B上重启SSH服务以便新添加的公钥生效:
systemctl restart sshd
完成以上步骤后,应该可以在主机A上通过ssh直接免密登录到主机B。如果仍有问题,请查看/var/log/secure或/var/log/auth.log日志文件,查找具体的错误信息以进一步定位问题所在。