方法一:搭建x-ui
服务端安装有说明:https://github.com/mlldxe/X-UI
客户端:v2ray.NG( 注: v2ray.NG去掉“.”,搜索用 v2rayN )
安卓端:https://github.com/2dust/v2rayNG/
方法二:搭建Shadow.socks(注:shadow.socks去掉“.”)
安装Shadow.socks服务端(参考官方Shadow.socks使用说明):
yum install python-setuptools && easy_install pip
pip install shadow.socks
编写配置(参考Configuration via Config File):
vi /etc/shadow.socks.json
{ "server":"0.0.0.0", "server_port":8388, "local_address": "127.0.0.1", "local_port":1080, "password":"mypassword", "timeout":300, "method":"aes-256-cfb", "fast_open": false } |
或(多个SS账号)
{ "server":"0.0.0.0", "port_password":{ "8381":"xxxxxxx", "8382":"xxxxxxx", "8383":"xxxxxxx", "8384":"xxxxxxx" }, "timeout":300, "method":"aes-256-cfb", "fast_open": false } |
配置说明:
字段 说明
server ss服务监听地址
server_port ss服务监听端口
local_address 本地的监听地址
local_port 本地的监听端口
password 密码
timeout 超时时间,单位秒
method 加密方法,默认是aes-256-cfb
fast_open 使用TCP_FASTOPEN, true / false
workers workers数,只支持Unix/Linux系统
启动与停止
ssserver -c /etc/shadow.socks.json -d start
ssserver -c /etc/shadow.socks.json -d stop
shadow.socks的日志保存在 /var/log/shadow.socks.log
安装shadow.socks客户端
下载地址:https://github.com/shadow.socks/
方法三:搭建l2tp vpn(推荐,注:Android6.0.1 l2tp无法连接)
参考DearTanker's Blog的一键安装方法:
wget --no-check-certificate https://raw.githubusercontent.com/teddysun/across/master/l2tp.sh
chmod +x l2tp.sh
./l2tp.sh
基本上,按交互式命令的提示按回车或者自定义自己的选择即可,然后再次验证ipsec(L2TP)并重启相关服务,否则提示服务器无相应
service ipsec restart
service xl2tpd restart
ipsec verify
添加账号密码,可以修改/etc/ppp/chap-secrets
user * pass * |
方法四:搭建openvpn(不建议)
vultr面板提供一键安装openvpn的办法,方法是在新建一个vps实例时选择默认安装一个应用程序:
具体安装办法参考官方的一键安装openvpn说明。openvpn是使用操作系统的登录账号登录的,所以搭建完openvpn后,你可以参考linux新建用户的办法新建一个用户及修改用户密码,然后使用opevpn提供的客户端或者网页(一般情况下是https://your_vps_ip:943/)登录即可。
之所以不建议使用openvpn,原因是测速发现比较慢,下载带宽不到1M,而且openvpn貌似不支持移动端登录。
方法五:搭建pptpd vpn(不建议)
注:之所以不建议使用pptpd,一方面是pptpd经常被墙,二是容易出问题。
一、安装
yum install ppp iptables pptpd
二、配置
1. 编辑pptpd.conf
vi /etc/pptpd.conf
2. 搜索localip,去掉下面字段前面的#,然后保存退出
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245
注意,pptpd默认支持最大100个连接,每个remoteip分配一个连接,如果remoteip数不够100个,那么默认连接数就会变成remoteip数。如果默认连接数不够的话,就会出现自动断开的情况,比如手机上的vpn连上了,PC端的vpn就会断开。
3. 编辑options.pptpd,搜索ms-dns,去掉搜索到的两行ms-dns前面的#,并修改为下面的字段
ms-dns 8.8.8.8
ms-dns 8.8.4.4
4. 编辑/etc/ppp/chap-secrets设置VPN的帐号密码,注意,用户名与密码是区分大小写的
用户名 pptpd 密码 *
5. 编辑/etc/sysctl.conf,修改内核参数,在末尾添加下面的代码,使内核支持转发
net.ipv4.ip_forward=1
6. 运行下面的命令使内核修改生效
sysctl -p
7. 添加下面的iptables转发规则(直接在SSH运行下面命令即可)
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
8. 添加转发规则后重启就会失效,Centos 6系统可以使用service iptables save保存配置,而Centos7则可以修改/etc/rc.d/rc.local保存上面的命令,这样开机会自动执行上面的命令。
三、启动
1. 用下面的命令使pptpd开机自动启动
chkconfig pptpd on
2. 启动pptpd
service pptpd start
四、使用
使用你的vpn客户端连接即可,如果配置没问题的话,就可以连接成功。
测试成功连接的vpn客户端有,win7+win10自带vpn客户端,andriod自带vpn客户端。但只在宽带网络上连接成功,4g网络连接不成功。
五、排错
1. 如果你的vpn连接不成功,有可能是iptable防火墙的问题,你可以使用下面命令
iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
或者
iptables -F
然后在你的其他电脑使用telnet your_ip 1723测试是否连通。
2. 如果你遇到访问网站偶尔连接上又断的问题,可能是MTU太大导致,可以
执行
iptables -I FORWARD -p tcp --syn -i ppp+ -j TCPMSS --set-mss 1356
或者修改/etc/ppp/options.pptpd,在文件最后添加
mtu 1356
3. 更多问题,可以打开pptpd的debug日志,根据debug日志的输出上网搜索一步步解决
修改/etc/ppp/options.pptpd
取消下面的注释
debug
dump
logfile /var/log/pptpd.log(没有则手工修改)
原创文章,作者:cy,如若转载,请注明出处:https://www.cygzs.net/