network:vpn by yourself

来源:互联网 发布:java传感器数据 编辑:程序博客网 时间:2024/06/03 13:33

方法一:搭建shadowsocks+serverspeeder(特别推荐)

操作系统:CentOS6
安装shadowsocks服务端(参考官方Shadowsocks 使用说明):

CentOS:

[plain] view plain copy
  1. yum install python-setuptools && easy_install pip  
  2. pip install shadowsocks  

Debian / Ubuntu:
[plain] view plain copy
  1. apt-get install python-pip  
  2. pip install shadowsocks  


编写配置(参考Configuration via Config File):
vi新建配置
[plain] view plain copy
  1. vi /etc/shadowsocks.json  

内容如下:
[javascript] view plain copy
  1. {  
  2.     "server":"0.0.0.0",  
  3.     "server_port":8388,  
  4.     "local_address""127.0.0.1",  
  5.     "local_port":1080,  
  6.     "password":"mypassword",  
  7.     "timeout":300,  
  8.     "method":"aes-256-cfb",  
  9.     "fast_open"false  
  10. }  
或(多个SS账号)
[plain] view plain copy
  1. {  
  2.     "server":"0.0.0.0",  
  3.     "port_password":{  
  4.      "8381":"xxxxxxx",  
  5.      "8382":"xxxxxxx",  
  6.      "8383":"xxxxxxx",  
  7.      "8384":"xxxxxxx"  
  8.      },  
  9.     "timeout":300,  
  10.     "method":"aes-256-cfb",  
  11.     "fast_open": false  
  12. }  

配置说明:
字段说明serverss服务监听地址server_portss服务监听端口local_address本地的监听地址local_port本地的监听端口password密码timeout超时时间,单位秒method加密方法,默认是aes-256-cfbfast_open使用TCP_FASTOPEN, true / falseworkersworkers数,只支持Unix/Linux系统
启动:
前台启动
[plain] view plain copy
  1. ssserver -c /etc/shadowsocks.json  
后台启动与停止
[plain] view plain copy
  1. ssserver -c /etc/shadowsocks.json -d start  
  2. ssserver -c /etc/shadowsocks.json -d stop  

如需开机启动
打开rc.local
[plain] view plain copy
  1. vi /etc/rc.local  
输入
[plain] view plain copy
  1. ssserver -c /etc/shadowsocks.json -d start  
shadowsocks 的日志保存在 /var/log/shadowsocks.log

安装shadowsocks客户端
下载地址:
[plain] view plain copy
  1. Windows   
  2. https://github.com/shadowsocks/shadowsocks-windows/releases   
  3.   
  4. Mac OS X   
  5. https://github.com/shadowsocks/ShadowsocksX-NG/releases  
[plain] view plain copy
  1. linux   
  2. https://github.com/shadowsocks/shadowsocks-qt5/wiki/Installation   
  3. https://github.com/shadowsocks/shadowsocks-qt5/releases  
[plain] view plain copy
  1. iOS   
  2. https://itunes.apple.com/app/apple-store/id1070901416?pt=2305194&ct=shadowsocks.org&mt=8   
  3. https://github.com/shadowsocks/shadowsocks-iOS/releases  
[plain] view plain copy
  1. Android   
  2. https://play.google.com/store/apps/details?id=com.github.shadowsocks   
  3. https://github.com/shadowsocks/shadowsocks-android/releases  


安装serverspeeder加速(可选,但强烈推荐)
加速前


加速后


下行速度瞬间提升,是不是觉得有点小激动?
一键安装serverspeeder(参照serverspeeder锐速一键破解安装版)
[plain] view plain copy
  1. wget -N --no-check-certificate https://github.com/91yun/serverspeeder/raw/master/serverspeeder.sh && bash serverspeeder.sh  

如果报内核不支持,可以更换系统内核
[plain] view plain copy
  1. 下载内核安装包  
  2. wget http://ftp.scientificlinux.org/linux/scientific/6.6/x86_64/updates/security/kernel-2.6.32-504.3.3.el6.x86_64.rpm  
  3.   
  4. 更换内核  
  5. rpm -ivh kernel-2.6.32-504.3.3.el6.x86_64.rpm --force  
  6.   
  7. 重启  
  8. reboot  
  9.   
  10. 查看内核版本是否替换成功  
  11. cat /proc/version  
如果系统内核已更新,再次执行一键安装serverspeeder方法即可。至此serverspeeder安装完毕,快去试试速度是不提升了。

卸载serverspeeder的方法
[plain] view plain copy
  1. chattr -i /serverspeeder/etc/apx* && /serverspeeder/bin/serverSpeeder.sh uninstall -f  


