使用 docker-atrust 连入深信服
525 字
3 分钟
使用 docker-atrust 连入深信服
公司为了加强网络安全,采购了深信服的零信任(atrust)作为以前openvpn的代替方案,接入方需要使用 atrust 客户端进行接入。某天突然在 v2ex 上发现了基于 docker 和 梯子软件结合,免安装客户端实现接入的方式,然后一直没有验证成功,今天趁着国庆假期,再次尝试,终于成功。实际上还是担心 atrust 会对本地电脑进行监控,感觉安装在 docker 容器中,可以最大程度的限制其能力。
网络拓扑
![[image 2.png]]
docker-atrust 配置
services: atrust: image: hagb/docker-atrust container_name: atrust environment: - PASSWORD=123456 # 密码按照实际情况填写 - URLWIN=1 - TZ=Asia/Shanghai volumes: - $HOME/data/atrust:/root ports: - "5901:5901" - "1080:1080" # socks5 端口 - "8888:8888" # http 代理端口 - "54631:54631" devices: - /dev/net/tun cap_add: - NET_ADMIN sysctls: - net.ipv4.conf.default.route_localnet=1 restart: unless-stopped通过 vnc 登录
![[image 3.png]]
连入后,和普通 atrust 操作一样,输入服务器地址、用户名密码完成登录,这里比较重要的是 配置连接服务器url时,域名需要在下面的 mihomo 配置中进行特殊配置(下面会讲到)
mihomo 配置
- 因为公司使用了私有域名,docker-atrust 连入成功后,atrust 会下发 dns 解析规则到容器,需要将 这部分 dns 指定到 mihomo 的 hosts 中
hosts: # 公司dns mysql-xxx.xxx.io: 47.96.xxx.xxx # 公司ip mysql8-test.xxx.io: 172.16.xxx.xxx # 公司内网ip- 增加 socks5 代理节点
proxies: - name: ATRUST type: socks5 server: 192.168.50.4 # 指向 192.168.50.4 宿主机 port: 1080 #- 增加代理规则
proxy-groups: - { name: 公司线路, type: select, proxies: [DIRECT, ATRUST] } # 这里考虑本地 mac 上的clash verge配置,在公司时直连- 代理规则配置
rules: # 公司atrust - "DOMAIN,atrust.xxx.com,DIRECT" # 这里指定 atrust 连接用的域名走直连 - "DOMAIN-SUFFIX,xxx.io,公司线路" - "DOMAIN-SUFFIX,xxx.com,公司线路" - "IP-CIDR,47.96.xxx.xxx/32,公司线路,no-resolve" # 47.96.xxx.xxx 是 atrust.xxx.com 的 ipopenwrt 路由配置
在家调试java应用时,发现无法访问公司的 172.16.6.0/24 和 172.16.7.0/24 网段的 dubbo 服务,需要手动添加两条路由规则到路由表中
ip route add 172.16.6.0/24 dev nikkiip route add 172.16.7.0/24 dev nikki📎 参考文章
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!
使用 docker-atrust 连入深信服
https://blog.sephy.top/posts/connect-to-sangfor-with-docker-atrust/相关文章智能推荐
1
zsh Tab 补全卡住排查:iTerm2 tmux Control Mode 与 fzf-tab popup 冲突
技术分享记录一次 zsh Tab 补全问题的排查:先为 completion 增加大小写不敏感匹配,再定位 iTerm2 tmux Control Mode 下 fzf-tab popup 后端导致远程 shell 看似卡住的问题,并用条件配置修复。
2
从一票海运入仓开始,梳理海外仓常见业务术语
业务用一批家具从宁波港发往洛杉矶海外仓的例子,串起 FCL、LCL、ETD、ETA、LFD、Demurrage、Detention 等常见术语。
3
团队多人协同维护项目时,如何统一管理 skill
AI把项目级 skill 当成依赖管理,解决团队成员使用不同版本和不同规则的问题。
4
重新认识 .gitignore:目录级规则与 .git/info/exclude
编程从目录级 .gitignore 的作用域、匹配优先级和常见陷阱出发,理解 Git 的忽略机制,并掌握 .git/info/exclude 的使用方法。
5
把 GitHub Action 抽成跨项目复用
服务器记录把飞书通知 Action 从单个项目迁移到共享 actions 仓库后的使用方式。
随机文章随机推荐












