在 Armbian 下安装 SoftEther 客户端并设置连接服务器
一、服务端的安装教程
请从这里下载:《ubuntu安装SoftEther.pdf》
链接: https://pan.baidu.com/s/1CB1ptXDnZ93tJwO3NNF_5A?pwd=86v5 提取码: 86v5
Windows客户端使用方法也在该文章中。
二、Armbian(Linux)客户端安装教程
第一步:系统准备和依赖安装
1.1 更新系统包列表
sudo apt update
上述这个命令会更新软件包列表,确保获取到最新的软件版本信息。
1.2 升级所有软件包:
sudo apt upgrade -y
1.3 修复可能存在的依赖问题
sudo apt --fix-broken install
1.4 安装必要的编译工具和依赖
sudo apt install build-essential wget nano curl net-tools -y
安装的软件说明:
-
build-essential:包含 GCC 编译器和 make 工具等编译必需软件 -
wget:用于下载文件 -
nano:简单的文本编辑器 -
curl:用于网络请求 -
net-tools:包含 ifconfig 等网络工具
1.3 检查系统架构
uname -m
#或者使用下面指令
#arch
说明:确认系统架构是否为 armv7l(32位 ARM),确保下载的软件包兼容。
1.4检测系统位数
getconf LONG_BIT
第二步:下载并安装客户端
2.1 创建安装目录
mkdir -p /root/softether


说明:创建专门的目录来管理 安装文件,保持系统整洁。
2.2 进入刚创建的目录中
cd /root/softether
2.3 下载客户端
wget https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/download/v4.44-9807-rtm/softether-vpnclient-v4.44-9807-rtm-2025.04.16-linux-arm_eabi-32bit.tar.gz
如果本身因为网络环境无法通过wget命令下载客户端安装包的,可以从我提供的网盘下载,然后上传到服务器上再进行安装。
Linux客户端下载连接:softether-vpnclient-v4.44-9807-rtm-2025.04.16-linux-arm_eabi-32bit.tar.gz
链接: https://pan.baidu.com/s/10Y91W_VkwUkZ_pCgsfpV9w?pwd=geu4 提取码: geu4
2.4 解压下载的文件
tar xzf softether-vpnclient-v4.44-9807-rtm-2025.04.16-linux-arm_eabi-32bit.tar.gz
2.5 查看解压出来的文件夹名称
sudo ls


