诚然博客

  • 首页
  • HTML
  • Jquery
  • PHP
  • ThinkPHP
  • Linux
  • 琐事
  1. 首页
  2. Linux
  3. 正文

softether客户端 Ubuntu24 安装共享给局域网记录

2025年9月30日 27点热度

apt install gcc make
https://www.softether-download.com/cn.aspx?product=softether 获取最新版下载链接
wget https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/download/v4.44-9807-rtm/softether-vpnclient-v4.44-9807-rtm-2025.04.16-linux-x64-64bit.tar.gz

tar -zxvf softether-vpnclien

按table填充

cd vpnclient & make

./vpnclient start

./vpncmd

进入控制端 打开远程控制客户端 并 设置远程密码,重启软件生效

RemoteEnable

PasswordSet

./vpnclient stop && ./vpnclient start

windows下打开客户端远程连接 输入内网ip,默认防火墙关着的  连不上注意防火墙

创建网卡 默认名vpn

创建连接 名称用英文数字 不要用中文,设置好配置

返回服务器ssh 先查看网卡名,比如我的

ens192 是外网

ens224 是内网 准备共享给其他电脑的网关

vpn_vpn 是刚创建的vpn虚拟适配器

修改网卡配置

ls  /etc/netplan

查看默认配置名是啥,比如我这个是 50-cloud-init.yaml

vi /etc/netplan/50-cloud-init.yaml

在ethernets:下添加

vpn_vpn: dhcp4: true

外网网卡中添加服务器ip 走外网网卡,有多个服务器 就把服务器ip都写上 复制多个-to..

ens192:

dhcp4: true

routes:

- to: 106.12.80.3/32 # 目标IP(/32表示单IP)

via: 192.168.50.1 # 网关

metric: 1

内网网卡设置:

ens224: # 网卡名称

dhcp4: no # 关闭IPv4 DHCP

addresses: [192.168.220.1/24]

最终见图:

保存 esc wq,然后使其生效

sudo netplan apply

 

打开转发:

sudo vi /etc/sysctl.conf

# 取消注释或添加:

net.ipv4.ip_forward=1

sudo sysctl -p # 生效配置

 

添加转发规则:

# 1. 清除旧规则(避免冲突)

sudo iptables -F

sudo iptables -t nat -F

# 2. 允许内网流量(ens224)转发到VPN接口(vpn_vpn)

sudo iptables -A FORWARD -i ens224 -o vpn_vpn -j ACCEPT

# 3. 允许VPN接口的回应流量返回内网

sudo iptables -A FORWARD -i vpn_vpn -o ens224 -m state --state RELATED,ESTABLISHED -j ACCEPT

# 4. 对来自内网的流量做NAT伪装(关键:让内网流量以VPN接口IP对外通信)

sudo iptables -t nat -A POSTROUTING -s 192.168.220.0/24 -o vpn_vpn -j MASQUERADE

长久保存规则:

sudo apt install iptables-persistent # 安装持久化工具

sudo netfilter-persistent save # 保存规则

安装 dhcpcd 工具(管理 DHCP 路由优先级)

sudo apt install dhcpcd5

sudo vi /etc/dhcpcd.conf


# 为vpn_vpn接口设置低metric(高优先级)

interface vpn_vpn metric 50

# 为ens192接口设置高metric(低优先级)

interface ens192

metric 200

# 重启dhcpcd服务

sudo systemctl restart dhcpcd

设置开机自启

sudo vi /etc/systemd/system/vpnclient.service

[Unit]

Description=SoftEther VPN Client Service

After=network.target # 网络启动后再启动VPN服务

[Service]

Type=forking

ExecStart=/root/vpnclient/vpnclient start # 启动VPN客户端

ExecStop=/root/vpnclient/vpnclient stop # 停止VPN客户端

Restart=always # 服务意外停止时自动重启

User=root # 需root权限运行

[Install]

WantedBy=multi-user.target # 多用户模式下自启

 

保存并退出,然后重新加载系统服务配置:

sudo systemctl daemon-reload
# 启动服务
sudo systemctl start vpnclient

# 设置开机自启
sudo systemctlenable vpnclient

# 验证自启状态(输出中包含"enabled")
sudo systemctl is-enabled vpnclient
配置 VPN 账户自动连接,
sudovi /root/vpnclient/auto-connect.sh

#!/bin/bash # 等待VPN客户端服务完全启动(避免连接失败)
sleep 5
# 使用vpncmd自动连接VPN账户
/root/vpnclient/vpncmd localhost /CLIENT PASSWORD:密码 /CMD AccountConnect MyVPN

sudo chmod +x /root/vpnclient/auto-connect.sh
sudo vi /etc/systemd/system/vpn-auto-connect.service

[Unit]
Description=Auto-connect SoftEther VPN Account
After=vpnclient.service # 依赖vpnclient服务,确保其启动后再执行
[Service]
Type=oneshot
ExecStart=/root/vpnclient/auto-connect.sh
User=root
[Install]
WantedBy=multi-user.target

重新加载服务配置并设置自启打开
sudo systemctl daemon-reload
sudo enable vpn-auto-connect.service

标签: 暂无
最后更新:2025年9月30日

诚然

这个人很懒,什么都没留下

点赞
< 上一篇

COPYRIGHT © 2012-现在 诚然博客. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

鄂ICP备2022012104号