方法二:搭建l2tp vpn(推荐)

操作系统:CentOS6

参考DearTanker's Blog的一键安装方法:

[html] view plain copy
  1. wget --no-check-certificate https://raw.githubusercontent.com/teddysun/across/master/l2tp.sh  
  2. chmod +x l2tp.sh  
  3. ./l2tp.sh  
基本上,按交互式命令的提示按回车或者自定义自己的选择即可,然后再次验证ipsec(L2TP)并重启相关服务,否则提示服务器无相应

[html] view plain copy
  1. service ipsec restart  
  2. service xl2tpd restart  
  3. ipsec verify  

如果需要修改或者增加账号密码,可以修改/etc/ppp/chap-secrets

[html] view plain copy
  1. 账户    l2tpd    密码       *  

测试成功使用的客户端有,win7+win10自带vpn客户端,andriod自带vpn客户端。

测试成功使用的网络环境有,电信+联通宽带,移动4g无法连接成功,如果哪位朋友在移动网络下有成功的经验,麻烦分享一下。

不使用vpn时,使用speedtest的测速结果(我自己使用的是10M联通宽带):


下面是成功连接vpn后,使用speedtest的测速结果,虽然不是非常快,但基本够用。



方法三:搭建openvpn(不建议)

操作系统:CentOS6

vultr面板提供一键安装openvpn的办法,方法是在新建一个vps实例时选择默认安装一个应用程序:


具体安装办法参考官方的一键安装openvpn说明。openvpn是使用操作系统的登录账号登录的,所以搭建完openvpn后,你可以参考linux新建用户的办法新建一个用户及修改用户密码,然后使用opevpn提供的客户端或者网页(一般情况下是https://your_vps_ip:943/)登录即可。

之所以不建议使用openvpn,原因是测速发现比较慢,下载带宽不到1M,而且openvpn貌似不支持移动端登录。


方法四:搭建pptpd vpn(不建议)

注:之所以不建议使用pptpd,一方面是pptpd经常被墙,二是容易出问题。

操作系统:CentOS6

一、安装

[html] view plain copy
  1. yum install ppp iptables pptpd  
二、配置

1. 编辑pptpd.conf

[html] view plain copy
  1. vi /etc/pptpd.conf  
2. 搜索localip,去掉下面字段前面的#,然后保存退出
[html] view plain copy
  1. localip 192.168.0.1  
  2. 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前面的#,并修改为下面的字段

[html] view plain copy
  1. ms-dns 8.8.8.8  
  2. ms-dns 8.8.4.4  

4. 编辑/etc/ppp/chap-secrets设置VPN的帐号密码,注意,用户名与密码是区分大小写的
[html] view plain copy
  1. 用户名 pptpd 密码 *  
5. 编辑/etc/sysctl.conf,修改内核参数,在末尾添加下面的代码,使内核支持转发
[html] view plain copy
  1. net.ipv4.ip_forward=1  
6. 运行下面的命令使内核修改生效
[html] view plain copy
  1. sysctl -p  
7. 添加下面的iptables转发规则(直接在SSH运行下面命令即可)
[html] view plain copy
  1. 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开机自动启动

[html] view plain copy
  1. chkconfig pptpd on  

2. 启动pptpd

[html] view plain copy
  1. service pptpd start  


四、使用

使用你的vpn客户端连接即可,如果配置没问题的话,就可以连接成功。
测试成功连接的vpn客户端有,win7+win10自带vpn客户端,andriod自带vpn客户端。但只在宽带网络上连接成功,4g网络连接不成功。


五、排错

1. 如果你的vpn连接不成功,有可能是iptable防火墙的问题,你可以使用下面命令

[html] view plain copy
  1. iptables -A INPUT -p tcp --dport 1723 -j ACCEPT  
  2. 或者  
  3. iptables -F  
然后在你的其他电脑使用telnet your_ip 1723测试是否连通。
2. 如果你遇到访问网站偶尔连接上又断的问题,可能是MTU太大导致,可以

[html] view plain copy
  1. 执行  
  2. iptables -I FORWARD -p tcp --syn -i ppp+ -j TCPMSS --set-mss 1356  
  3. 或者修改/etc/ppp/options.pptpd,在文件最后添加  
  4. mtu 1356  
3. 更多问题,可以打开pptpd的debug日志,根据debug日志的输出上网搜索一步步解决
[html] view plain copy
  1. 修改/etc/ppp/options.pptpd  
  2. 取消下面的注释  
  3. debug  
  4. dump  
  5. logfile /var/log/pptpd.log(没有则手工修改) 

原创粉丝点击