Pages

Thursday, 14 July 2016

利用pyproxy-by-impakho翻墙

PyProxy

一个简单的http代理,可以帮助你穿越防火墙

依赖

  • socket
  • threading

怎样使用?

服务端:

def main():
    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    sock.bind(('0.0.0.0', 5200))
    sock.listen(4096)
你可以在这里设置服务器IP和监听端口,还可以修改最大TCP连接数。
然后,运行 python server.py 启动服务端。
(不过,python server.py是运行在前台的,容易退出,我们可以利用systemd把该命令运行为service:
nano /etc/systemd/system/pyproxy-by-impakho.service
内容为:

[Unit]

After=network.target


[Service]

ExecStart=/usr/bin/python /root/PyProxy-by-impakho/server.py

Restart=always


[Install]

WantedBy=multi-user.target


然后运行:

systemctl start pyproxy-by-impakho

systemctl enable pyproxy-by-impakho


服务器端搭建完成。)

如果服务器并没有自带python,那么运行:

apt-get install -y python python-pip python-setuptools 

  

客户端:

def main():
    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    sock.bind(('127.0.0.1', 3080))
    sock.listen(256)
你可以在这里设置本地客户端的监听端口,还可以修改最大TCP连接数。
def clientIn(client, address):
    sockr = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    try:
        sockr.connect(('vps-public-ip', 5200))
你应该把服务器的公网IP和端口填在这里
然后,运行 python client.py 启动客户端。

最后

在你的软件中,使用客户端IP和端口来配置http代理,不是socks代理
祝你愉快!

from  https://github.com/impakho/PyProxy
----