aTrust是深信服原easyconnect的升级产品,重点打造了一个“零信任”的概念,就是这个概念让我头皮发麻,其在官网直接挂着
终端检测深入:支持进程级检测,可发现和阻止终端上非可信应用进程;在登录时、每一次访问业务时,对终端环境持续进行检测和认证,确保终端合规。
这和病毒有什么差别么?所以我当然不能让这种糟粕运行在我的macOS宿主机上,于是我开始了折腾之旅。
第一步,申请个人免费的vmware
这个申请的方法大家可以在网上搜一下,有很多详细的图文教程,我后面会考虑补充一篇博客,但现在没时间搞。
当然你也可以试试免费的Oracle VM VirtualBox,理论上来说也是一样可用的。
第二步,下载debian 11的镜像文件
我要特别讲一下为什么要下载debian 11,这是因为atrust官方提供的linux安装包特别强调了自己支持的是国产化的uos和麒麟os,但是咱们下载下来以后是一个deb文件,经过我自己测试,将deb包转为rpm包以后,在centos 7/centos 7.5/centos 8上都无法安装。
当然我不排除是我自己操作有问题,大家如果特别喜欢用centos的,可以考虑自己折腾一下。但是centos已经不维护了,在使用过程中会有一些问题。
经过我自己的测试,debian 11是可以使用的。
debian 11的镜像推荐大家用BT种子的方式,实测比直接通过镜像站下载的速度更快,但请不要使用迅雷这类只下载不上传的“吸血”软件。 BT种子官网下载地址:debian-11.6.0-amd64-DVD-1.iso 其他版本的镜像大家可以自行在官网查找
补充信息:BT下载软件推荐qbittorrent,请在下载成功以后保持至少24小时运行时间以供其他人从您本地获取文件。如果您有NAS服务器那就更好 请不要使用迅雷这类只下载不上传的“吸血”软件
第三步,使用vmware引导安装debian 11
这里我就不写具体的操作步骤了,请注意:
虚拟机网络要选择桥接(这非常重要)
你需要安装桌面才能打开atrust登录你的账号
语言选择的时候直接选择中文,否则时区在启动后修改比较麻烦,很可能导致无法使用apt-get update更新
可能会遇到的问题
无法执行apt-get update或者是速度较慢
可以改用镜像源,修改/etc/apt/sources.list
文件的内容,这里用aliyun举例:
deb https://mirrors.aliyun.com/debian/ bullseye main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye main non-free contrib
deb https://mirrors.aliyun.com/debian-security/ bullseye-security main
deb-src https://mirrors.aliyun.com/debian-security/ bullseye-security main
deb https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib
deb https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib
然后再执行apt-get update
即可
如果你一直遇到更新失败,你可以按照这个检查顺序:
ping mirrors.aliyun.com 看看能否ping通网络
检查 ping mirrors.aliyun.com 返回的IP是否是宿主机可以ping通的IP,以此确认是不是dns解析存在问题。存在问题可以通过修改debian 11上的/etc/hosts文件来解决
检查时区/时间是否正确
第四步,在debian 11中安装atrust
atrust下载客户端时,选择amd 64 麒麟Kylin即可,官网似乎没有找到下载介绍页,这个地址应该是有各个团队/企业的VPN登录页提供的
下载完的deb安装包,可以通过scp
命令直接传输到debian中,当然也可以使用一些sftp
客户端
安装deb时,需要带上相关的依赖,你可以执行
sudo apt-get -f install atrust.deb
debian 11默认安装过程中没有开启root账号的ssh远程登录配置,你得去把这个打开,或者你直接在虚拟机页面中执行
第五步,debian开启路由转发
通过修改/etc/sysctl.conf
文件中的net.ipv4.ip_forward
的值改为1
,并执行sysctl -p
使得配置生效即可 再把debian的防火墙关闭即可
第六步,macOS宿主机修改路由a
sudo route add 1.0.0.0/8 【这里写上debian虚拟机的IP地址】
这样就可以了
1.0.0.0/8
这个是我随便写的,如果你们用的是192,或者172的开头的IP地址,那么就是192.0.0.0/8
或者172.0.0.0/8
。 当然如果你本地的IP地址就是192开头的,那么你可能需要拆得更细致一点。假设你本地的IP地址是192.168.1.100,你的内网地址是192.168.31开头,那么你的shell脚本就应该是
sudo route add 192.168.32.0/24 【这里写上debian虚拟机的IP地址】
这个地方需要你对网络有一定的了解,添加成功以后可以使用telent
命令确认一下是否能通特定的端口
此外你还需要注意两点:
这个debian虚拟机用的是桥接模式,所以每次连接新的路由器可能会拿到不同的IP,这时候你需要删掉之前的路由,然后加上新的路由
sudo route delete 1.0/8
对于内部使用域名访问的服务,则需要修改macOS宿主机的hosts文件,或者你本地自建一个dns服务来处理
这样做了以后,不管你是ping
还是 telnet
还是 curl
或者是socket
连接都可以无感体验,debian 11推荐1c1g的配置即可,肯定会比你直接在macOS宿主机上登录atrust会耗电一些。如果有条件的话,也可以把debian 11部署到其他的电脑上。
其他你可能需要了解的
macOS宿主机更换网络以后如何处理?
我尝试过单独重启网络
sudo systemctl restart networking
但实际没有效果,具体原因我暂时也没时间去搞了,我目前是通过重启debian 11来解决的
sudo systemctl reboot -i
为什么不使用docker而选择虚拟机?
macOS上的docker本质上也是一个运行在虚拟机中的,并且docker在官网已经明确说明macOS上的docker服务无法实现从宿主机到docker容器的通信
GitHub上也有相关的解决方案(docker-connector),如果你感兴趣的话,你可以动手尝试一下。docker安装debian 11以后,安装一个vnc server即可解决atrust客户端登录的问题,其他操作应该和我这篇博客的方法相差不大