NimaQu's Blog

别看了,啥都没有

使用SoftEther搭建无法被GFW干扰的SSTP协议VP

Nima Qu's Avatar 2017-12-15 教程

  1. 介绍
  2. 安装 SoftEther VPN Server
  3. 管理 SoftEther VPN Server 服务
    1. ◇1. 新建 Hub
      1. ◇2. 创建用户
      2. ◇3. 配置 SecureNAT
      3. ◇3. 配置SSL证书

介绍

在说事情之前,先顺路提一下,VPN(虚拟专用网)的本身意图并不是翻墙的,翻墙只是一种用途。

我们平常用的Shadowsocks/ShadowsocksR都属于SOCKS5代理,在Android上的走的是VPN通道而已,也有不少套壳VPN软件,真正的VPN协议——PPTP-L2TP-IPSEC-IKEV2都能被GFW精准识别并阻断。

这个神奇的软件叫做 SoftEther VPN Server,以下介绍 Linux 版本的安装使用方法。

SoftEther VPN Server 官网,包含多种平台架构的下载地址(需翻墙):

http://www.softether-download.com/cn.aspx?product=softether

需要的工具:

Linux VPS(以 Debian/Ubuntu 为例,是 Linux 就可以)、Windows 也可以(而且更简单)。

安装 SoftEther VPN Server

用root账户登陆到VPS,更新下并安装 gcc 等工具

apt-get update
apt-get install build-essential

假设当前目录为 / root

64位:

wget http://www.softether-download.com/files/softether/v4.20-9608-rtm-2016.04.17-tree/Linux/SoftEther_VPN_Server/64bit_-_Intel_x64_or_AMD64/softether-vpnserver-v4.20-9608-rtm-2016.04.17-linux-x64-64bit.tar.gz
tar xvf softether-vpnserver-v4.20-9608-rtm-2016.04.17-linux-x64-64bit.tar.gz

32位:

wget http://www.softether-download.com/files/softether/v4.20-9608-rtm-2016.04.17-tree/Linux/SoftEther_VPN_Server/32bit_-_Intel_x86/softether-vpnserver-v4.20-9608-rtm-2016.04.17-linux-x86-32bit.tar.gz
tar xvf softether-vpnserver-v4.20-9608-rtm-2016.04.17-linux-x86-32bit.tar.gz

切换到解压出来的目录中编译

cd vpnserver
make

输入三个1

1.png

XLGMV2Q4(NA7N9}GMA{AJAO.png

安装完成,请不要删除此目录

终端继续输入

./vpnserver start

开启服务

I.png

服务开启了之后,要进行简单的设置才可以。

终端执行

./vpncmd

依次输入 1,回车,回车

在提示符下输入

ServerPasswordSet

输入管理服务器的密码。

两次确定之后,按 ctrl+C 退出管理。

之后最好将服务器加入到开机启动项中,这样服务器重启了就不用每次都手动到 SSH 里开启了。

终端里依次输入:

vi /etc/rc.local

按i,在 exit 0 之前写入

/root/vpnserver/vpnserver start

再按esc,输入英文冒号:再输入wq保存退出32R3STZ`L`IS}`39$K)%7Y3.png

管理 SoftEther VPN Server 服务

设置好账号密码之后,我们就可以切换到带有图形界面的设备上配置服务器啦!考虑到 Windows 用户居多,在此我们就以 Window 为例进行讲解(其他版本官网也有下载)。

下载 SoftEner VPN Management

安装时注意选择这个

XI([R]5P[04T0JIY0}{K]VO.png

点击新设置,

设置名称、主机名(Linux 服务器的 IP)、管理密码,点确定。

{WK~QDFUJ_)`9V}IPKG`4GB.png

之后选择刚刚新建的设置,点击连接按钮。

弹出的窗口不用管直接关掉,来到主要的管理界面:

XD.png

◇1. 新建 Hub

点击创建虚拟HUB,密码可选

.png

◇2. 创建用户

点击管理虚拟 Hub - 管理用户,左下角的新建。输入用户名,可以使用匿名的方式认证、也可以使用账号密码、甚至是证书认证也可以。这就是你连接VPN时需要输入的用户名

~GWUW@I$G.png

安全策略那里可以设置此用户的最大下载速度、最大上传速度,各位看到商机了吗?

◇3. 配置 SecureNAT

在 “虚拟 Hub” 界面点击 “虚拟 NAT 和虚拟 DHCP 服务器”,然后点击启用SecureNAT

S90TSF}BB7(QJ}V1U57T.png

4P5UX.png

◇3. 配置SSL证书

SSTP 使用了 SSL,更具体地,使用了 HTTPS,在 Windows 上,它使用了和 HTTPS 证书相同的信任链,用于验证服务器身份。如果不配置好ssl证书,在连接的时候会提示无法验证服务器身份,需要手动添加证书

首先你需要有个域名,顶级域名二级域名皆可,先将域名解析到你的服务器,接下来就是配置证书

如果你已经有了现成的 SSL 证书,点击加密与网络,再点击导入,选择自己的 SSL 证书和Key,接下来配置好登陆信息就可以成功连接了

JLAIN.png

ZTYZW$1P8UQD26167O~28{O.png

如果没有现成的 SSL 证书,有两种办法,第一种是自签一个证书,但如果直接连接的话会提示已处理证书链,但是在不受信任提供程序信任的根证书中终止 我们需要在本地手动添加证书

首先点击加密与网络,再点击导出,选择导出为x509证书,然后可以参照https://technet.microsoft.com/zh-cn/library/cc754489(v=ws.11).aspx.aspx)的方法手动导入证书,但这种方法不方便,不能达到直接连接的效果

Sng

第二种方法就是使用Let’s Encrypt 中文名为让老子我们加密签发 SSL 证书

我。。。。我也不会。。我自己是用花生壳免费的ssl证书,让老子加密只在lnmp上用过。。

可以参考Let’s Encrypt官方文档(English)

http://www.jianshu.com/p/eaac0d082ba2 进行证书的申请,然后按照上面的步骤安装证书即可

参考土豆不好吃

本文作者 : Nima Qu
本文使用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议
本文链接 : https://blog.nimaqu.com/2017/12/15/use-softether-to-bulid-sstp-vpn/

本文最后更新于 天前,文中所描述的信息可能已发生改变