可以看到解压后softether文件目录下面多出来了一个名为:【vpnclient】的文件夹。
2.6 进入解压后的文件夹里面
cd vpnclient
2.7 编译安装客户端
make
说明:
-
这个过程会编译客户端;
-
编译时间取决于设备性能,通常需要 1-5 分钟;
-
如果编译成功,最后会显示 "Build complete."
运行后结构大致如下:
root@onecloud:~/softether/vpnclient# make
--------------------------------------------------------------------
SoftEther VPN Client (Ver 4.44, Build 9807, ARM EABI) for Linux Build Utility
Copyright (c) SoftEther Project at University of Tsukuba, Japan. All Rights Reserved.
--------------------------------------------------------------------
Copyright (c) all contributors on SoftEther VPN project in GitHub.
Copyright (c) Daiyuu Nobori, SoftEther Project at University of Tsukuba, and SoftEther Corporation.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distribu ted on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and limitations under the License.
RESPONSIBLE ENTITY
==================
PacketiX VPN and VPN Gate (where applicable) are provided, distributed and operated under the responsibility of SoftEther Corporation (Corporate Number: 1050001016519, Tsukuba, Ibaraki, Japan). These projects were rese arched and developed in collaboration with Tsukuba University, a national university in Japan.
THIS SOFTWARE IS DEVELOPED IN JAPAN, AND DISTRIBUTED FROM JAPAN, UNDER JAPANESE LAWS. YOU MUST AGREE IN ADVAN CE TO USE, COPY, MODIFY, MERGE, PUBLISH, DISTRIBUTE, SUBLICENSE, AND/OR SELL COPIES OF THIS SOFTWARE, THAT AN Y JURIDICAL DISPUTES WHICH ARE CONCERNED TO THIS SOFTWARE OR ITS CONTENTS, AGAINST US (SOFTETHER CORPORATION OR OTHER SUPPLIERS), OR ANY JURIDICAL DISPUTES AGAINST US WHICH ARE CAUSED BY ANY KIND OF USING, COPYING, MOD IFYING, MERGING, PUBLISHING, DISTRIBUTING, SUBLICENSING, AND/OR SELLING COPIES OF THIS SOFTWARE SHALL BE REGA RDED AS BE CONSTRUED AND CONTROLLED BY JAPANESE LAWS, AND YOU MUST FURTHER CONSENT TO EXCLUSIVE JURISDICTION AND VENUE IN THE COURTS SITTING IN TOKYO, JAPAN. YOU MUST WAIVE ALL DEFENSES OF LACK OF PERSONAL JURISDICTION AND FORUM NON CONVENIENS. PROCESS MAY BE SERVED ON EITHER PARTY IN THE MANNER AUTHORIZED BY APPLICABLE LAW O R COURT RULE.
DISCLAIMER
==========
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHAL L THE SUPPLIERS, PROVIDERS, OPERATORS, AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH T HE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
THIS SOFTWARE IS DEVELOPED IN JAPAN, AND DISTRIBUTED FROM JAPAN, UNDER JAPANESE LAWS. YOU MUST AGREE IN ADVAN CE TO USE, COPY, MODIFY, MERGE, PUBLISH, DISTRIBUTE, SUBLICENSE, AND/OR SELL COPIES OF THIS SOFTWARE, THAT AN Y JURIDICAL DISPUTES WHICH ARE CONCERNED TO THIS SOFTWARE OR ITS CONTENTS, AGAINST US (SOFTETHER CORPORATION OR OTHER SUPPLIERS), OR ANY JURIDICAL DISPUTES AGAINST US WHICH ARE CAUSED BY ANY KIND OF USING, COPYING, MOD IFYING, MERGING, PUBLISHING, DISTRIBUTING, SUBLICENSING, AND/OR SELLING COPIES OF THIS SOFTWARE SHALL BE REGA RDED AS BE CONSTRUED AND CONTROLLED BY JAPANESE LAWS, AND YOU MUST FURTHER CONSENT TO EXCLUSIVE JURISDICTION AND VENUE IN THE COURTS SITTING IN TOKYO, JAPAN. YOU MUST WAIVE ALL DEFENSES OF LACK OF PERSONAL JURISDICTION AND FORUM NON CONVENIENS. PROCESS MAY BE SERVED ON EITHER PARTY IN THE MANNER AUTHORIZED BY APPLICABLE LAW O R COURT RULE.
USE ONLY IN JAPAN. DO NOT USE THIS SOFTWARE IN ANOTHER COUNTRY UNLESS YOU HAVE A CONFIRMATION THAT THIS SOFTW ARE DOES NOT VIOLATE ANY CRIMINAL LAWS OR CIVIL RIGHTS IN THAT PARTICULAR COUNTRY. USING THIS SOFTWARE IN OTH ER COUNTRIES IS COMPLETELY AT YOUR OWN RISK. THE SOFTETHER VPN PROJECT HAS DEVELOPED AND DISTRIBUTED THIS SOF TWARE TO COMPLY ONLY WITH THE JAPANESE LAWS AND EXISTING CIVIL RIGHTS INCLUDING PATENTS WHICH ARE SUBJECTS AP PLY IN JAPAN. OTHER COUNTRIES' LAWS OR CIVIL RIGHTS ARE NONE OF OUR CONCERNS NOR RESPONSIBILITIES. WE HAVE NE VER INVESTIGATED ANY CRIMINAL REGULATIONS, CIVIL LAWS OR INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENTS IN AN Y OF OTHER 200+ COUNTRIES AND TERRITORIES. BY NATURE, THERE ARE 200+ REGIONS IN THE WORLD, WITH DIFFERENT LAW S. IT IS IMPOSSIBLE TO VERIFY EVERY COUNTRIES' LAWS, REGULATIONS AND CIVIL RIGHTS TO MAKE THE SOFTWARE COMPLY WITH ALL COUNTRIES' LAWS BY THE PROJECT. EVEN IF YOU WILL BE SUED BY A PRIVATE ENTITY OR BE DAMAGED BY A PUB LIC SERVANT IN YOUR COUNTRY, THE DEVELOPERS OF THIS SOFTWARE WILL NEVER BE LIABLE TO RECOVER OR COMPENSATE SU CH DAMAGES, CRIMINAL OR CIVIL
RESPONSIBILITIES. NOTE THAT THIS LINE IS NOT LICENSE RESTRICTION BUT JUST A STATEMENT FOR WARNING AND DISCLAI MER.
IMPORTANT NOTE: USE OF THIS SOFTWARE AND SERVICE BY INDIVIDUALS TO WHOM THE CONSUMER CONTRACT ACT APPLIES IS NOT ALLOWED. THIS SOFTWARE IS INTENDED FOR PROFESSIONALS AND IS NOT DESIGNED FOR PURELY BUSINESS-UNRELATED CO NSUMERS. THIS SOFTWARE AND SERVICE MAY BE USED ONLY FOR BUSINESS, COMMERCIAL, NON-PROFIT, ORGANIZATIONAL OPER ATIONS, RESEARCH AND DEVELOPMENT PURPOSES OR OTHER NON-CONSUMPTIVE PURPOSES. THIS SOFTWARE IS NOT INTENDED FO R USE BY CONSUMERS. THIS SOFTWARE MAY NOT BE USED BY ANY INDIVIDUAL TO WHOM THE CONSUMER RIGHTS PROTECTIONS I N THE CONSUMER CONTRACT ACT OF JAPAN OR EQUIVALENT LAWS OF OTHER COUNTRIES APPLY. IF AN INDIVIDUAL USES THE S OFTWARE, THE USE OF THE SOFTWARE SHALL BE DEEMED TO BE FOR BUSINESS PURPOSES.
READ AND UNDERSTAND THE 'src/WARNING.TXT' FILE BEFORE USING THIS SOFTWARE. SOME SOFTWARE PROGRAMS FROM THIRD PARTIES ARE INCLUDED ON THIS SOFTWARE WITH LICENSE CONDITIONS WHICH ARE DESCRIBED ON THE 'src/THIRD_PARTY.TXT ' FILE.
--------------------------------------------------------------------
make[1]: Entering directory '/root/softether/vpnclient'
Preparing SoftEther VPN Client...
ranlib lib/libcharset.a
ranlib lib/libcrypto.a
ranlib lib/libedit.a
ranlib lib/libiconv.a
ranlib lib/libncurses.a
ranlib lib/libssl.a
ranlib lib/libz.a
ranlib code/vpnclient.a
gcc code/vpnclient.a -fPIE -O2 -fsigned-char -pthread -lm -lrt -Wl,--no-warn-mismatch -lpthread -L./ lib/libs sl.a lib/libcrypto.a lib/libiconv.a lib/libcharset.a lib/libedit.a lib/libncurses.a lib/libz.a -ldl -o vpncli ent
ranlib code/vpncmd.a
gcc code/vpncmd.a -fPIE -O2 -fsigned-char -pthread -lm -lrt -Wl,--no-warn-mismatch -lpthread -L./ lib/libssl. a lib/libcrypto.a lib/libiconv.a lib/libcharset.a lib/libedit.a lib/libncurses.a lib/libz.a -ldl -o vpncmd
--------------------------------------------------------------------
The preparation of SoftEther VPN Client is completed !
*** How to switch the display language of the SoftEther VPN Client Service ***
SoftEther VPN Client supports the following languages:
- Japanese
- English
- Simplified Chinese
You can choose your prefered language of SoftEther VPN Client at any time.
To switch the current language, open and edit the 'lang.config' file.
Note: the administrative password is not set on the VPN Server. Please set your own administrative password a s soon as possible by vpncmd or the GUI manager.
*** How to start the SoftEther VPN Client Service ***
Please execute './vpnclient start' to run the SoftEther VPN Client Background Service.
And please execute './vpncmd' to run the SoftEther VPN Command-Line Utility to configure SoftEther VPN Client .
Of course, you can use the VPN Server Manager GUI Application for Windows / Mac OS X on the other Windows / M ac OS X computers in order to configure the SoftEther VPN Client remotely.
*** For Windows users ***
You can download the SoftEther VPN Server Manager for Windows
from the http://www.softether-download.com/ web site.
This manager application helps you to completely and easily manage the VPN server services running in remote hosts.
*** For Mac OS X users ***
In April 2016 we released the SoftEther VPN Server Manager for Mac OS X.
You can download it from the http://www.softether-download.com/ web site.
VPN Server Manager for Mac OS X works perfectly as same as the traditional Windows versions. It helps you to completely and easily manage the VPN server services running in remote hosts.
*** 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://127.0.0.1:5555/
or
https://ip_address_of_the_vpn_server:5555/
This HTML5 page is obviously under construction, and your HTML5 development contribution is very appreciated.
--------------------------------------------------------------------
make[1]: Leaving directory '/root/softether/vpnclient'
2.8 修改客户端语言
2.8.1 先运行客户端
sudo ./vpnclient start
2.8.2 再关闭客户端
sudo ./vpnclient stop
之所以先运行客户端再关闭客户端,是要让vpnclient文件夹中生成“lang.config”和“vpn_client.config”这两个配置文件。
从提示内容:
To switch the current language, open and edit the 'lang.config' file.
可以看出,我们可以通过'lang.config' 文件改变客户端的语言。

