前提
准备两台服务器和一个客户端机器,我这里是两个阿里云的服务器,服务器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到本地暂存,接下来会用到。
这里需要说明一点:我想通过服务器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
6B170AC6-98BF-43B8-AF27-8DF7437D561D.png注意需要对authorized_keys执行以下操作
chmod 600 ~/.ssh/authorized_keys
五、配置config文件
六、测试从A登录B
这里不提示输入密码就直接登陆成功啦
B347311D-1C38-42C5-9189-E21C625225F8.png
思考:
可以考虑下想要从B服务器免密登录到A服务器应该怎么做?
不懂就药问
网友评论