前言:可以在外快速接入内部局域网(公司或家庭),访问内部的其他主机(服务器、NAS等),可以在陌生的网络中快速安全的进行连接,有软路由还可以实现一些特殊的功能。
安装和配置
0.准备一台linux虚拟机,博主测试的为Debian12 4c4g60g的配置
1.下载anylink并上传到虚拟机
https://github.com/bjdgyc/anylink/releases/download/v0.9.3/anylink-deploy.tar.gz
2.解压二进制包到/usr/local目录
tar -xzvf anylink-deploy.tar.gz -C /usr/local/
3.进入anylink目录
cd /usr/local/anylink-deploy
4.生成密码 123456 的密文,修改为你要设置的密码
./anylink tool -p 123456
Passwd:$2a$10$jvyk9vcpbPWbaDHKBwQ6VeOPDznYBki5NFzuQ3TwZMJw32oK9MEx.
5.生成jwt密钥
./anylink tool -s
Secret:7PPUaaVq_8ucDPr0PR9m5Lfdcvsy86Wy0ollSp3CTqMHeP1hp0gqCB5L6U8C0TZ4_kMWmYZXSqzzEzo
6.进入conf配置目录
cd conf
7.拷贝配置文件模板
cp server-sample.toml server.toml
8.上传SSL证书重命名为vpn_cert.crt、vpn_cert.key
没有的话可以到https://freessl.cn/申请
9.打开配置文件
nano server.toml
10.修改如下部分,其他保持不变:
#示例配置信息
#其他配置文件,可以使用绝对路径
#或者相对于 anylink 二进制文件的路径
#数据文件
db_type = sqlite3
db_source = ./conf/anylink.db
#证书文件 使用跟nginx一样的证书即可
cert_file = ./conf/vpn_cert.crt
cert_key = ./conf/vpn_cert.key
files_path = ./conf/files
profile = ./conf/profile.xml
#日志目录,为空写入标准输出
#log_path = ./log
log_path =
log_level = debug
pprof = false
#系统名称
issuer = SSL VPN
#后台管理用户
admin_user = admin
#pass 123456
admin_pass = $2a$10$jvyk9vcpbPWbaDHKBwQ6VeOPDznYBki5NFzuQ3TwZMJw32oK9MEx.
jwt_secret = 7PPUaaVq_8ucDPr0PR9m5Lfdcvsy86Wy0ollSp3CTqMHeP1hp0gqCB5L6U8C0TZ4_kMWmYZXSqzzEzo
#服务监听地址
server_addr = :443
#开启 DTLS, 默认关闭
server_dtls = false
server_dtls_addr = :443
#后台服务监听地址
admin_addr = :8800
#开启tcp proxy protocol协议
proxy_protocol = false
link_mode = macvtap
#客户端分配的ip地址池
ipv4_master = ens192
ipv4_cidr = 192.168.1.0/24
ipv4_gateway = 192.168.1.1
ipv4_start = 192.168.1.150
ipv4_end = 192.168.1.160
#最大客户端数量
max_client = 100
#单个用户同时在线数量
max_user_client = 3
#IP租期(秒)
ip_lease = 86400
#默认选择的组
default_group = one
#客户端失效检测时间(秒) dpd > keepalive
cstp_keepalive = 6
cstp_dpd = 10
mobile_keepalive = 15
mobile_dpd = 20
#设置最大传输单元
mtu = 1460
# 要发布的默认域
default_domain = example.com
#default_domain = example.com abc.example.com
#session过期时间,用于断线重连,0永不过期
session_timeout = 3600
auth_timeout = 0
audit_interval = -1
show_sql = false
#是否自动添加nat
iptables_nat = false
#启用压缩
compression = false
#低于及等于多少字节不压缩
no_compress_limit = 256
#客户端显示详细错误信息(线上环境慎开启)
display_error = false
11.创建日志文件目录
修改为自己配置的日志路径,不创建会启动失败,如果没有打开日志输出,可以跳过
mkdir /usr/local/anylink-deploy/log
12.打开profile.xml文件
nano profile.xml
<HostName>anylink vpn</HostName>
# 第30行,最好与server.toml配置文件中的系统名称保持一
致,用于客户端区分
<HostAddress>vpn.test.com:443</HostAddress>
# 第31行,客户端连接地址,域名加端口,或者
IP加端口
启动anylink
复制service文件到系统中
cp /usr/local/anylink-deploy/systemd/anylink.service /usr/lib/systemd/system/
启动anylink
systemctl start anylink
查看启动状态
systemctl status anylink
开机自动启动
systemctl enable anylink.service
浏览器访问后台管理
路由器映射443到8443和8800到8800,没有公网IP话的可以用frp进行内网穿透
访问地址公网IP+端口(默认8800),输入账号(admin)和 密码(123456)点击登陆
https://vpn.test.com:8800/
登录后用户组列表-添加
用户列表-添加-填写pin、禁用opt、勾选用户组
客户端下载
移动端可以在应用商店搜索AnyConnect
https://www.123pan.com/s/2zg9-VSjy.html 提取码:ol2O
客户端添加地址vpn.test.com:8443,用户名和密码(pin)连接即可
其他模式比如tun模式需要NAT和添加静态路由,如需docker部署具体请参考GitHub
评论