2.9 启动客户端服务
sudo ./vpnclient start

如果想停止服务,则输入:
sudo ./vpnclient stop

第三步:配置客户端
3.1 运行客户端
注意:执行vpncmd前,需要先运行客户端服务。就是“2.9 启动客户端服务”章节的内容。
sudo ./vpncmd
可以看到,由于我们上面已经将语言设置成立中文,所有现在客户端的提示均有了中文。

根据提示输出:2+回车

由于SSH远程连接后是操作本机,所以直接回车。然后就处于客户端操作界面了。注意命令行输入提示符。

通过帮助查看操作指令:--help+回车
VPN Client>--help
您可以使用下面的 66 命令:
About - 显示版本信息
AccountAnonymousSet - 设定连接设置的用户认证种类为匿名认证
AccountCertGet - 获取用于连接设置的客户端证书
AccountCertSet - 设置连接设置的用户认证类型为用户证书认证
AccountCompressDisable - 禁用连接设置进行通信时的数据压缩
AccountCompressEnable - 启用连接设置进行通信时的数据压缩
AccountConnect - 使用连接设置,开始连接 VPN Server
AccountCreate - 创建新的连接设置
AccountDelete - 删除连接设置
AccountDetailSet - 设置接续设置的高级通信设置
AccountDisconnect - 断开连接中的连接设置
AccountEncryptDisable - 禁用连接设置进行通信时的加密
AccountEncryptEnable - 启用连接设置进行通信的加密
AccountExport - 导出连接设置
AccountGet - 取得连接设置的设置
AccountImport - 导入连接设置
AccountList - 获取连接设置列表
AccountNicSet - 设置连接设置时使用的虚拟 LAN 卡
AccountPasswordSet - 设定连接设置的用户证类型为密码认证
AccountProxyHttp - 将连接设置的连接方法设置为通过 HTTP 代理服务器连接
AccountProxyNone - 将连接设置的连接方法直接设置为 TCP/IP 连接
AccountProxySocks - 将连接设置的连接方法设置为通过 SOCKS 代理服务器连接
AccountRename - 更改连接设置名称
AccountRetrySet - 设置连接设置的连接失败或断开时建立重新连接的次数和间隔
AccountSecureCertSet - 将连接设置的用户认证类型设置为智能卡认证
AccountServerCertDelete - 删除连接设置的服务器固有证书
AccountServerCertDisable - 禁用连接设置服务器证书验证选项
AccountServerCertEnable - 启用连接设置服务器证书验证选项
AccountServerCertGet - 获取连接设置的服务器固有证明书
AccountServerCertSet - 设置连接设置的服务器固有证明书
AccountSet - 设定连接设置连接终端
AccountStartupRemove - 解除连接设置的启动连接
AccountStartupSet - 设定连接设置的启动连接
AccountStatusGet - 获取当前连接设置的状态
AccountStatusHide - 设置成在连接到 VPN Server 时不显示连接状态和错误的画面
AccountStatusShow - 设置成在连接到 VPN Server 时显示连接状态和错误的画面
AccountUsernameSet - 设置用于连接的连接设置的用户名
CertAdd - 添加信任的证明机构的证书
CertDelete - 删除信任的证明机构的证书
CertGet - 获得新任的证明机构的证书
CertList - 获取信任的证明机构的证书列表
Check - 检测 SoftEther VPN 是否能正常运行
KeepDisable - 禁用保持互联网连接功能
KeepEnable - 启动 Internet 保持连接功能
KeepGet - 获取保持互联网连接的功能
KeepSet - 设置 Internet 保持连接功能
MakeCert - 创建新的 X.509 证书和密钥 (1024 位)
MakeCert2048 - 创建新的 X.509 证书和密钥 (2048 位)
NicCreate - 新的虚拟 LAN 卡的创建
NicDelete - 删除虚拟 LAN 卡
NicDisable - 禁用虚拟 LAN 卡
NicEnable - 启用虚拟 LAN 卡
NicGetSetting - 获取虚拟 LAN 卡的设置
NicList - 获取虚拟 LAN 卡列表
NicSetSetting - 更改虚拟 LAN 卡设置
NicUpgrade - 升级虚拟 LAN 卡设备驱动
PasswordGet - 获取为连接到 VPN 客户服务的密码的设定
PasswordSet - 为连接到 VPN 客户服务的密码的设定
RemoteDisable - 禁止 VPN 客户服务的远程管理
RemoteEnable - 允许 VPN 客户服务的远程管理
SecureGet - 获取使用的智能卡种类的 ID
SecureList - 获取可用的智能卡种类列表
SecureSelect - 选择要使用的智能卡种类
TrafficClient - 在用户模式下,运行网络流量速度测试工具
TrafficServer - 在服务器模式下,运行网络流量速度测试工具
VersionGet - 获取 VPN 客户服务的版本信息
参考每个命令的使用,输入 "命令名称 ?" 来查看帮助。
命令成功完成。
VPN Client>
输入“exit”可以退出vpncmd客户端管理工具。
3.2 创建连接
注意,需要在Client>提示符下才能输入。
AccountCreate

