前言
自从去年安装配置了Openconnect VPN
后,使用了近一年时间,稳定,高效,零故障,使用证书登录的方式更佳便捷,对个人用户来说总体体验几乎完美.
前段时间发现一款新的开源 VPN 软件 AnyLink ,主打企业远程办公的功能,在关注了一段时间后,尝试安装配置使用了几天感觉也非常不错.最近 @Jonnyan404
提供的 Dockerfile 支持了 docker 部署.所以出一篇简单的安装部署教程.
简单体验心得
先简单总结下安装及使用的一点心得.以及和 Openconnect 的一些区别.
AnyLink 最主要的功能莫过于用户分组功能
.通过设置分组权限可以使不同用户或员工能访问的网段和路由也不同,加上支持 SMTP 邮件来分发密码,同时也支持 OTP 密码,确实更适合小型企业的远程访问管理.而目前并不能
像 Openconnect VPN 一样支持证书登录,所以每次连接都需要手动输入密码.
在安装方面, AnyLink 也非常简单,支持编译安装,常规 release 下载安装,以及 docker 部署.个人当然是推荐使用 docker 来安装.就目前短暂使用的情况下来看并没有发现 docker 部署是否和其他直接在服务器上安装有什么区别.
拉取镜像
拉取镜像以备后续使用.
docker pull stilleshan/anylink
创建密码
首次运行以下命令来创建管理员密码.以下命令中含rm
参数,仅用于执行创建密码的命令,会自行删除.将生成的Passwd
和secret
保存.
docker run -it --rm stilleshan/anylink tool -p your_password
# 生成 Passwd
# Passwd:$2a$10$iKPApINPOwuyUhZC/b7P0eI8chEukkpyxPEbYxqdS3BPTtImqStGW
docker run -it --rm stilleshan/anylink tool -s
# 生成 jwt secret
# Secret:r4-21-eDOrSAjtXL4k06PK0NFudNshMKh9euV09EQrsa9oEYlKaSgoa-CdY
获取配置目录
docker run -itd --name anylink --privileged=true stilleshan/anylink
使用 docker cp 将配置文件目录拷贝到当前目录
docker cp anylink:/app/conf .
删除容器
docker stop anylink
docker rm anylink
正式启动容器
将 docker cp 拷贝出来的conf
目录中的server.toml
的密码修改为上文生成的密码.参考以下命令正式启动容器,注意本文示例conf
目录存放于/root
下
docker run -d \
--name anylink \
--restart always \
--privileged=true \
-p 55555:443 \
-p 8800:8800 \
-v /root/conf:/app/conf \
stilleshan/anylink -c=/app/conf/server.toml
管理后台
访问内网IP:端口
,本例http://192.168.1.11:8800
输入admin
密码登陆后台管理系统.
后台管理非常简单明了,只需要配置用户组
,用户
即可开始使用,如需邮件分发密码功能可以在其他设置
中配置.
其他设置
邮件配置
中可以配置 SMTP 邮件服务器信息,用于分发用户密码,适用于多用户的企业环境.如无需求可以跳过.
其他设置
中可以配置邮件分发模版和登录提示信息.此处博主建议自行增加一行端口信息.由于软件默认推荐是443
端口,而大多数情况下可能无法使用该端口.如下图自行增加一行.
同时需在server.toml
配置文件中修改以下相关参数来使邮件显示正确的信息.
用户组信息
添加用户组
只需要填写组名,其他保持默认,则表示该组用户所有流量都将被 VPN 服务器代理,属于完整的全局代理
.
包含路由
如果添加内网网段,例如博主的网段为192.168.1.0/24
,则表示该组用户可以访问内网设备,而互联网请求依旧使用客户端本地的网络访问
.
DNS 服务器
可根据需求自行设置,由于博主家里部署了 AdGuard Home 来过滤广告,所以下图中将 DNS 服务器修改为 AdGuard Home 所在的服务器的内网 IP.
用户信息
添加新用户
并且分配用户组,PIN 码
为客户端的登录密码,如果配置了 SMTP 并勾选了发送邮件
,则会创建随机密码以邮件的形式发送.也可以手动设置密码.OTP
功能如果没有需求建议关闭即可.
保存后可收到邮件,邮件根据上述配置文件也正确的显示了相关信息.
路由器端口映射及客户端登录
路由器端口映射
最后一步则需要在路由器开放前端连接端口55555
.
客户端登录
客户端的详情及下载,可以参考 OpenWRT 路由器 OpenConnect VPN 详细图文教程 - 基础配置篇 中的客户端部分下载.
输入 服务器域名:端口 连接,填写账号密码即可连接成功
结语
由于 AnyLink 还在持续的更新和优化中,博主也仅仅使用了几天,同时使用场景也有限,无法给出更全面的评测.大家感兴趣的可以关注 GitHub 项目,期待后续更加完善的版本.
14 条评论
请问用户所分配到的内网ip是如何决定的,可以更改吗
在配置文件里分配一个客户端的地址池,dhcp分配
[...]AnyLink 的 docker 部署[...]
感谢技术指导
[...]本文是基于上篇文章 [开源企业级远程办公 VPN 软件 AnyLink 的 docker 部署及使用心得] 的群晖 NAS docker 部署教程.不再详细介绍 AnyLink 的相关信息,请先阅读上篇文章了解后在直接参考本文部署到群晖 NAS中.[...]
您好有证书的解决方案吗