没有密码怎么配置互信?

数据库或大数据集群部署时,经常需要进行服务器间免密(互信)操作,有些公司的DBA或大数据运维工程师拥有相应服务器的密码,而对于安全意识比较强的公司,DBA无操作系统账号的密码,只能通过跳板机(堡垒机)登录相关服务器,此时该如何配置互信呢(可能有些工作了十几年的人员都还不会),本文通过CentOS7操作系统进行演示。

成都创新互联是专业的民乐网站建设公司,民乐接单;提供成都网站设计、成都网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行民乐网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

1、有密码的情况

(1)生成 SSH 密钥对

在本地计算机上使用 ssh-keygen 命令生成 SSH 密钥对。生成的密钥对包括公钥和私钥,公钥将用于免密登录。

ssh-keygen

在生成密钥对时,需要指定密钥类型(默认为 RSA),密钥长度(默认为 2048 位),并为私钥设置密码(可选)。

(2)将公钥复制到服务器

将本地计算机上的公钥复制到服务器上,可以使用 ssh-copy-id 命令,该命令会将公钥添加到服务器上的 authorized_keys 文件中。要使用此命令,需要在命令中指定要将公钥添加到的服务器的用户名和 IP 地址。

ssh-copy-id user@server_ip

(3)测试免密登录

测试使用 SSH 连接到服务器:

ssh user@server_ip

如果一切正常,将无需输入密码即可登录到服务器。

需要注意的是,为了确保安全,应该禁用密码登录。可以编辑服务器上的 SSH 配置文件 /etc/ssh/sshd_config,并将 PasswordAuthentication 选项设置为 no,以禁用密码登录。完成后,重新启动 SSH 服务以应用更改:

sudo systemctl restart sshd

这样,就可以在 CentOS 服务器上配置 SSH 公钥认证,实现免密登录了。

2、无密码的情况

(1)生成SSH密钥对

ssh-keygen

在生成密钥对时,需要指定密钥类型(默认为 RSA),密钥长度(默认为 2048 位),并为私钥设置密码(可选)。

(2)手动拷贝公钥到目标服务器

手动拷贝上一步生成密钥对中的公钥内容,公钥存储在 ~/.ssh/id_rsa.pub文件中,将其复制到目标服务器的authorized_keys文件中。

注意,authorized_keys每一行代表一个已知主机,每行末尾不要有多余的字符(如空格等),否则将无法登录

(3)测试免密登录

测试使用 SSH 连接到服务器:

ssh user@server_ip

如果一切正常,将无需输入密码即可登录到服务器。

3、小结

公钥与私钥的用途:

在 SSH 连接中,公钥和私钥用于 SSH 公钥认证。当您连接到远程服务器时,服务器会向您的 SSH 客户端发送一个加密的请求,其中包括您本地计算机上的公钥。如果服务器在其 authorized_keys 文件中找到您的公钥,则服务器将认为您是可信任的,并允许访问服务器而不需要输入密码。

authorized_keys的作用:

authorized_keys 是 SSH 协议中用于公钥认证的文件名。当使用 SSH 连接到远程服务器时,SSH 客户端会向服务器发送一个加密的请求,其中包括本地计算机上的公钥。服务器会检查在 authorized_keys 文件中是否存在对应的公钥,如果存在,则认为是可信任的,并允许访问服务器而不需要输入密码。

值得注意的是,authorized_keys 文件是一个文本文件,每行包含一个公钥。通常情况下,当在本地计算机上生成 SSH 密钥对时,会自动在 ~/.ssh/authorized_keys 文件中添加本机公钥。如果需要添加其他用户的公钥以实现 SSH 公钥认证,则可以将该用户的公钥添加到服务器上的 authorized_keys 文件中。

当前标题:没有密码怎么配置互信?
本文网址:http://www.hantingmc.com/qtweb/news18/483118.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联