应对网络封锁:使用SoftEther搭建HTTPS VPN
随着科技的飞速发展,安全通信的需求变得日益迫切。虚拟专用网络(VPN)已成为维护在线安全的关键工具。
然而,网络服务提供商和各种机构常常采用多种手段来阻止VPN连接。为了绕过这些限制,我们可以利用SoftEther通过HTTPS协议搭建自己的VPN。
本文将深入探讨SoftEther的工作原理,分析它与常见的VPN服务的区别,并详细介绍如何在Ubuntu Linux服务器上安装并配置你自己的SoftEther VPN。
SoftEther及基于HTTPS的VPN是什么?
大多数VPN服务供应商使用标准化的端口和协议。这些连接很容易在防火墙级别被阻止,或者被强制通过网络代理服务器。
那么,当你的本地网络防火墙阻止VPN连接时,你该如何应对?答案是利用HTTPS协议来传输VPN隧道。SoftEther VPN 采用安全超文本传输协议(HTTPS)作为其传输协议。 SoftEther创建了一个安全的VPN,几乎可以穿透任何防火墙或代理服务器。
之所以能够实现这一点,是因为HTTPS流量(本质上是网页流量)通常不会被防火墙阻止。这确保了连接的可靠性和不间断性。
SoftEther,全称为“软件以太网”,是一种开源、跨平台、多协议的VPN解决方案。这个由筑波大学开发的平台以其灵活性和强大的功能而著称。
你可以在Windows和Linux系统上安装SoftEther客户端,使用基于HTTPS的VPN。
在Ubuntu Linux上安装和配置SoftEther
虽然SoftEther在CentOS Linux上运行效果最佳,但它在Ubuntu上的表现也相当出色。Ubuntu拥有庞大的在线支持社区,使其成为托管SoftEther VPN的理想选择。
本指南虽然相对简单,但需要一些基本的Linux系统知识才能顺利完成安装和配置。在开始之前,请确保满足以下先决条件。
SoftEther VPN的先决条件
- Ubuntu Server (22.04.x LTS),建议使用虚拟专用服务器
- 可公开路由的IPv4或v6地址
- Root 管理员权限
- /var/ 分区至少有10GB可用空间
- SSH访问
- 正确的网络配置。如果你需要复习一下,这里有关于如何在Ubuntu服务器上配置网络的信息。
在Ubuntu服务器上安装SoftEther
启动你的Ubuntu服务器并以root身份登录。
第一步是更新你的软件和存储库。
apt-get update -y
现在,我们需要安装SoftEther软件所需的依赖项。
apt-get install build-essential gnupg2 gcc make -y
接下来,下载SoftEther服务器。你需要使用基于Lynx终端的浏览器来浏览最新版本。
为此,首先安装lynx。
apt-get install lynx -y
现在,在浏览器中打开SoftEther下载页面。
lynx http:
使用箭头键导航到最新版本。突出显示最新版本并按Enter键。
突出显示“Linux”并按Enter键。
现在,突出显示“SoftEther_VPN_Server”并按Enter键。
最后,选择你的架构支持的版本(很可能是64位__Intel_x64)并最后一次按Enter键。
现在,突出显示.tar.gz文件并按“d”。该文件将会被下载。
最后,选择“保存到磁盘”,然后按“q”退出Lynx浏览器。
下一步是解压存档。请注意,如果你下载了较新的版本,你的文件名可能会有所不同。
tar -xvzf softether-vpnserver-v4.42-9798-rtm-2023.06.30-linux-x64-64bit.tar.gz
导航到新创建的vpnserver目录
cd vpnserver
接下来,执行make命令来编译软件。
make
你应该在该过程结束时看到以下输出:
*** PacketiX VPN Server HTML5 Web Administration Console (NEW) ***
This VPN Server / Bridge has the built-in HTML5 Web Administration Console.After you start the server daemon, you can open the HTML5 Web Administration Console is available at
https:
or
https:This HTML5 page is obviously under construction, and your HTML5 development contribution is very appreciated.
make[1]: Leaving directory '/root/vpnserver'
下一步是将新编译的软件和目录移动到/usr/local。
cd ..
mv vpnserver /usr/local/
现在,设置vpnserver目录的正确权限。
cd /usr/local/vpnuser
chmod 600 *
chmod 700 vpnserver
chmod 700 vpncmd
接下来,我们必须创建一些文件以确保SoftEther服务器在Ubuntu服务器重启时自动运行。我们可以使用内置的Nano文本编辑器来创建和编辑文件。
nano /etc/init.d/vpnserver
现在,将以下内容复制并粘贴到文件中,然后保存(ctrl-o,ctrl-x):
#!/bin/sh
DAEMON=/usr/local/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver
test -x $DAEMON || exit 0
case "$1" in
start)
$DAEMON start
touch $LOCK
;;
stop)
$DAEMON stop
rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0
创建一个新目录并设置新创建服务的权限。
mkdir /var/lock/subsys
chmod 755 /etc/init.d/vpnserver
接下来,在“/lib/systemd/system”目录中创建一个名为“vpnserver.service”的新文件
nano /lib/systemd/system/vpnserver.service
将以下内容复制并粘贴到文件中,保存并关闭它。
Description=SoftEther VPN Server
After=network.target[Service]
Type=forking
ExecStart=/usr/local/vpnserver/vpnserver start
ExecStop=/usr/local/vpnserver/vpnserver stop[Install]
WantedBy=multi-user.target
启用SoftEther服务以在重启时启动。
systemctl enable vpnserver.service
现在,启动SoftEther VPN服务。
/etc/init.d/vpnserver start
你应该看到以下输出:
The SoftEther VPN Server service has been started.Let's get started by accessing to the following URL from your PC:
https:
or
https:Note: IP address may vary. Specify your server's IP address.
接下来,启用服务器脚本以在重启时启动。
update-rc.d vpnserver defaults
配置SoftEther服务器
SoftEther内置了一个便捷的配置脚本,使得设置过程变得非常简单。要启动脚本,我们需要更改工作目录并执行脚本。
cd /usr/local/vpnserver
./vpncmd
你将看到以下选择:
By using vpncmd program, the following can be achieved.
1. Management of VPN Server or VPN Bridge
2. Management of VPN Client
3. Use of VPN Tools
Select 1, 2 or 3: 1
选择1,然后按两次Enter键,你应该看到以下输出:
在继续之前,我们需要设置管理员密码
ServerPasswordSet
在这里设置EtherSoft管理员密码,输入你的(新)密码并确认。
下一步是创建一个中心并设置密码(与管理员密码不同)。你可以随意命名该中心,在本例中我们使用“VPN”。
HubCreate VPN
现在,我们配置刚刚创建的中心“VPN”。
Hub VPN
你的提示符应显示:
VPN Server/VPN>
现在,我们创建虚拟LAN,它将IP地址分配给远程客户端。
SecureNatEnable
输出现在应该显示:
SecureNatEnable command - Enable the Virtual NAT and DHCP Server Function (SecureNat Function)
The command completed successfully.
接下来,我们为VPN创建第一个用户。
UserCreate vpnuser1
你应该看到以下输出:
接下来,为VPN用户设置密码。
UserPasswordSet vpnuser1
下一步,配置SoftEther多协议平台。
IPsecEnable
现在,系统将询问你几个关于要打开哪些服务的问题。 你可以使用以下答案:
请注意,IPSec密钥将用于L2TP连接,因此请尽可能使其复杂。
恭喜,配置完成。输入“exit”退出。
exit
为SoftEther启用和配置UFW防火墙
如果你的Ubuntu服务器在启动前是全新的,则需要启用并配置内置的UFW防火墙。
首先,设置默认策略。
ufw default allow outgoing
ufw default deny incoming
现在,发出以下命令来打开SoftEther所需的端口
ufw allow 443/tcp
ufw allow 5555/tcp
ufw allow 992/tcp
ufw allow 1194/udp
ufw allow SSH
启用并启动防火墙。
ufw enable
将UFW设置为在重启时启动。
systemctl enable ufw
收尾工作和资源
恭喜,你的SoftEther VPN现已可以使用。在此阶段,最好在尝试客户端连接之前重启服务器并确保所有服务正在运行。
要检查SoftEther VPN服务器的状态,请使用以下命令:
systemctl status vpnserver.service
要检查UFW防火墙的状态,请使用以下命令:
systemctl status ufw && ufw status verbose
要将Windows PC连接到HTTPS SoftEther VPN,可以从 SoftEther网站下载客户端。在那里你还可以找到 SoftEther的说明,关于如何安装和连接软件。
有关连接其他操作系统的更多信息,也可以在 SoftEther网站的教程部分找到。
结论
在你自己的Ubuntu服务器上安装SoftEther VPN具有诸多优点,尤其是在网络灵活性和安全性方面。
这种鲜为人知的VPN软件解决方案可以在全球范围内部署和使用,甚至可以绕过最严格的VPN阻止技术。因此,请广为传播,并享受这款适应性强且多功能的VPN解决方案。
常见问题
问:SoftEther VPN安全吗?
SoftEther使用SSL(安全套接字层)加密来确保你的在线数据难以被破解且安全。SoftEther也是开源的,允许任何人审查其代码,并指出错误或安全漏洞。你还可以将你想要的VPN协议与SoftEther结合使用,这意味着你可以选择你认为最安全的选项。
问:SoftEther VPN速度快吗?
SoftEther VPN的速度通常取决于你使用的协议以及你的家庭或办公室的互联网连接质量。一些用户发现SoftEther VPN速度较慢,而另一些用户则认为连接速度没有问题。你可能需要亲自测试SoftEther VPN(可能在不同的协议上),看看是否可以获得理想的速度。