SoftEther VPN Client Linux使用教程

先去官网下载最新softether client安装包
http://www.softether-download.com/cn.aspx

1.安装步骤如下:

  1. 解压并进入安装目录 make 安装一路按1

  2. 等待安装完成,在终端里执行 sudo vpnclient start,即启动 vpnclient 服务。

  3. 然后使用 vivim 修改 lang.config,将语言标示修改为 cn, 切换为中文界面。

  4. 继续运行 ./vpncmd,这是客户端管理程序,在随后打开的界面中,选择 2 - 管理客户端,主机名可以不输默认 localhost

2.创建虚拟网卡

SoftEther VPN 工作时需要创建自己的虚拟网卡,在随后的命令中输入 niccreate,根据提示输入网卡名称,然后完成即可。
niclist 命令查看创建成功的虚拟网卡。

如果遇到 Error occurred. (Error code: 31)
Installation of the Virtual Network Adapter device driver failed.
加载以下模块

1
2
3
4
5
sudo modprobe -v tunnel4
sudo modprobe -v ip_tunnel
sudo ./vpnclient stop
sudo ./vpnclient start
./vpncmd

3.创建VPN连接

使用 accountcreate 命令创建 vpngate 账户,默认的用户名密码都是 vpn,主机地址必须包含端口号,Hub 的名称可以随意创建。

1
VPN Client>accountcreate

AccountCreate 命令 - 创建新的连接设置
连接设置名: linglongtech

终端 VPN Server 主机名和端口号: vpn.linglongtech.com:4443

终端虚拟 HUB 名称: vpn

连接用户名: jdci1

使用虚拟 LAN 卡名称: vpn

命令成功完成。

4.修改vpn默认密码

AccountPasswordSet
AccountPasswordSet 命令 - 设定连接设置的用户证类型为密码认证
连接设置名: linglong

请输入密码。要取消,请按下 Ctrl + D 键。

密码 : ****
确认输入: ****

指定 standard 或者 radius: standard

命令成功完成。
*

5.创建网卡配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
cat ifcfg-vpn_vpn

TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=vpn_vpn
HWADDR=00:ac:eb:80:ac:86
DEVICE=vpn_vpn
ONBOOT=yes
PROXY_METHOD=none
BROWSER_ONLY=no
PEERDNS=no
NM_CONTROLLED=no
USERCTL=yes

添加网卡MAC地址
添加:USERCTL=yes
使用ifup vpn_vpn 启动网卡

注:如果是ubuntu服务器

1
2
3
tail /etc/network/interfaces
auto vpn_vpn
iface vpn_vpn inet dhcp

6.连接VPN

使用 accountconnect 命令连接到服务器,使用 accountlist 查看连接状态。

7.遇到的问题

最后的最后 万万没想到centos系统有个坑,连上softether vpn后它会修改默认路由,最后导致服务器无法连接

1
2
3
ip route list
default via 192.168.201.1 dev vpn_vpn
10.1.0.0/16 dev flannel.0

不友好的解决方式:
把默认路由改回来
删除路由

1
route del default gw 172.16.16.1

添加路由

1
route add default gw 192.168.251.1

在阿里云服务器上遇到的问题,删除路由后还需要重启eth0网卡

1
sudo ifdown eth0 && sudo ifup eth0

8.为防止它人随意查看vpn连接信息,可用PasswordSet设置口令

9.设置vpn_vpn网卡MTU值

如果服务器网卡的MTU值小于1500需要进行修改

1
2
3
4
5
6
7
8
9
cat /sys/class/net/vpn_vpn/mtu
1500

echo "1450" > /sys/class/net/vpn_vpn/mtu


221-224 ip范围

VPN Client>?

您可以使用下面的 66 命令:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
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 客户服务的版本信息

路由表:

1
2
3
4
5
6
[admin@jdyun-hb-pre-test1 ~]$ ip route list
default via 192.168.201.1 dev eth0
10.1.0.0/16 dev flannel.0
10.1.46.0/24 dev docker0 proto kernel scope link src 10.1.46.1
172.17.0.0/16 dev br-80224c076183 proto kernel scope link src 172.17.0.1
192.168.201.0/24 dev eth0 proto kernel scope link src 192.168.201.13
1
2
3
4
5
6
7
8
[admin@jdyun-hb-pre-test1 ~]$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default gateway 0.0.0.0 UG 0 0 0 eth0
10.1.0.0 0.0.0.0 255.255.0.0 U 0 0 0 flannel.0
10.1.46.0 0.0.0.0 255.255.255.0 U 0 0 0 docker0
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br-80224c076183
192.168.201.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
-------------本文结束感谢您的阅读-------------