Linux——配置服务器间的免密登录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux——配置服务器间的免密登录相关的知识,希望对你有一定的参考价值。

参考技术A

ssh-keygen 命令 用于为“ssh”生成、管理和转换认证密钥,它支持RSA和DSA两种认证密钥。SSH 密钥默认保留在 ~/.ssh 目录中。如果没有 ~/.ssh 目录,ssh-keygen命令会使用正确的权限创建一个。

执行完命令后,会有几个选项给你选择,一般来说直接回车,使用默认配置即可。需要注意的是, 如果本身服务器已经生成过ssh秘钥了,这一步可以省略
想知道秘钥曾经生成过,可以看步骤二。

正常来说,如果 ssh-keygen 命令执行成功,我们可以在目录中看到有 id_rsa (存放私钥)和 id_rsa.pub (存放公钥)两个文件

先简单介绍一下 ssh-copy-id 命令

ssh-copy-id 命令可以把本地主机的公钥复制到远程主机的 authorized_keys 文件上。authorized_keys 文件用来验证 client 。使用 ssh-copy-id 命令将本地公钥复制到远程主机之后可以实现免密登录远程主机。如果不传入 -i 参数, ssh-copy-id 使用默认 ~/.ssh/identity.pub 作为默认公钥。 如果多次运行 ssh-copy-id ,该命令不会检查重复,会在远程主机中多次写入 authorized_keys 。

注意,本地 ~/.ssh/id_rsa 的权限,chmod 400 ~/.ssh/id_rsa ,该文件包含用于授权的私钥, 如果该文件可以被其他用户访问,ssh 会忽略该私钥。

执行完上述命令后,我们后续就可以免密登录其他服务器了。

如果需要配置免密登录的服务器比较多,我们可以通过脚本来解决这些重复性的动作。

以上是关于Linux——配置服务器间的免密登录的主要内容,如果未能解决你的问题,请参考以下文章

原创三台CentOS7非root用户间实现相互间的免密登录

Linux服务器之间的免密登录脚本

Linux_185_基于公钥的免密登录原理

Hadoop集群配置免密登录和集群配置

Hadoop集群配置免密登录和集群配置

Linux ssh 两台服务器之间的免密通讯