是否可以在虚拟机(例如 Linux)上安装 zscaler,并使用该机器仅访问少数主机名?我会指示其他机器仅通过这台虚拟机访问这几个主机名,其他一切都将正常进行(通过我的本地网关)。有没有更简单的方法来实现这一点?
基本上,我想阻止 zscaler 调查我机器上的所有流量。
更新
因此,我设法做了一些事情。我刚刚将 zscaler 安装到 vmware ubuntu 服务器上,并添加了 iptables 规则:
sudo iptables -t nat -A POSTROUTING -o zcctun0 -j MASQUERADE
zcctun0
zscaler 添加的接口在哪里
我还在 Windows Hosts 文件中设置:
55.22.22.22 some.server.com
我在 Windows 中添加了静态路由:
route add 55.22.0.0 mask 255.255.0.0 192.168.44.131 if 19
if 19
虚拟机使用的 vmware NAT 网络接口在哪里,接口192.168.44.131
上的 ubuntu 的 IP 是什么ens33
。
我现在遇到的问题是 - 我需要some.server.com
先从 vmware ubuntu 服务器中手动访问 Firefox,否则,在 Windows 中,当它第一次尝试连接时,我只会遇到连接超时。只要我some.server.com
在 ubuntu 中打开,我也可以从 Windows 访问所有服务器。
任何想法?
更新
似乎我甚至不需要打开页面。我只需这样做
nslookup some.server.com
在 Ubuntu 服务器内部,然后它也可以在 Windows 中运行(但仅限于该域名)。
奇怪的是,它nslookup
返回的55.22.22.22
是 IP(这是我在 hosts 文件中已经设置的)。此外,zscaler 似乎有自己的 DNS(127.0.0.53#53)——所以我猜一定是因为这个原因。
更新
安装bind9
并使其转发至 127.0.0.53 后,在 Windows Power Shell 中添加此内容后,Add-DnsClientNrptRule -Namespace ".somedomain.com" -NameServers "192.168.44.131"
一切从头开始。很好...
唯一剩下的事情是 - 当 192.168.44.131 DNS 返回答案时,如何自动将静态路由添加到 Windows - 因此它通过 vmware VM 进行
答案1
据我所知,在 Windows 上不可能实现。也许可以使用 DNS 代理?
答案2
唯一剩下的事情是 - 当 192.168.44.131 DNS 返回答案时,如何自动将静态路由添加到 Windows - 因此它通过 vmware VM 进行
答案3
老板,看来你的设置和其他东西都走在正确的轨道上,通过运行 Zscaler 的虚拟机路由特定流量,同时允许其他流量使用你的本地网关。但是,你在 DNS 解析方面遇到了一些问题,并且已经在解决这些问题方面取得了进展。
只是为了确保我们的观点一致:您想通过 Zscaler VM 路由特定主机名的流量,并让其他所有内容使用您的本地网关?如果是这种情况,这里有一些建议来解决 DNS 问题!
1.Ubuntu 服务器(Zscaler VM)上的 DNS 配置:
确保您的 Ubuntu 服务器(Zscaler VM)已配置为使用适当的 DNS 服务器。如果 Zscaler 有自己的 DNS 解析器(如您所提到的 127.0.0.53#53),那么它正确解析特定主机名至关重要。您可能需要配置 Zscaler 的 DNS 设置来处理您的自定义主机名到 IP 映射。
2.Windows中的DNS解析:
当 Windows 尝试访问自定义主机名时,它可能依赖于其自己的 DNS 解析过程。确保您的 Windows 计算机使用 Ubuntu 服务器(Zscaler VM)作为要通过 Zscaler 路由的特定域的 DNS 服务器。您提到使用 Add-DnsClientNrptRule 进行设置。
3. Ubuntu 上的 DNS 缓存:
在您的更新中,您提到在 Ubuntu 服务器内运行 nslookup some.server.com 似乎可以解决 Windows 的问题。这表明 Ubuntu 服务器可能正在缓存 DNS 记录。确保 Ubuntu 服务器上的任何 DNS 缓存服务都已正确配置,以将 DNS 查询转发到 Zscaler 的 DNS 解析器。
4.使用bind9进行DNS转发:
您提到安装 bind9 并将其配置为 127.0.0.53(Zscaler 的 DNS)的转发器。确保 bind9 正确转发您要通过 Zscaler 路由的特定域的 DNS 查询。验证 bind9 中的 DNS 配置是否包含必要的转发区域。
5.测试和验证:
在 Ubuntu 服务器和 Windows 上配置 DNS 设置后,从 Windows 测试自定义主机名的 DNS 解析,以确保它们解析到正确的 IP 地址。您可以使用 nslookup 或 ping 来验证 DNS 解析是否按预期工作。
6.清除DNS缓存:
如果您对 Ubuntu 服务器或 Windows 上的 DNS 设置进行了更改,最好清除两个系统上的 DNS 缓存,以确保新设置立即生效。
因此,通过确保您的 Zscaler VM 和 Windows 计算机都配置为使用正确的 DNS 服务器和转发规则,您应该能够通过 Zscaler VM 路由特定主机名的流量,同时允许其他流量使用您的本地网关。DNS 配置与 HMFIC 一样,在使此设置顺利运行方面起着关键作用。
希望这可以帮助!