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

Linux 配置双机SSH信任 实现免密远程登录

每日感悟:

保持警醒,时刻反思自己;保持空杯,不断提升自己。

SSH信任实现免密登录

一、使用场景及实现原理

1、使用场景

有两台服务器A、B,需要经常进行互相访问,但是两者每次访问时,都需要验证用户名和密码,这样太麻烦了!

如果能免密码直接登录就好了~

所以就有了SSH添加信任实现免密码登录了。

2、实现原理

它是使用一种被称为"公私钥"认证的方式来进行ssh登录。

"公私钥"认证方式简单的解释是:

首先在客户端上创建一对公私钥

(公钥文件:~/.ssh/id_rsa.pub;私钥文件:~/.ssh/id_rsa),

然后把公钥放到服务器上(~/.ssh/authorized_keys),自己保留好私钥。

当ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配。

如果匹配成功就可以登录了。

二、Linux/Unix双机建立信任

1、在A机生成证书

在A机app用户下执行ssh-keygen命令,在需要输入的地方,直接回车,生成建立安全信任关系的证书。

连续三次回车后密钥生成成功。

# ssh-keygen -t rsa

注意:在程序提示输入passphrase时直接输入回车,表示无证书密码。

上述命令将生成私钥证书id_rsa和公钥证书id_rsa.pub,存放在当前用户家目录的.ssh子目录中。

这里使用的哪个用户,后面免密登录也是这个用户哦

查看~/.ssh生成的密钥文件

# cd ~/.ssh

# ll

2、A对B建立信任关系

到机器B的某个用户(我这里使用的是app用户)家目录的.ssh子目录中,

打开authorized_keys文件(若没有则创建),

把A机生成的id_rsa.pub公钥文件内容拷贝过来。

(若要添加多台服务器互相信任,只需在该文件中依次把对方的公钥拷贝过来即可)

3、 B对A建立信任关系

在B机上执行同样的操作,建立B对A的信任关系。

# ssh-keygen -t rsa

然后把B生成的id_rsa.pub公钥文件内容拷贝到A的~/.ssh/authorized_keys文件中。

三、测试

分别在A、B机上执行

ssh 对方IP

即可免密登录。

本文首发于本人csdn账号yolanda0606博文中:

1

END

1

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

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券