下面黄色底色的文字为说明文字。
VPN Client>AccountCreate
AccountCreate 命令 - 创建新的连接设置
连接设置名: MyVpnClient //随便输入
终端 VPN Server 主机名和端口号: XXX.XXX.XXX.XXX:443 //SoftEther服务器的地址:端口号(默认为443)
终端虚拟 HUB 名称: VPN_HUB1 //SoftEther服务器创建的HUB
连接用户名: user8 //SoftEther服务器HUB中创建的用户
使用虚拟 LAN 卡名称: VPN //随便输入
命令成功完成。
3.3 设置连接密码
注意,需要在Client>提示符下才能输入。
AccountPasswordSet

连接设置名: MyVpnClient //需要和上面创建连接时命名保存一致
密码: //服务器上创建用户时对应的用户明
3.4 设置连接方式
然后设置为tcp/ip直连方式
注意,需要在Client>提示符下才能输入。
AccountProxyNone

连接设置名: MyVpnClient //需要和上面创建连接时命名保存一致
3.5 查看连接列表
注意,需要在Client>提示符下才能输入。
AccountList

3.6 连接服务器
注意,需要在Client>提示符下才能输入。
AccountConnect

然后再用“AccountList”命令查看连接状态
注意,需要在Client>提示符下才能输入。
AccountList

