All Projects → bjdgyc → Anylink

bjdgyc / Anylink

Licence: mit
AnyLink是一个企业级远程办公 ssl vpn 软件,可以支持多人同时在线使用。基于 openconnect 协议开发,并且借鉴了 ocserv 的开发思路,可以完全兼容 AnyConnect 客户端。

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Anylink

One Key Ikev2 Vpn
A bash script base on Centos or Ubuntu help you to create IKEV2/L2TP vpn.
Stars: ✭ 1,948 (+1000.56%)
Mutual labels:  vpn
Viennanet
Framework for quickly creating enterprise microservices on .NET Core https://habr.com/ru/company/raiffeisenbank/blog/516540/
Stars: ✭ 170 (-3.95%)
Mutual labels:  enterprise
Macos Openvpn Server
macOS OpenVPN Server and Client Configuration (OpenVPN, Tunnelblick, PF)
Stars: ✭ 172 (-2.82%)
Mutual labels:  vpn
Htpc Docker Standup
A simple docker-compose based configuration to stand up a new HTPC w/ Plex, Deluge, Sonarr, Radarr and more!
Stars: ✭ 160 (-9.6%)
Mutual labels:  vpn
Easy163
安卓端一键解锁网易云音乐,无须 ROOT
Stars: ✭ 2,165 (+1123.16%)
Mutual labels:  vpn
Rebuild
Building your business-systems freely! 高度可定制化的企业管理系统 企业中台
Stars: ✭ 169 (-4.52%)
Mutual labels:  enterprise
Ovpnmcgen.rb
An OpenVPN iOS Configuration Profile (.mobileconfig) Utility—Configures OpenVPN for use with VPN-on-Demand that are not exposed through Apple Configurator 2.
Stars: ✭ 154 (-12.99%)
Mutual labels:  vpn
Docker Openvpn
🔐 Out of the box stateless openvpn-server docker image which starts in less than 2 seconds
Stars: ✭ 174 (-1.69%)
Mutual labels:  vpn
Tizi
✅ ✅ ✅ 梯子 TOP推荐(持续更新) ✅ ✅ ✅ PC梯子,Windows梯子,电脑梯子,国外好用梯子,推荐翻墙梯子软件,海外加速器梯子,国外vpn,科学上网工具,靠谱iPhone/iPad/安卓/Android/Mac/Linux/PC/路由器都可以用的梯子
Stars: ✭ 168 (-5.08%)
Mutual labels:  vpn
Choerodon
Open Source Multi-Cloud Integrated Platform
Stars: ✭ 2,149 (+1114.12%)
Mutual labels:  enterprise
Autovpn
Create On Demand Disposable OpenVPN Endpoints on AWS.
Stars: ✭ 1,959 (+1006.78%)
Mutual labels:  vpn
Ignition Go
Bootstrap4 /Codeigniter 3 Modular (HMVC) App Building Framework - to build enterprise class web applications... Versions: CodeIgniter 3.1.9 AdminLTE 3.4 Bootstrap 4.5.0
Stars: ✭ 166 (-6.21%)
Mutual labels:  enterprise
Brook
Brook is a cross-platform strong encryption and not detectable proxy. Zero-Configuration. Brook 是一个跨平台的强加密无特征的代理软件. 零配置.
Stars: ✭ 12,694 (+7071.75%)
Mutual labels:  vpn
Flutter vpn
Plugin to access VPN service for Flutter | Flutter 的 VPN 插件
Stars: ✭ 158 (-10.73%)
Mutual labels:  vpn
Blokada
The official repo for Blokada for Android and iOS.
Stars: ✭ 2,427 (+1271.19%)
Mutual labels:  vpn
Ngrid
A angular grid for the enterprise
Stars: ✭ 157 (-11.3%)
Mutual labels:  enterprise
Reflow
Content-routable socks5 proxy switcher for your entire LAN.
Stars: ✭ 170 (-3.95%)
Mutual labels:  vpn
Ansible Role Wireguard
Ansible role for installing WireGuard VPN. Supports Ubuntu, Debian, Archlinx, Fedora and CentOS.
Stars: ✭ 176 (-0.56%)
Mutual labels:  vpn
Norouter
NoRouter: IP-over-Stdio. The easiest multi-host & multi-cloud networking ever. No root privilege is required.
Stars: ✭ 173 (-2.26%)
Mutual labels:  vpn
Shell
All useful linux shell scripts
Stars: ✭ 171 (-3.39%)
Mutual labels:  vpn

