关于用Python做Port Forwarding

2011-01-02 18:13:52 +08:00
 CupTools
想用PHP做,但想想,不行,效率不行 -.=

然后,想用NodeJS,但是这个东西太多复杂,放弃了。

Google了一下,找到了这个超爽的代码:

http://code.activestate.com/recipes/483732/

(超过了2000字符啊,MJJ啊MJJ啊。。)

具体用法:
if __name__ == '__main__':
forwarder('127.0.0.1', 7000, '127.0.0.1', 22)
asyncore.loop()

将本地的7000转发到本地的22。

试用了一下,非常好。

现在有一个问题,有没有同学能够把他改成UDP的?。。。我个人不会Python,只会PHP
6648 次点击
所在节点    Python
14 条回复
Livid
2011-01-02 18:16:23 +08:00
可以用 SSH Tunnel 吧。
CupTools
2011-01-02 18:19:26 +08:00
@Livid 不是想Forward SSH,而是想用Python的强大性能来做一个类似软件防火墙。想象你有一台服务器,1Gbps口,后端一台100Mbps的Web Server。然后整一台1Gbps口的服务器跑这个Python脚本来挡DDoS。或者,如果某些地区是8.8.8.8封锁,然后用这个脚本来弄一个代理(Twitter也可以),多么美好。(不过这个是TCP的,一般DNS请求是UDP的)
Livid
2011-01-02 18:21:45 +08:00
ssh -L22:localhost:7000 user@localhost
9hills
2011-01-02 18:22:10 +08:00
iptable或许效率更高点?
est
2011-01-02 18:22:38 +08:00
@CupTools python来挡DDoS。。。膜拜一个。。。
CupTools
2011-01-02 18:22:54 +08:00
@Livid -.= 不是这个意思。。。。这个脚本是充当于一个Proxy
CupTools
2011-01-02 18:23:23 +08:00
@est 不是用Python挡,是用 1G口挡
CupTools
2011-01-02 18:23:38 +08:00
@9hills 这个太烦
9hills
2011-01-02 18:27:12 +08:00
@CupTools 很烦么。。。端口转发规则很简单啊

python的话效率是个大问题,何况你还要挡ddos。
CupTools
2011-01-02 18:28:05 +08:00
@9hills Windows下面有iptables么 -.=

就是不想用iptables才用Python。况且,Python还可以做很多吓死人的事情,iptables不能
ayanamist
2011-01-05 11:26:09 +08:00
@CupTools 你需要的应该是微软的ISA,而不是用Python脚本整的这些东西……
CupTools
2011-01-05 12:50:31 +08:00
@ayanamist 从来不用微软的东西,除了Microsoft Office是迫不得已 -.=
ayanamist
2011-01-05 12:54:29 +08:00
@CupTools 你都在用Windows做服务器了,还装什么……要不你就用Linux做防火墙,要不你就用微软一整套的方案。装逼的后果是很凄惨的。
CupTools
2011-01-05 23:17:41 +08:00
@ayanamist 装装逼更健康

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/6648

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX