惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Simon Willison's Weblog
Simon Willison's Weblog
P
Privacy International News Feed
www.infosecurity-magazine.com
www.infosecurity-magazine.com
T
Troy Hunt's Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
Attack and Defense Labs
Attack and Defense Labs
S
Secure Thoughts
V2EX - 技术
V2EX - 技术
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
O
OpenAI News
Cloudbric
Cloudbric
Google Online Security Blog
Google Online Security Blog
Schneier on Security
Schneier on Security
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Help Net Security
Help Net Security
Cyberwarzone
Cyberwarzone
G
GRAHAM CLULEY
L
Lohrmann on Cybersecurity
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Spread Privacy
Spread Privacy
NISL@THU
NISL@THU
N
News and Events Feed by Topic
T
Tenable Blog
S
Security @ Cisco Blogs
N
News and Events Feed by Topic
The Hacker News
The Hacker News
C
CXSECURITY Database RSS Feed - CXSecurity.com
宝玉的分享
宝玉的分享
月光博客
月光博客
酷 壳 – CoolShell
酷 壳 – CoolShell
美团技术团队
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google DeepMind News
Google DeepMind News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
Tailwind CSS Blog
V
Visual Studio Blog
P
Proofpoint News Feed
Webroot Blog
Webroot Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - 三生石上(FineUI控件)
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Jina AI
Jina AI
雷峰网
雷峰网
T
The Blog of Author Tim Ferriss
Hugging Face - Blog
Hugging Face - Blog
腾讯CDC
L
LangChain Blog
The Register - Security
The Register - Security
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 聂微东

思有云 - IOIOX - Synology

群晖NAS网络服务 - 原生 DDNS 部署配置 Cloudflare DDNS 动态域名解析 - 思有云 我为什么将个人数据从私有云迁移至 iCloud ? - 思有云 群晖NAS高级服务 - 使用阿里云盘打造免费 WebDAV 服务 - 思有云 群晖 Synology DSM 7.0 BETA 测试版正式开放下载 - 思有云 Synology Drive Client 客户端 for macOS Big Sur 11.0.1 官方临时修复版 - 思有云 Synology Moments 升级到 Synology Photos 后端口及应用程序门户域名等问题解决方法 - 思有云 群晖 DSM 7.0 Synology Photos 客户端下载安装 - 思有云 群晖 Synology DSM 7.0 测试版已正式发布 附下载地址 - 思有云 群晖NAS高级服务 - WordPress 配置内网穿透无端口访问教程 - 思有云
群晖NAS高级服务 - docker 部署 AnyLink 企业级远程办公 VPN 服务 - 思有云
博主: Stille · 2021-04-06 · via 思有云 - IOIOX - Synology

前言

本文是基于上篇文章 [开源企业级远程办公 VPN 软件 AnyLink 的 docker 部署及使用心得]群晖 NAS docker 部署教程.不再详细介绍 AnyLink 的相关信息,请先阅读上篇文章了解后在直接参考本文部署到群晖 NAS中.

本文为 Stille 原创文章.经实践,测试,整理发布.如需转载请联系作者获得授权,并注明转载地址.


  

安装流程

群晖配置 TUN/TAP 支持

由于 AnyLink 需要服务端支持 TUN/TAP 功能,群晖 NAS 必须开启 TUN/TAP 功能才能使用,否则容器将无法正常启动.

群晖 TUN/TAP 功能的开启博主是参照网上的一些教程,并且测试成功.

开启 SSH 功能

控制面板 - 终端机和 SNMP - 勾选启动 SSH 功能

终端开启 TUN/TAP 支持

macOS 使用终端, windows 使用 putty 等软件执行以下命令登陆群晖 NAS 并开启 TUN/TAP 支持

ssh xxxx@192.168.1.8
# 使用群晖管理员账号登陆
sudo -i
# 切换至 root
# 依次执行以下 5 条命令
insmod /lib/modules/tun.ko
mkdir /dev/net
mknod /dev/net/tun c10 200
chmod 600/dev/net/tun
cat /dev/net/tun

由于博主已经开启了 TUN/TAP 功能支持,下图中前 4 条命令的返回结果可能和各位不同,但是最后一条显示 File descriptor inbad state 则表示成功.


  

创建数据目录

首次安装请确保依照教程创建以下相关文件,缺一不可,缺少文件会导致容器启动失败.

1.创建目录用于存放数据库,数据库证书文件.本文以/docker/anylink为例.

2.创建空的数据库文件.

打开群晖的文本编辑器,新建一个空文件,直接另存为data.db保存至/docker/anylink.

3.将用于链接 VPN 的域名证书上传至此目录.