AnyLink

Go PkgGoDev Go Report Card codecov

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

Repo

github: https://github.com/bjdgyc/anylink

gitee: https://gitee.com/bjdgyc/anylink

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

online

Installation

升级 go version = 1.15

git clone https://github.com/bjdgyc/anylink.git

cd anylink
sh -x build.sh

# 注意使用root权限运行
cd anylink-deploy
sudo ./anylink -conf="conf/server.toml"

# 默认管理后台访问地址
# http://host:8800
# 默认日志文件
# log/anylink.log

Feature

  • [x] IP分配(实现IP、MAC映射信息的持久化)

  • [x] TLS-TCP通道

  • [x] 兼容AnyConnect

  • [x] 基于tun设备的nat访问模式

  • [x] 基于tap设备的桥接访问模式

  • [x] 支持 proxy protocol v1 协议

  • [x] 用户组支持

  • [x] 多用户支持

  • [x] TOTP令牌支持

  • [x] TOTP令牌开关

  • [x] 流量控制

  • [x] 后台管理界面

  • [x] 访问权限管理

  • [ ] DTLS-UDP通道

Config

默认配置文件内有详细的注释,根据注释填写配置即可。

# 生成后台密码
./anylink -passwd 123456

# 生成jwt密钥
./anylink -secret

conf/server.toml

systemd

添加 systemd脚本

  • anylink 程序目录放入 /usr/local/anylink-deploy

systemd 脚本放入:

  • centos: /usr/lib/systemd/system/
  • ubuntu: /lib/systemd/system/

操作命令:

  • 启动: systemctl start anylink
  • 停止: systemctl stop anylink
  • 开机自启: systemctl enable anylink

Setting

网络模式选择,需要配置 link_mode 参数,如 link_mode="tun",link_mode="tap" 两种参数。 不同的参数需要对服务器做相应的设置。

建议优先选择tun模式,因客户端传输的是IP层数据,无须进行数据转换。 tap模式是在用户态做的链路层到IP层的数据互相转换,性能会有所下降。 如果需要在虚拟机内开启tap模式,请确认虚拟机的网卡开启混杂模式。

tun设置

  1. 开启服务器转发
# flie: /etc/sysctl.conf
net.ipv4.ip_forward = 1

#执行如下命令
sysctl -w net.ipv4.ip_forward=1
  1. 设置nat转发规则
# eth0为服务器内网网卡
iptables -t nat -A POSTROUTING -s 192.168.10.0/255.255.255.0 -o eth0 -j MASQUERADE
  1. 使用AnyConnect客户端连接即可

tap设置

  1. 创建桥接网卡
注意 server.toml 的ip参数,需要与 bridge-init.sh 的配置参数一致
  1. 修改 bridge-init.sh 内的参数
eth="eth0"
eth_ip="192.168.1.4"
eth_netmask="255.255.255.0"
eth_broadcast="192.168.1.255"
eth_gateway="192.168.1.1"
  1. 执行 bridge-init.sh 文件
sh bridge-init.sh

Soft

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

Discussion

qq.png

添加QQ群: 567510628

Contribution

欢迎提交 PR、Issues,感谢为AnyLink做出贡献

Other Screenshot

展开查看

system.jpg setting.jpg users.jpg ip_map.jpg group.jpg

License

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

Thank

jetbrains.png
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].