集群服务器免密登录

版权声明:本文为博主原创文章,转载请注明来源。开发合作联系[email protected] https://blog.csdn.net/luanpeng825485697/article/details/85017004

现在有两个服务器,ip分别为172.16.0.230和172.16.0.221

修改服务器的hostname

在172.16.0.230上修改/etc/hostname的内容为

master2

在/etc/hosts中添加内容为

172.16.0.230    master2
172.16.0.221   master1

在172.16.0.221上修改/etc/hostname的内容为

master1

在/etc/hosts中添加内容为

172.16.0.230    master2
172.16.0.221   master1

两台服务器重启,hostname生效。

为用户添加sudo权限,并设置免密sudo

先添加用户

useradd -d /home/user1 -m user1
passwd user1     # 设置user1的用户密码

添加sudo权限:

echo "user1 ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/user1
sudo chmod 0440 /etc/sudoers.d/user1

最好直接在/etc/sudoers中添加

user1 ALL = (root) NOPASSWD:ALL

安装ssh

两台服务器上执行下面的命令

apt-get update
apt-get install openssh-server

安装是ssh2的协议,所以可能会与ssh1的使用有些不同。

生成公钥私钥

在两台服务器上执行

ssh-keygen  -t rsa
一路回车,会在~/.ssh/目录下生成id_rsa  私钥, id_rsa.pub  公钥

设置权限(一定要设置正确的权限,才能正常访问)

chmod 700 ~/.ssh/  
chmod 600 ~/.ssh/id_rsa 
chmod 600 ~/.ssh/id_rsa.pub   
chmod 644 ~/.ssh/known_hosts  
chmod 600 ~/.ssh/authorized_keys 

配置hostname免密访问

在两台服务器上的~/.ssh/config加入

Host master1
    HostName 172.16.0.221
    Port 22
    User root
    IdentityFile  ~/.ssh/id_rsa

Host master2
    HostName 172.16.0.230
    Port 22
    User root
    IdentityFile  ~/.ssh/id_rsa

在两台服务器上执行

将公钥共享给远程服务器,并输入密码
ssh-copy-id -i ~/.ssh/id_rsa.pub master1 -f
ssh-copy-id -i ~/.ssh/id_rsa.pub master2 -f

以后在两台服务器上下面的命令就不需要设置免密了。

ssh master1
ssh master2 

猜你喜欢

转载自blog.csdn.net/luanpeng825485697/article/details/85017004