NOISE知识效率集
AnyLink是一个企业级远程办公 ssl vpn 软件,可以支持多人同时在线使用。

AnyLink是一个企业级远程办公 ssl vpn 软件,可以支持多人同时在线使用。

notion image

AnyLink

notion image
notion image
notion image
notion image
notion image
notion image
notion image
notion image
AnyLink 是一个企业级远程办公 sslvpn 的软件,可以支持多人同时在线使用。

Repo

Introduction

AnyLink 基于 ietf-openconnect 协议开发,并且借鉴了 ocserv 的开发思路,使其可以同时兼容 AnyConnect 客户端。
AnyLink 使用 TLS/DTLS 进行数据加密,因此需要 RSA 或 ECC 证书,可以通过 Let's Encrypt 和 TrustAsia 申请免费的 SSL 证书。
AnyLink 服务端仅在 CentOS 7、Ubuntu 18.04 测试通过,如需要安装在其他系统,需要服务端支持 tun/tap 功能、ip 设置命令。

Screenshot

notion image

Donate

notion image

Installation

使用问题

自行编译安装

Feature

  • IP 分配(实现 IP、MAC 映射信息的持久化)
  • TLS-TCP 通道
  • DTLS-UDP 通道
  • 兼容 AnyConnect
  • 兼容 OpenConnect
  • 基于 tun 设备的 nat 访问模式
  • 基于 tap 设备的桥接访问模式
  • 基于 macvtap 设备的桥接访问模式
  • 用户组支持
  • 多用户支持
  • 用户策略支持
  • TOTP 令牌支持
  • TOTP 令牌开关
  • 流量速率限制
  • 后台管理界面
  • 访问权限管理
  • IP 访问审计功能
  • 域名动态拆分隧道(域名路由功能)
  • radius认证支持
  • 基于 ipvtap 设备的桥接访问模式

Config

db_type
db_source
./conf/anylink.db
user:password@tcp(127.0.0.1:3306)/anylink?charset=utf8
user:password@localhost/anylink?sslmode=verify-full

Setting

网络模式选择,需要配置 link_mode 参数,如 link_mode="tun"link_mode="macvtap"link_mode="tap"(不推荐) 等参数。 不同的参数需要对服务器做相应的设置。
建议优先选择 tun 模式,其次选择 macvtap 模式,因客户端传输的是 IP 层数据,无须进行数据转换。 tap 模式是在用户态做的链路层到 IP 层的数据互相转换,性能会有所下降。 如果需要在虚拟机内开启 tap 模式,请确认虚拟机的网卡开启混杂模式。

tun 设置

  1. 开启服务器转发
  1. 设置 nat 转发规则
  1. 使用 AnyConnect 客户端连接即可

macvtap 设置

  1. 设置配置文件

tap 设置

  1. 创建桥接网卡
  1. 修改 bridge-init.sh 内的参数
  1. 执行 bridge-init.sh 文件

Systemd

    1. 添加 anylink 程序
      • anylink 程序目录放入 /usr/local/anylink-deploy
    1. systemd/anylink.service 脚本放入:
      • centos: /usr/lib/systemd/system/
      • ubuntu: /lib/systemd/system/
    1. 操作命令:
      • 启动: systemctl start anylink
      • 停止: systemctl stop anylink
      • 开机自启: systemctl enable anylink

Docker

    1. 获取镜像
    1. 查看命令信息
    1. 生成密码
    1. 生成 jwt secret
    1. 启动容器
    1. 使用自定义参数启动容器
    1. 构建镜像

Discussion

添加 QQ 群: 567510628
QQ 群共享文件有相关软件下载

Contribution

欢迎提交 PR、Issues,感谢为 AnyLink 做出贡献。
注意新建 PR,需要提交到 dev 分支,其他分支暂不会合并。

Other Screenshot

Details

License

本项目采用 MIT 开源授权许可证,完整的授权说明已放置在 LICENSE 文件中。

Thank

notion image
badge