编译 SoftEther VPN 并搭建 OpenVPN
- 由于 SoftEtherVPN 源码在 GitHub, 所以这里使用 lantern 加快下载速度
wget https://coding.net/u/ilanyu/p/lantern/git/raw/master/lantern_linux_amd64_server.tar.gz
tar zxvf lantern_linux_amd64_server.tar.gz
./lantern_linux_amd64_server -proxyall > lantern.log &
curl -x http://127.0.0.1:8787 myip.ipip.net
下载 SoftEtherVPN 源码
yum install git -y export http_proxy=http://127.0.0.1:8787/ git clone https://github.com/SoftEtherVPN/SoftEtherVPN.git unset http_proxy
修改 SoftEtherVPN 源码
由于使用 SoftEtherVPN 搭建的 OpenVPN 的默认 ping 值过小, 且这个参数不支持通过配置文件修改, 所以需要手工在源码中将该值改大.
cd SoftEtherVPN vim src/Cedar/Interop_OpenVPN.h
133、134行
#define OPENVPN_PING_SEND_INTERVAL 3000 // Transmission interval of Ping #define OPENVPN_RECV_TIMEOUT 10000 // Communication time-out
修改为
#define OPENVPN_PING_SEND_INTERVAL 10000 // Transmission interval of Ping #define OPENVPN_RECV_TIMEOUT 120000 // Communication time-out
编译并安装 SoftEtherVPN
yum -y groupinstall "Development Tools" yum -y install readline-devel ncurses-devel openssl-devel ./configure make make install
搭建 OpenVPN
- 运行 SoftEtherVPN
vpnserver start
下载 SoftEther VPN Server Manager for Windows
到 [http://www.softether-download.com/cn.aspx?product=softether](http://www.softether-download.com/cn.aspx?product=softether) 下载最新 `SoftEther VPN Server Manager for Windows` , 我下载到的是 [http://www.softether-download.com/files/softether/v4.22-9634-beta-2016.11.27-tree/Windows/Admin_Tools/VPN_Server_Manager_and_Command-line_Utility_Package/softether-vpn_admin_tools-v4.22-9634-beta-2016.11.27-win32.zip](http://www.softether-download.com/files/softether/v4.22-9634-beta-2016.11.27-tree/Windows/Admin_Tools/VPN_Server_Manager_and_Command-line_Utility_Package/softether-vpn_admin_tools-v4.22-9634-beta-2016.11.27-win32.zip)
使用 SoftEther VPN Server Manager 设置 SoftEther VPN
运行压缩包中 vpnsmgr.exe 初始化: 新设置 -> 输入主机名, 密码为空 -> 确定 -> 连接 -> 设置新管理密码 -> 勾上远程访问 VPN Server -> 下一步 -> 是 -> 确定 -> 退出 -> 确定 -> 禁用 VPN Azure -> 确定 -> 创建用户 -> 输入用户名、密码、确认密码 -> 确定 -> 关闭 -> 设置本地网桥 选择 eth0 -> 关闭 -> 确定 开启 OpenVPN: OpenVPN/MS-SSTP 设置 -> 勾选 启用 OpenVPN 克隆 Server 功能, 端口修改为 443 -> 取消勾选 开启 MS-SSTP VPN 克隆 Server 功能 -> 为 OpenVPN Client 生成配置样本文件 -> 确定 删除 监听器列表 992、1194、5555 端口 开启 SecureNAT : 点击 虚拟 HUB 名 VPN -> 管理虚拟 HUB -> 虚拟 NAT 和 虚拟 DHCP 服务器 -> SecureNAT 配置 -> DNS 服务器地址 1、2分别修改为 114.114.114.114、114.114.115.115 -> 确定 -> 启用 SecureNAT -> 确定 -> 关闭 OpenVPN 服务器端配置完毕
解压刚才生成的配置样本文件, 以文本文件格式打开
*remote_access*.ovpn
, 删除所有以#
及;
开头的行, 得到下面的文件dev tun
proto udp
remote *.v4.sedns.cn 443
cipher AES-128-CBC
auth SHA1
resolv-retry infinite
nobind
persist-key
persist-tun
client
verb 3
auth-user-pass
<ca>
-----BEGIN CERTIFICATE-----
MIID3DCCAsSgAwIBAgIBADANBgkqhkiG9w0BAQsFADBtMR4wHAYDVQQDExV2cG43
...
...
...
tOTfZpYbLgwiW22781tG6ocNDsVR3nsVzOeiPbFj5zY=
-----END CERTIFICATE-----
</ca>
<cert>
-----BEGIN CERTIFICATE-----
MIID1jCCAr6gAwIBAgIBADANBgkqhkiG9w0BAQsFADBqMR0wGwYDVQQDExQxMzA1
...
...
...
JugWtk4MMuSsC/mWKjqVf1wApLFY+Ic6Gjo=
-----END CERTIFICATE-----
</cert><key>
-----BEGIN PRIVATE KEY-----
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQCuyq8cqgbhdiwy
...
...
...
K40bn0snchyEVhn7ZrKUTSW0tA==
-----END PRIVATE KEY-----
</key>修改 ``proto udp`` 为 ``proto tcp``、``remote *.v4.sedns.cn 443`` 中 ``*.v4.sedns.cn`` 改为 服务器IP地址 OpenVPN 配置文件修改完成
- 运行 SoftEtherVPN
为什么用 SoftEther VPN, 不用 OpenVPN: 具体是因为测试时发现 OpenVPN使用 tun 模式, 无法广播 udp 包, 部分不支持直接输入IP的局域网联机游戏无法搜索到对方, 同时 SoftEther VPN 配置起来也比 OpenVPN 方便.
国外买哪一家服务器比较速度比较稳定。
SoftEnther现在会被防火墙检测到了,经常刚开没多久连vps都连不上了。