[原创]socks代理篇:工具Proxifier+regeorg的联合运用

2014-11-30 14:12:10 31 19327 1


关于socks代理,据笔者理解,他应该是从osi通信层进行全局代理。关于这个,论坛里的大神求科普。(socks代理与socket通信有什么区别?)
关于socks代理,笔者百试不爽,在以往的帖子中有所提汲,《ssh socks动态端口转发在项目中的应用》《php动态socket代理脚本怎么写》《关于webshell下socket代理反弹的事情》
在后面两个帖子中笔者得知reGeorg的确是一个好东西。
能拿到socks代理,那就爽了,大多数软件(语言)支持socks代理,进行数据代理就可以无视内网了。
笔者遇到的问题如下:
一个内网的svn:外网可以访问部分代码仓库
假设这个svn仓库根地址为 https://111.111.111.111:2222/m20
有一个代码分支库名字分别为
https://111.111.111.111:2222/m20/repo1
他还引用内网的
https://192.126.111.125:2222/m20/repo1

https://111.111.111.111:2222/m20/repo1是通过某种端口转发手段把内网192.126.111.125:2222映射到公网。而192.126.111.125就是真正svn仓库的内网Ip地址
那么问题来了:每次更新代码,引用的部分没办法更新,每次都要进内网,烦不烦?
最近得知regeorg可以获得socks代理,今天偶尔想起Proxifier可以在windows设置全局socks代理,笔者想:用regeorg+Proxifier应该能代理进内网了?
于是写了一个
python reGeorgSocksProxy.py -p 8080 -u [url]http://111.111.111.111/1.php[/url]
然后在Proxifier设置了socks代理,问题就解决,可以顺便访问内网。贴图为证。




笔者使用regeorg遇到一问题:
Exception in thread Thread-115:
Traceback (most recent call last):
  File "D:\develop\Python27\lib\threading.py", line 810, in __bootstrap_inner
    self.run()
  File "D:\develop\Python27\lib\threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "reGeorgSocksProxy.py", line 324, in writer
    raise ex
error: [Errno 10053]
根据Errno 10053搜索,网上说可以在accept之前暂停几秒。
也就是可以在在
 while True:
        try:
            sock,addr_info=servSock.accept()
            sock.settimeout(SOCKTIMEOUT)
            log.debug("Incomming connection")
            session(sock,args.url).start()
        except KeyboardInterrupt,ex:
            break
        except Exception,e:
            log.error(e)
设置线程延迟。是否有机油愿意改进一下regeorgproxy.py,添加一个可选参数 [-w],允许一个线程延迟特定的毫秒
然后执行 python reGeorgSocksProxy.py -h
得到 usage: reGeorgSocksProxy.py [-h] [-l] [-p] [-r] -u  [-v] [-w]
如果填写 -w 10 将允许线程延迟10毫秒

关于作者

该隐55篇文章1058篇回复

街头要饭的

评论31次

要评论?请先  登录  或  注册