Mac通过容器运行深信服easy Connect

摘要:公司用的深信服easy Connect进行内网连接。但是这个软件过于流氓,在windows上会占用u盘导致无法弹出,而且还会生成域名证书,想干什么不得而知。为了防止它继续祸害,决定把它丢到docker里运行。如果失败,建议用虚拟机而不是在本地安装。

安装docker

  1. https://docs.docker.com/desktop/ 下载arm版docker desktop

  2. 安装完后进入setting,关闭docker自动更新。找到docker engineer选项,更换库源,加入以下代码:

    "registry-mirrors": [
        "http://hub-mirror.c.163.com",
        "https://docker.mirrors.ustc.edu.cn",
        "https://registry.docker-cn.com",
        "https://dockerhub.azk8s.cn",
        "https://reg-mirror.qiniu.com"
      ]
    

    terminal输入docker info可以看到Registry Mirrors添加成功了没有。

  3. 打开terminal,输入nohup docker run --device /dev/net/tun --cap-add NET_ADMIN -ti -e PASSWORD=mypass -e URLWIN=1 -e DISABLE_PKG_VERSION_XML=1 -p 127.0.0.1:5901:5901 -p 127.0.0.1:1080:1080 -p 127.0.0.1:8888:8888 hagb/docker-easyconnect:7.6.7 > /dev/null & 其中passwd和7.6.7可以更改为适合自1.己的版本。

    等拉取完(一两分钟)后容器会自动运行。在docker desktop里可以看到。

    之后需要运行只需要在docker desktop里开始,停止就行。

    image-20250114102842894

修改clash x的配置文件

  1. 将原本的配置文件内容复制到新建的sf.yaml中。防止clash自动刷新后将修改清除。

  2. 修改sf.yaml,在proxies和rules添加如下语句:(凡是10开头的内网ip地址都走ec规则)

    proxies:
    	- { name: 'ec', type: socks5, server: '127.0.0.1', port: '1080'}
    rules:
    	- 'IP-CIDR,10.0.0.0/8,ec' 
    

    如果原先的配置中就有“- ‘IP-CIDR,10.0.0.0/8”这一项,则需要把这一项删掉。

  3. 打开clash X的增强模式

连接远程桌面

  1. 打开mac自带的Screen Share,输入127.0.0.1:5901->输入密码(docker启动时的passwd)。此时就可以打开easy connect的登陆界面。输入账号密码登陆(注意登陆时配置文件不要选sf.yaml)。
  2. 登陆后切换到sf.yaml配置文件,这个时候ping 内网地址应该是通的。打开microsoft desktop,输入ip、用户名、密码登陆。

问题

  1. 如果ping 内网地址不通,检查yaml配置和enhance mode是否开启。还可以看看登录后有没有深信服的蓝绿色s型标识,没有的话可能会有问题。关闭容器,重启docker desktop,重新登陆。

image-20250114105824483

  1. 登录时有问题?可以试着在终端输入ping vpn1.company_domain.com,不能ping通试着在Wi-Fi 设置添加DNS“114.114.114.114”(DNS可能会被重置,需要手动添加)后再次尝试。

Mac删除easy connect流氓进程

  1. 进入 sudo su

  2. 删除 /Library/LaunchDaemons/com.sangfor.EasyMonitor.plist

  3. 删除 /Library/LaunchAgents/com.sangfor.ECAgentProxy.plis

  4. 重启

  5. 打开秘钥串,找到深信服添加的根证书(搜索 san),删除

    要使用 EasyConnect 的时候,命令行运行(普通用户身份) /Applications/EasyConnect.app/Contents/Resources/bin/EasyMonitor

    然后在启动台打开 EasyConnect.app ,可以正常使用

Windows解除Easy Connect的U盘占用

如果是windows安装了,可能导致u盘占用无法弹出的情况,在资源管理器 ‘服务’ 里,找到 SangforPWEx,SangforSP 这两个服务,把它们都停止运行,并设置启动类型为手动,防止重启电脑后再自动启动

Windwos使用clash和docker安装ec

和mac大同小异,注意win版clash需要使用tun模式而非系统代理模式。

参考链接

docker安装ec

docerk-ec镜像说明

docerk-ec镜像常见问题

mac删除ec + 登陆ec还需要证书

解决EasyConnect的毒瘤行为

Mac 删除深信服 EasyConnect 的 EasyMoniter、ECAgent 的开机启动和根证书的方法

EasyConnect 你想干甚?

解除U盘占用

windows通过容器安装ec