CentOS7下配置多台主机间SSH免密服务

1. 修改机器名称

1. 输入命令,检查机器名

hostname

2. 输入命令,临时修改主机名

hostname 主机名

3. 通过vi命令,修改/etc/hostname文件内容,添加主机名

主机名

4. 通过vi命令,修改/etc/hosts文件内容,添加每一个机器ip 机器名称

IP地址1 主机名1
IP地址2 主机名2
IP地址3 主机名3

5. 通过vi命令,修改/etc/sysconfig/network文件内容,添加网络中识别的主机名

NETWORKING=yes
HOSTNAME=主机名

6. 通过:wq命令,保存文件,重启系统生效

2. 添加自定义用户到sudoers中

  • 添加用户hadoop后,为通过sudo命令在hadoop用户下使用root权限,需要修改sudoers文件
  • 修改/etc/sudoers,添加内容
hadoop ALL=(ALL) NOPASSWD: ALL

重启系统,使之生效

3. 修改sshd服务配置文件

  • 需要编辑/etc/ssh/sshd_config打开sshd服务.
  • 放开标注的文档(去掉#):
#RSAAuthentication yes
#PubkeyAuthentication yes

重启服务,使刚才的修改生效

systemctl restart sshd.service 

4. 生成公钥和私钥

1. 在自定义用户家目录下创建新目录.ssh,授权777

cd 
mkdir .ssh
chmod 777 .ssh

2. 在.ssh目录下为每台机器生成密钥

ssh-keygen -t 'RSA'

3. 复制公钥内容到authorized_keys文件,授权644

cat id_rsa.pub >> authorized_keys
chmod 644 authorized_keys

4. 通过scp命令(此时要密码)传输authorized_keys文件,将所有机器生成的公钥内容追加进该文件

scp authorized_keys hadoop@主机名2:/home/hadoop/.ssh/
cat id_rsa.pub >> authorized_keys

5. 检查所有机器的authorized_keys文件是否相同且包含所有机器的公钥

6. 测试使用ssh进行无密码登录

ssh 主机名2
exit

猜你喜欢

转载自blog.csdn.net/wxfghy/article/details/80246136