AnyLink 使用 TLS/DTLS 进行数据加密,因此需要 RSA 或 ECC 证书.所以当连接 VPN 时的服务器地址需要使用域名,并且配置证书才能使用.如果是在有 动态公网 IP 的家里使用,则需要配置 DDNS 域名,

4.下载server.toml文件

https://raw.githubusercontent.com/bjdgyc/anylink/main/server/conf/server.toml

如无法下载,点击查看复制,使用文本编辑器并自行创建.

server.toml

#服务配置信息

#其他配置文件,可以使用绝对路径
#或者相对于server.toml的路径

#数据文件
db_file = "./data.db"
#证书文件
cert_file = "./test_vpn_cert.pem"
cert_key = "./test_vpn_key.pem"
ui_path = "../ui"
files_path = "../files"
#日志目录,为空写入标准输出
#log_path = "../log"
log_path = ""
log_level = "info"

#系统名称
issuer = "XX公司VPN"
#后台管理用户
admin_user = "admin"
#pass 123456
admin_pass = "$2a$10$UQ7C.EoPifDeJh6d8.31TeSPQU7hM/NOM2nixmBucJpAuXDQNqNke"
jwt_secret = "iLmspvOiz*%ovfcs*wersdf#^heR8pNU^4XxBm&mW$aPCjSRMbYH#&"


#vpn服务对外地址,影响开通邮件二维码
link_addr = "vpn.xx.com"

#前台服务监听地址
server_addr = ":443"
#后台服务监听地址
admin_addr = ":8800"
#开启tcp proxy protocol协议
proxy_protocol = false

link_mode = "tun"

#客户端分配的ip地址池
ipv4_cidr = "192.168.10.0/24"
ipv4_gateway = "192.168.10.1"
ipv4_start = "192.168.10.100"
ipv4_end = "192.168.10.200"

#最大客户端数量
max_client = 100
#单个用户同时在线数量
max_user_client = 3
#IP租期(秒)
ip_lease = 1209600

#默认选择的组
default_group = "one"

#客户端失效检测时间(秒) dpd > keepalive
cstp_keepalive = 20
cstp_dpd = 30
mobile_keepalive = 50
mobile_dpd = 60
#session过期时间,用于断线重连,0永不过期
session_timeout = 3600
auth_timeout = 0

5.修改server.toml配置文件

修改server.toml中的证书名为你的域名证书名.

如果 server.toml 中的证书名与实际证书名不一致则会导致容器启动失败

5.检查所有文件

确认证书文件,data.dbserver.toml文件已修改保存.

  

启动容器

当前适用于 0.2.1 版本
由于软件还在更新迭代中,不确定后期的安装方法是否一致,本教程建议使用 stilleshan/anylink:0.2.1 带固定版本号的镜像

docker - 注册表

搜索anylink,找到stilleshan/anylink并下载标签为最新的稳定版本,本文以0.2.1为例.

映像 - 选择镜像 - 启动

勾选使用高级权限执行容器

高级设置

勾选启用自动重新启动

添加文件夹选择上文创建的/docker/anylink,装载路径/app/conf不可修改.

端口设置
AnyLink 默认的前端连接端口为443,后台管理系统端口为8800.
为避免端口冲突,需根据实际情况将此两端口映射到没被占用的端口上,本文以880044444为例.
应用完成并启动容器

  

配置容器

选中容器 - 详情

终端机 - 新增

修改密码

终端机左侧选中bash,并依次执行以下命令修改密码和密钥,将密钥信息保存.

./anylink tool -p 87654321
# 修改密码
./anylink tool -s
# 生成jwt密钥

修改配置文件

再次使用群晖的文本编辑器修改server.toml配置文件中的密码.其他名称及外部地址根据实际情况修改.

重启容器

重启容器完成配置

  

配置 SMTP / 用户组 / 用户 / 路由器 / 客户端 / 登陆

后台的相关配置 SMTP / 用户组 / 用户 / 路由器 / 客户端 / 登陆 等操作与前言所述上一篇文章完全一致.
点击以下链接访问上文参考配置


  

结语

由于 AnyLink 还在持续的更新和优化中,博主也仅仅使用了几天,同时使用场景也有限,无法给出更全面的评测.大家感兴趣的可以关注 GitHub 项目,期待后续更加完善的版本.


晚高峰稳定 4K 的 IPLC 机场 解锁各流媒体 支持 ChatGPT. 晚高峰稳定 4K 的 IPLC 机场 解锁各流媒体 支持 ChatGPT. RedteaGO - 最划算的大陆漫游 eSim 流量卡,原生境外 IP,注册就送 3 刀。
RedteaGO - 最划算的大陆漫游 eSim 流量卡,原生境外 IP,注册就送 3 刀。

赞赏作者

如果喜欢我的文章,觉得对你有帮助,请随意赞赏!