快速配置Linux下SSH无密码登录
@(Linux配置)
使用ssh免密登录在分布式集群部署中基本上都需要,比如Hadoop集群的部署。本文简述如何快速实现多台机器ssh免密登录。
###准备工作
配速配置前先做防火墙和selinux的关闭
针对Centos的防火墙,
centos 7:
systemctl stop firewalld.service #停止 systemctl disable firewalld.service #禁用
之前的版本:
service iptables stop #停止 chkconfig iptables off #禁用
selinux的关闭
修改/etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled
然后reboot
重启系统。
以上操作可以通过XShell的批量会话操作一次性完成。
###SSH无密码登录配置
ssh配置其实不难,难的是多台的情况下,如果没有规律,就很容易漏掉。我采用一个跳板机的方式,同样使用XShell的批量会话操作。先使用相同的账户登录,如root。然后执行ssh-keygen -t rsa
生成公钥和私钥对,放在路径~/.ssh
路径下。批量拷贝id_rsa.pub
到某台机器的tmp路径下,然后使用cat id_rsa.pub.** >> authorized_keys
。这样就生成了包含所有公钥的authorized_keys文件。然后再一一拷贝到所有机器的.ssh路径下。
批量将.ssh路径和authorized_keys设置文件权限,依次是
chmod 700 .ssh chmod 600 authorized_keys
OK,就此配置结束
###SSH非22默认端口的登录测试
ssh hostname | IP [-p port