晓波博客

争做优秀原创个人博客。

批量设置seccurecrt会话来ssh隧道端口转发。

这个方法是为了解决,集群主机很多是私网IP。公网无法直接登录,一般都是用跳板机跳转登录,或者不想直接暴露在公网中的主机。其实登录方式有很多种,就看想不想到的了。

这种登录方式必须有个登录主机能连接到要转发的主机,中间不能有防火墙,如果有必须放通相应的端口。

大致流程如下:

打开你的securecrt或者xshell,在建立连接的对话框中,右击选择属性-远程端口转发,单击添加,完成后确定。

本地的手工选择可以不打勾,默认使用的就是127.0.0.1。

接着我们打开crt存放会话文件的地址。具体的就是在你的crt路径下的\Data\Settings\Config\Sessions windows可以直接右击打开文件路径即可。

找到你的会话配置文件,右击记事本编辑。
查找到下面这行:
Z:"Port Forward Table V2"=00000001
test|127.0.0.1,5001|1|192.168.23.6|22||

然后我们就可以直接编辑了,确认你需要转发多少条,然后复制test开头的行,粘贴需要的行数。在你需要分列的地方打入特殊符号或者空格,然后放到excel中进行分列,这样就可以很方便的进行批量的改地址,连续的端口。做完以后再放入记事本中,利用查找替换,把空格替换掉。

上面说的可能有点晕,这只是跟你说下快速处理数据的方法,如果你要一个一个慢慢改,也是可以的只是个时间和效率的问题。改好后如下:
Z:"Port Forward Table V2"=0000006e
centos1-1|127.0.0.1,8033|1|192.168.1.222|80||
centos1-2|127.0.0.1,8023|1|192.168.1.212|80||
centos1-3|127.0.0.1,8032|1|192.168.1.221|80||
centos1-4|127.0.0.1,8024|1|192.168.1.213|80||
centos1-5|127.0.0.1,8025|1|192.168.1.214|80||
centos1-6|127.0.0.1,8026|1|192.168.1.215|80||
centos1-7|127.0.0.1,8027|1|192.168.1.216|80||
centos1-8|127.0.0.1,8028|1|192.168.1.217|80||

请注意:0000006e这个参数必须要改,如果不改的话直接回导致在crt中看不到这个转发。这个是16进制的数,的转发条目是110条,如果你53条是那么你的16进制数就应该是35,然后改成00000035。改的时候前面的6个0不要变动,要不然会出错。

如果不知道10进制转16进制的,可以百度转换网页,win 10的计算机左上角菜单切换到程序员就可以看到了。

完成后保存会话,然后重新打开crt。在属性中看看有没有刚才设置的转发表。接着链接那个会话的主机,然后就可以使用了。

例如,转发对端192.168.1.222主机的是80端口,本地端口是8033,那么就在浏览器上输入:127.0.0.1:8033就以访问到.222这台主机了,或者输入localhost:8033也是可以的。

如果,转发的是ssh端口,在会话中设置一下本地端口对应的主机,然后远程链接就可以了。

ssh test@127.0.0.1:5501

本文由 xiaobo 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

仅有一条评论

  1. suny suny

    学习了!

添加新评论