SoftEther VPN 简介
SoftEther VPN 是一个功能强大、开源的多协议 VPN 软件,可以作为 PPTP、L2TP、OpenVPN、SSTP 等多种协议的 VPN 服务器。它支持 Windows、Linux、macOS 和其他平台。下面我将介绍如何在 Linux 上自编译安装 SoftEther VPN 服务器。
前提条件
-
一台 Linux 服务器(例如:Ubuntu、CentOS、Debian)
-
Root 权限
步骤 1:安装必要的依赖包
在安装 SoftEther VPN 之前,需要安装一些必要的依赖包。根据不同的 Linux 发行版,依赖包的安装方法不同。
1.1 在 Ubuntu/Debian 系统上安装依赖
sudo apt update
sudo apt install build-essential gcc make zlib1g-dev libssl-dev libncurses5-dev libreadline-dev
1.2 在 CentOS/RHEL 系统上安装依赖
sudo yum groupinstall "Development Tools"
sudo yum install zlib-devel openssl-devel ncurses-devel readline-devel
步骤 2:下载 SoftEther VPN 源码
前往 SoftEther 官方网站或者直接使用 wget 下载最新的源码压缩包。
cd /usr/local/src
sudo wget https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/download/v4.38-9770/softether-vpnserver-v4.38-9770-rtm-linux-x64-64bit.tar.gz
(注意:URL 可能会有变化,请确保下载最新的版本。)
步骤 3:解压源码包
解压下载的源码包:
sudo tar -zxvf softether-vpnserver-v4.38-9770-rtm-linux-x64-64bit.tar.gz
步骤 4:编译 SoftEther VPN 服务器
进入解压后的目录:
cd vpnserver
然后使用 make 命令来编译 SoftEther VPN 服务器:
sudo make
在编译过程中,可能会要求你确认许可协议。你可以按 Enter 键继续并同意协议。
编译完成后,生成的文件将在当前目录下。
步骤 5:设置 SoftEther VPN 服务器的权限
安装完成后,需要设置 SoftEther VPN 服务器文件的权限,使其可以正确运行:
sudo chmod 600 /usr/local/src/vpnserver/*
sudo chmod 700 /usr/local/src/vpnserver/vpnserver
sudo chmod 700 /usr/local/src/vpnserver/vpncmd
步骤 6:启动 SoftEther VPN 服务器
SoftEther VPN 服务器必须以后台进程启动,建议将其作为服务运行。首先测试是否可以手动启动:
sudo /usr/local/src/vpnserver/vpnserver start
此时,你应该会看到类似如下的输出:
SoftEther VPN Server has started successfully.
步骤 7:配置 SoftEther VPN 服务器
现在你可以通过 vpncmd 工具配置 SoftEther VPN 服务器。首先启动命令行工具:
sudo /usr/local/src/vpnserver/vpncmd
接下来,选择与服务器的连接方式。你可以选择直接连接到本机服务器。
7.1 设置管理员密码
在 vpncmd 命令行界面中,输入以下命令来设置管理员密码:
ServerPasswordSet
输入你想要的管理员密码。
7.2 创建虚拟 Hub
创建一个新的虚拟 Hub(VPN 虚拟网关):
HubCreate MyVirtualHub
MyVirtualHub 是你自定义的虚拟 Hub 名称,可以根据实际需要修改。
7.3 启动虚拟 Hub
启动你创建的虚拟 Hub:
Hub MyVirtualHub
步骤 8:设置 SoftEther VPN 服务器开机自启
为了让 SoftEther VPN 服务器在每次系统启动时自动启动,可以创建一个简单的 systemd 服务。
8.1 创建 systemd 服务文件
sudo nano /etc/systemd/system/softether-vpnserver.service
然后粘贴以下内容:
[Unit]
Description=SoftEther VPN Server
After=network.target
[Service]
ExecStart=/usr/local/src/vpnserver/vpnserver start
ExecStop=/usr/local/src/vpnserver/vpnserver stop
WorkingDirectory=/usr/local/src/vpnserver
User=root
Group=root
Restart=always
[Install]
WantedBy=multi-user.target
8.2 重新加载 systemd 配置并启用服务
sudo systemctl daemon-reload
sudo systemctl enable softether-vpnserver
sudo systemctl start softether-vpnserver
步骤 9:配置防火墙
如果你的系统启用了防火墙(如 UFW 或 iptables),确保你开放了必要的端口。
9.1 打开默认端口
SoftEther VPN 默认使用以下端口:
-
TCP/443:用于 SoftEther VPN 的默认连接
-
UDP/500:L2TP 用于加密
-
UDP/1701:L2TP 用于传输
如果使用 UFW,执行以下命令:
sudo ufw allow 443/tcp
sudo ufw allow 500/udp
sudo ufw allow 1701/udp
对于 iptables:
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 500 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 1701 -j ACCEPT
步骤 10:连接到 SoftEther VPN 服务器
你可以通过 SoftEther VPN 客户端 或其他支持的 VPN 客户端(如 OpenVPN)来连接 SoftEther VPN 服务器。
10.1 使用 VPN 客户端连接
下载并安装 SoftEther VPN 客户端(Windows、macOS、Linux 都有对应版本),然后使用相同的管理员密码连接到服务器,配置用户和虚拟 Hub 即可。
总结
至此,你已经完成了 SoftEther VPN 服务器的自编译安装并启动了服务。你可以根据需求进一步配置用户、加密、路由等功能。
