在 VPS 上搭建 SoftEther VPN 服务

Contents
  1. 1. 准备
  2. 2. 安装
  3. 3. 运行
  4. 4. 配置
    1. 4.1. 更改管理员密码
    2. 4.2. 创建一个 Hub
    3. 4.3. 创建用户
    4. 4.4. 防火墙设置
  5. 5. 客户端使用
    1. 5.1. 安装
    2. 5.2. 配置
    3. 5.3. 连接
    4. 5.4. 游戏配置
  6. 6. References

本文最后更新于 2019 年 8 月 30 日


示例用途:游戏虚拟局域网(红色警戒 2)。

本文以在大陆阿里云 VPS 上的 Debian 10 的 64 位系统为例,介绍如何搭建 SoftEther VPN 服务。

注:请先参照 Ubuntu (Debian) 服务器的初始化配置 一文对服务器进行各种必要的配置。本文以 sammy 用户为例,进行 VPN 的建立,并默认已按初始化配置文章对服务器进行了配置。



准备

1
sudo apt update && sudo apt install build-essential -y

安装

官网依次选择 SoftEther VPN Server -> Linux -> Intel x64 / AMD64 (64bit) ,在显示的下载链接中复制第一个,依据此链接然后在 Server 上执行相应命令,例如:

1
2
3
4
5
6
mkdir -p ~/Programs/Proxy
cd ~/Programs/Proxy
wget https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/download/v4.30-9696-beta/softether-vpnserver-v4.30-9696-beta-2019.07.08-linux-x64-64bit.tar.gz
tar xzf softether-vpnserver-v4.30-9696-beta-2019.07.08-linux-x64-64bit.tar.gz
cd vpnserver
sudo make

安装过程中将询问几个同意协议的问题,按照提示操作即可。

运行

首先让服务在后台运行起来。

1
sudo vim /etc/systemd/system/vpnserver.service
/etc/systemd/system/vpnserver.service
1
2
3
4
5
6
7
8
9
10
11
12
[Unit]
Description=SoftEther VPN Server
After=network.target
ConditionPathExists=!/home/sammy/Programs/Proxy/vpnserver/do_not_run

[Service]
Type=forking
ExecStart=/home/sammy/Programs/Proxy/vpnserver/vpnserver start
ExecStop=/home/sammy/Programs/Proxy/vpnserver/vpnserver stop

[Install]
WantedBy=multi-user.target

启动服务:

1
2
sudo systemctl enable vpnserver
sudo systemctl start vpnserver

配置

更改管理员密码

1
sudo ./vpncmd

回车使用默认设置,显示 VPN Server> 提示符后,执行:

1
ServerPasswordSet

设置一个密码。

创建一个 Hub

1
HubCreate myhub

创建用户

1
2
Hub myhub
UserCreate sammy

设置该用户密码:

1
UserPasswordSet sammy

根据实际需要创建多个用户。

防火墙设置

这里我们使用 5555 端口。

1
sudo ufw allow 5555

阿里云后台安全组中添加 5555 端口(TCP、UDP)入站规则。

客户端使用

由于本例为了达成游戏《红色警戒 2》远程联机的效果,测试的环境为:Virtualbox 下的 Windows XP 系统。

安装

官网依次选择 SoftEther VPN Client -> Windows -> Intel (x86 and x64) ,在显示的下载链接中点击第一个进行下载。

按提示安装客户端。

配置

结束后打开管理器,双击 添加新的 VPN 连接,按提示创建一个适配器。

再次双击 添加新的 VPN 连接,正确填写主机 IP、端口 5555、用户名、密码,点击 确定

连接

选择新建好的 VPN 连接,单击连接按钮可以开始连接。

游戏配置

为了保持兼容性(win10 没有安装 IPX 协议)和选择指定网卡(刚刚创建的 VPN 虚拟适配器),这里使用一个 IPX 工具,进入官网下载。

解压后,将文件夹内的所有内容复制到游戏目录下,替换原文件。

打开 ipxconfig.exe,在 Netword adapters 中依次选择网卡,除 SoftEther 的适配器外,取消掉所有其他网卡的 Enable interface 复选框。在 Primary interface 中选择 SoftEther 创建的虚拟 VPN 适配器。

勾选 Automatically create Windows Firewall exceptions

Apply 并且 OK

如此,双方或多方进入游戏后即可联机,注意 Woldata.key 末尾两个数字要不同。

References

Setting up SoftEther VPN Server on Ubuntu 16.04 Xenial Xerus Linux

Install SoftEther VPN Server on Ubuntu 16.04

3.3 VPN Server Administration

重温《红警 2 》(2) —— 局域网联机?没问题!

重温《红警 2 》(3) —— 互联网联机也没问题哟