在服务器管理工具中可以查看目前该用户已经成功登录了:
注:服务器管理工具的使用不在本文的探讨范围内。

3.7 测试是否成功
输入“exit”指令退出客户端管理工具
注意,需要在Client>提示符下才能输入。
exit
然后Ping平时无法ping通的网址:

发现还是无法Ping通,“ip addr”命令查看获取到的IP地址情况:
ip addr

发现vpn所在的网卡并没有自动获取到服务器分配的IP地址,需要手动获取。Wondows环境下的客户端无需手动请求远端服务器分配DHCP的IP地址,并且也无需配置路由表,只要客户端连上服务器即可工作,但是在Linux中客户端没有这些功能,所有需要手工配合。这也可能是很多人使用Linux客户端一直无法正常连接使用的原因。
先安装一下“isc-dhcp-client”工具,一般只有在发行版的Linux中才有自带该工具,Armbian系统一般需要自己安装:
sudo apt install isc-dhcp-client

此时,再使用“dhclient”命令来获取IP地址。
命令格式为:sudo dhclient 网卡名称
sudo dhclient vpn_vpn

再执行“ip addr”命令查看获取到的IP地址情况:
ip addr

到此已经获取了远程服务器分配的IP地址了。
此时再尝试Ping一下常规无法Ping通的网址:
ping google.com

发现还是无法Ping通,查看一下路由表:
route -n

没有指向远程网关的路由,添加一下:
#格式为:ip route add 远程服务器公网地址 via 本地可以连接互联网的局域网网关地址
ip route add 8.xxx.xxx.xx via 192.168.9.1

再次查看路由表:

稍等片刻待路由表生效,然后Ping一下常规无法Ping通的网址:

虽然目前已经连线成功了,但是还仅限于手动配置的情况,像服务的开机启动;路由表的持久化;客户端连接、断开时路由表的变化等情况还需要进一步研究。











