Sign inSign up

alexzhuo/shadowsocks2vpn

By alexzhuo

•Updated over 9 years ago

把VPN服务端的流量重定向到Shadowsocks客户端的服务器

Image
2

862

alexzhuo/shadowsocks2vpn repository overview

⁠Docker server for ShadowsocksR client to VPN

一个OpenVPN/PPTP 服务端。能够将VPN流量重定向至ShadowsocksR客户端,支持国内外分流。

⁠简介

由于众所周知的原因,如果把OpenVPN/PPTP服务端搭建在国外,一般是连接不上的,但是又想通过VPN的方式翻天朝防火墙(对于很多设备来说相当于0配置)可以把VPN的服务端流量定向到Shadowsocks客户端上,并且在此过程中加入GFWList或者大陆IP白名单实现分流功能。

国内路由表位置:/etc/ss_rules/china GFWList位置:/etc/dnsmasq.d/gfw_list.conf HAProxy配置文件地址:/etc/haproxy/haproxy.cfg SSR的配置文件地址:/etc/ss_rules/ss.json Pdnsd配置文件位置:/etc/pdnsd.conf OpenVPN服务端配置文件位置:/etc/openvpn/server.conf OpenVPN客户端.ovpn文件位置:/root PPTP服务端配置文件:/etc/pptpd.conf PPTP用户名密码文件:/etc/ppp/chap-secrets Privoxy配置文件:/etc/privoxy/config

ss-redir 默认端口12345 ss-local 默认端口1080 privoxy 默认端口8080

⁠配置ShadowsockR客户端

在使用之前需要配置SSR客户端,具体方法如下 SSR的配置文件地址:/etc/ss_rules/ss.json 注:上面的文件是配置SS客户端的信息,如果想搭配HAProxy实现负载均衡和高可用,请配置HAProxy

HAProxy配置文件地址:/etc/haproxy/haproxy.cfg 注:如果所有的SS服务端加密方式和密码均相同,则可以使用HAproxy实现负载均衡和高可用

⁠启动VPN服务端

此服务器应部署在天朝内,并配合境外SS服务器使用

OpenVPN协议:

OpenVPN需开放7000 UDP端口,适用于远程、公网、国内服务器、云等等。 客户端的.ovpn文件在容器的/root目录下,免费提供10个客户端文件。也可以通过浏览器访问容器80端口下载。注意需要修改.ovpn文件中的remote后IP为你的服务器IP

国内白名单分流模式 docker run -itd --privileged=true -p 0.0.0.0:7000:7000/udp alexzhuo/shadowsocks2vpn /etc/ss_rules/startforeignip.sh

GFWList分流模式 docker run -itd --privileged=true -p 0.0.0.0:7000:7000/udp alexzhuo/shadowsocks2vpn /etc/ss_rules/startgfwlist.sh

全局翻墙模式 docker run -itd --privileged=true -p 0.0.0.0:7000:7000/udp alexzhuo/shadowsocks2vpn /etc/ss_rules/startallip.sh

PPTP协议:

启动方式和OpenVPN协议相似,需要映射tcp协议的1723端口.

国内白名单分流模式 docker run -itd --privileged=true alexzhuo/shadowsocks2vpn /etc/ss_rules/startforeignip.sh

GFWList分流模式 docker run -itd --privileged=true alexzhuo/shadowsocks2vpn /etc/ss_rules/startgfwlist.sh

全局翻墙模式 docker run -itd --privileged=true alexzhuo/shadowsocks2vpn /etc/ss_rules/startallip.sh

注意,如果你客户端在连接PPTP服务器的时候出现了“错误619”(windows)并且在服务器宿主机上使用tcpdump发现如下提示protocol 47 unreachable 那么应该是没有开启GRE协议引起的,此时需要在宿主机上开启GRE协议和1723端口(网上有说开启47端口的都是胡说八道) 只需一条指令:modprobe ip_nat_pptp

如果还是protocol 47 unreachable,那么再试试下面这个 iptables -t nat -A PREROUTING -i eth0 -p 47 -j DNAT --to 容器IP

使用Socks5或HTTP代理 启动socks5代理 ss-local -c /etc/ss_rules/ss.json 然后需要映射端口1080 启动HTTP代理 service privoxy restart 需要先启用socks5代理,并映射端口8080 注:使用HTTP代理可能会泄漏你的网络流量,因为是无加密传输。浏览器默认配置为全局代理,如果想实现智能分流,需要在浏览器的代理配置PAC,具体可以看:https://github.com/breakwa11/gfw_whitelist⁠

Tag summary

Content type

Image

Digest

Size

87 MB

Last updated

over 9 years ago

docker pull alexzhuo/shadowsocks2vpn