配置SSH Forward提升安全性

it2022-05-09  63

目标

MacBook ---(SSH)---> BastionServer ---(SSH)---> RemoteServer   说明 BastionServer、RemoteServer SSH端口号均为60666用户名为thatsit密钥对在MacBook上生成

问题

首先在此场景里面,为了保障服务器的安全性,我们登录服务器都是采用密钥登录的,禁止密码登录。 因此,如果不启动ssh forward,想要实现上述功能,我们需要做的是把公钥存储在BastionServer和RemoteServer上,同时还需要把私钥分别存储在MacBook和BastionServer上。如此一来你的私钥就被存储在了一个本地之外的位置,尽管BastionServer是有相应访问策略的,还是存在很大的安全隐患。如果你的BastionServer被攻破了,剩下的RemoteServer那就只能眼睁睁地等待被搞了。

思路 

而如果使用了SSH Forward的功能,上述问题将迎刃而解~ 我们需要把公钥存储在BastionServer、各个RemoteServer上,公钥嘛,无所谓~ 至于私钥,只需要存储在你的本地(MacBook)就好了。 除此之外,就是需要简单配置下SSH Forward,分分钟搞定~

开干

一、跳板机ssh相关配置 1,开启ssh forward agent [thatsit(0)@BastionServer-02 12:19:56 ~]# cat .ssh/config ForwardAgent yes [thatsit(0)@BastionServer-02 12:19:59 ~]#   2,指定ssh连接端口为公司常用的ssh端口 [thatsit(0)@BastionServer-02 12:19:59 ~]# grep Port /etc/ssh/ssh_config # Port 22 Port 60666 [thatsit(0)@BastionServer-02 12:20:12 ~]#   二、mac上的配置,ssh-add添加下私钥 添加完成之后可以通过 ssh-add -L进行查看   注意:在生成ssh密钥对的时候,一定要加下密码,多一重安全保障。  

使用

Step1,从MacBook登录到BastionServer 1,登录跳板机的时候指定-A参数启用SSH Forward即可 ssh -A user@BastionServerIP -p 60666   2,如果不想每次都输入-A参数,我们可以通过以下两种方式来做 ①:修改 ~/.ssh/config配置,加上 ForwardAgent yes Host BastionServerIP HostName BastionServerIP ForwardAgent yes 这样就可以使用ssh thatsit@BastionServerIP -p 60666来连接了   ②:简单粗暴,配置下alias就好了~哈哈 alias jumper-server-login='ssh -A -p60666 thatsit@BastionServerIP'

 

Step2,从BastionServer登录到RemoteServer 因为在跳板机上开启了ssh forward agent,并且指定了ssh连接端口为常用的端口号,此外因为ssh登录的时候默认使用的用户名就是当前本地登录的用户名,因此只需要 ssh thatsit@RemoteServer 或者 ssh RemoteServer 即可登录到RemoteServer   ==== Done ====

转载于:https://www.cnblogs.com/thatsit/p/6599309.html


最新回复(0)