首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

一起学习如何配置SSH无密码登陆

在搭建Linux集群服务时,master服务器需要启动slave服务器的服务,如集群中的Slave服务器过多时,手动启动耗时耗力。如使用免密登录,master服务器就能通过程序执行启动脚本,帮我们将slave服务器的应用启动。而这一切是建立在ssh服务的免密码登录之上。所以要学习集群部署,就必须了解linux的免密码登录。

SSH无密码原理简介

1在Master上生成一个密钥对,包括一个公钥和一个私钥,并将公钥复制到所有的slave上。

2当master通过SSH连接slave时,slave生成一个随机数并用master的公钥对随机数进行加密,然后发送给master。

3 master收到加密数之后用私钥解密,并将解密数回传给slave,slave确认解密数无误之后就允许master无密码进行连接。

配置具体步骤

在root用户登陆情况下执行

1执行命令

ssh-keygen(一路回车)

cd .ssh/

ls -l

2把id_rsa.pub追加到授权的key里面并修改权限。执行命令:

cat id_rsa.pub >> authorized_keys

chmod 600 authorized_keys

3确保 cat /etc/ssh/sshd_config 中存在如下内容

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys

如需修改,则在修改后执行重启SSH服务命令使其生效:

service sshd restart

4将公钥复制到所有的slave机器上:

scp ~/.ssh/id_rsa.pub [slave_IP]: ~/

然后输入yes,最后输入slave机器的密码

5在 slave 机器上创建.ssh文件夹并赋予权限:

mkdir ~/.ssh

chmod 700 ~/.ssh

6追加到授权文件 authorized_keys 执行命令:

cat ~/id_rsa.pub >> ~/.ssh/authorized_keys

chmod 600 ~/.ssh/authorized_keys

7重复第3步

8验证命令:

在master机器上执行ssh [slave_IP]发现主机名由master_name变成slave_name即成功,最后删除id_rsa.pub文件

rm -r id_rsa.pub

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180202G05ZWV00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券
http://www.vxiaotou.com