Linux下两台机器设置免密登录

免密登录的原理是使用公钥加密技术(非对称加密)来实现身份验证。下面是免密登录的基本原理

  1. 生成密钥对:用户在本地生成一对密钥,通常是RSA密钥对。这对密钥包括两部分:公钥和私钥。公钥是可以分享的,而私钥必须保持私密。
  2. 复制公钥到远程服务器:用户将生成的公钥复制到远程服务器上,通常是将公钥追加到远程服务器上的~/.ssh/authorized_keys文件中。
  3. SSH连接:当用户尝试通过SSH连接到远程服务器时,客户端会发送请求以建立连接。远程服务器会检查请求中的公钥,并查找匹配的私钥。如果找到匹配的私钥,服务器会使用私钥进行解密,并与客户端发送的随机数据进行比较。
  4. 身份验证:如果比较成功,服务器将确认用户的身份,并允许连接。这是因为只有私钥持有者才能成功解密并提供正确的随机数据。这是一种强大的身份验证方法,因为私钥只应该由授权的用户拥有。
  5. 建立会话:一旦身份验证成功,SSH会话将建立,允许用户在远程服务器上执行命令或传输文件,而不需要再次输入密码。

免密登录的关键在于,私钥始终保持在本地,并且不应泄漏给其他人。公钥是安全的,可以在多个服务器上共享,因为它只能用于验证用户的身份,而无法用于生成私钥。这种方式提供了更高的安全性,因为即使公钥被泄漏,仍然需要私钥才能成功连接到服务器。

总的来说,免密登录的原理是通过公钥和私钥的加密和解密过程,以及与远程服务器上的公钥匹配来实现安全的身份验证,从而允许用户无需密码登录到远程系统。

具体操作如下:

现在有A、B两台机器,现在目的为A机器可以免密登录B机器

1、在A机器生成自己的公钥和私钥

#执行然后一路默认回车
ssh-keygen -t rsa

这将生成一个RSA密钥对,默认情况下存储在您的用户主目录下的~/.ssh目录中

2、将公钥复制到远程机器(这个过程需要输入机器B的密码或者密钥以验证)

ssh-copy-id 机器B的登录账号@机器B的IP

3、在机器A测试是否可正常登录到机器B通过免密的方式

机器B的登录账号@机器B的IP

复杂配置可参考:https://blog.csdn.net/zt15732625878/article/details/119558733

原创文章,作者:witersen,如若转载,请注明出处:https://www.witersen.com

(0)
witersen的头像witersen
上一篇 2023年9月13日 上午9:23
下一篇 2023年9月15日 上午4:05

相关推荐

发表回复

登录后才能评论