紫影基地

 找回密码
 立即注册
查看: 495|回复: 0

Windows Cmd以及Python实现端口转发

[复制链接]
阅读字号:

57

主题

62

帖子

904

积分

高级会员

Rank: 4

积分
904
发表于 2021-11-16 19:05:28 | 显示全部楼层 |阅读模式
本帖最后由 moonstar 于 2021-11-16 19:07 编辑

    以前笔者写过一篇文章来梳理ssh端口转发-SSH端口转发的妙用 。

    今天笔者发现还两个方法来实现端口转发功能。
    实验环境:虚拟机ubuntu的网络为主机模式,即只能宿主机访问 。现在在宿主机上创建端口转发到虚拟机的22端口,可以实现宿主机局域网中,所有设备都能访问到只能宿主机访问的虚拟机上。这样可以简化远程运维,不用多次ssh。

1、Windows CMD端口转发,netsh工具的portproxy功能,使用参数v4tov4 (ipv4)
    下面的第一个命令是建立端口转发:netsh interface portproxy add v4tov4 listenaddress=localhost listenport=86 connectaddress=192.168.182.131 connectport=22
    第二个是查看本机添加的所有规则:netsh interface portproxy show all
    第三个是删除指定规则:netsh interface portproxy delete v4tov4 listenaddress=localhost listenport=86
    第四再次查看规则已经删除:netsh interface portproxy show all

190633yryumt09gur0u1ya.png

2、python socket模块实现端口转发
    代码参考github:rtcp/rtcp.py at master · knownsec/rtcp (github.com) 或者python-port-forward/port-forward.py at master · vinodpandey/python-port-forward (github.com) 。后者笔者觉得更加好,可以使用配置文件或者命令参数,还有错误日志error.log。 当然还有很多其他的功能代码可以实现,下面是使用第一个python笔者做的测试。第二个脚本较老,需要修改thread模块为_thread,同时将file修改为open。

190636nnpyzpubmfkwkvk6.png

来源:https://www.jianshu.com/p/8151d071eac7
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|紫影基地

GMT+8, 2025-1-12 15:54 , Processed in 0.086384 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表