ssh免密登录配置

96
kevinLY
2016.05.16 09:15* 字数 573

前提

准备两台服务器和一个客户端机器,我这里是两个阿里云的服务器,服务器A的IP是47.88.78.39,服务器B的IP是115.28.59.2,还有我的客户端机器C。
A服务器有一个用户:admin 端口号我自己修改为36251(默认22)
B服务器有一个用户:devine 端口号默认22
默认三台机器上都已经安装了SSH

目的

想要达到的目的是,我想通过我的客户机C远程登录到服务器A,然后再通过服务器A不需要输入密码直接登录到服务器B。

步骤

下面通过我的真实的操作为你演示如何配置;
一、首先用客户机C通过SSH远程登录到服务器A;


2CA14B08-F321-4B28-A415-98CC7DBF47F8.png
使用命令登录:ssh -p 36251 admin@47.88.78.39

二、在服务器A上执行ssh-keygen -t rsa在~/.ssh目录下生成id_rsa, id_rsa.pub两个文件,其中id_rsa.pub是公钥,把里面的内容copy到本地暂存,接下来会用到。

49F1C3CD-637B-4958-9AAA-D069F3DD5155.png

这里需要说明一点:我想通过服务器A不需要密码登录到服务器B,这就需要把A服务上的公钥放到B服务器上,到这一步A服务器的操作都已经完成了,接下来操作B服务器。

三、通过C服务器连接到B服务器,重复一、二;
四、检查下服务器B, ~/.ssh目录下的文件下的文件


08986745-BC7F-4478-832F-630AFED1B8BC.png

确认目录下有没有authorized_keys 、config两个文件,如果没有就新建这两个文件;authorized_keys:文件是用来存储A服务器的公钥的;config是用来配置免密登录用户信息的;
接下来把 拷贝到本地的A服务器的公钥加入到B服务器的authorized_keys里


79BBD804-F14E-4A2F-8228-DC88E27ED523.png

注意需要对authorized_keys执行以下操作
chmod 600 ~/.ssh/authorized_keys
五、配置config文件

6B170AC6-98BF-43B8-AF27-8DF7437D561D.png

六、测试从A登录B
这里不提示输入密码就直接登陆成功啦


B347311D-1C38-42C5-9189-E21C625225F8.png

思考:

可以考虑下想要从B服务器免密登录到A服务器应该怎么做?

不懂就药问

服务器搭建
Web note ad 1