SSH 实现免密登录

Posted

tags:

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

参考技术A

本文介绍如何通过 SSH 实现免密登录。

工作环境:

SSH 是一种网络协议,用于计算机之间的加密登录。SSH是英文Secure Shell的简写形式。

通过使用SSH,你可以把所有传输的数据进行加密更加安全可靠。使用SSH,还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。SSH 有很多功能,它既可以代替 Telnet,又可以为FTP、Pop、甚至为 PPP 提供一个安全的"通道"。

SSH 协议更多内容看最后附的链接,有兴趣的朋友可以了解一下。

什么是免密登录呢?

通常我们登录 SSH 是通过账号和免密来登录的,输入 ssh username@ip-server 然后输入密码。

如果每次都输入密码会很麻烦,而且要对多台主机进行自动化管理,每次都要输入密码不现实。我们可以配置公钥和密钥进行免密登录。 免密登录做的事情其实就是通过 SSH 的公钥和密钥来校验身份信息。

首先你要知道每台主机有一份公钥和一份私钥。我们要做的事情可以用一张图来表示:

图片的操作依次为

1.生成密匙对

之后可以在 /root/.ssh 中看到生成的密匙对

2.拷贝一份 A 的公钥给 B

此时在 B 的 authorized_keys 中就会有一份 A 的 id_rsa.pub 公钥信息。

注:第二步操作的做的事情其实就是一个拷贝密钥的工作,也可以手动拷贝,但是用上面的命令更方便。

3.最后我们就可以免密登录,也就是不输入密码 A 就可以登录 B

192.168.0.10 为 B 的 ip 地址

如果要退出登录,输入 exit 即可。

192.168.0.10 是 ip 地址,也就是说登录的时候我们还要输入一次 ip。我们可以给每个主机配置一个别名,用 ssh ip-server 的方式登录。

就像人有身份证也有名字一样,我们可以通过 ip 来辨识主机。给他一个别名就是给一个 hostname 。

可以用 hostname 来查看你的主机名,要改主机名改他的配置文件

重启生效

这样主机名已经改掉了,还差一步。我们要让主机名和我们的 ip 关联在一起,修改 /etc/hosts 文件

例如:

两边都配置完成可以用 ssh slave 直接连接 slave 。如果你想自己免密连接自己那就按照上面的步骤给自己配置一份密匙就行了,动手试试吧。

SSH 协议介绍

数字签名是什么

SSH原理与运用(一):远程登录

SSH原理与运用(二):远程操作与端口转发

如何在CentOS 7上修改主机名

以上是关于SSH 实现免密登录的主要内容,如果未能解决你的问题,请参考以下文章

linux上ssh免密登录原理及实现

SSH免密登录一步搞定

批量实现ssh免密登录

Hadoop集群配置免密SSH登录方法

ssh免密登录

LINUX设置ssh免密登录