我需要创建一个仅加密的代理服务器。我的意思是,从世界任何地方,我都希望公司所有笔记本电脑的 Internet 流量都经过加密并通过这台服务器进行路由。缓存会很好,但不是必需的;笔记本电脑和服务器之间的加密是唯一的要求。
有哪些方法可以完成此设置?我一直在阅读有关 Squid 的文章,但没有找到太多有关加密的信息。我认为会涉及一些 SSL 或 SSH,但我对这个领域真的很陌生。浏览器将是连接的主要用户,但支持 IM 和电子邮件客户端也很好。客户端可以是 Windows 和 nix,而服务器可以是任何开源的。
编辑:很明显,VPN 将是比代理更好的解决方案。在我接受答案之前,有人可以对此发表评论:
当笔记本电脑插入另一个公司网络时会发生什么?例如,顾问坐在 ABC 公司的办公室。无论出于何种原因,他们都需要启动像 myabc.internal.com 这样的内部网站点。我相信 Intranet DNS 服务器通常会正确解决这个问题。如果我连接到这个 VPN,这会起作用吗?我知道连接到代理的浏览器会遇到同样的问题,但您可以有两个浏览器:一个通过代理,一个不通过。或者这不是 VPN 的问题吗?
我同意 pjz - 听起来您正在寻找 VPN。
OpenVPN 是一种很棒的免费 VPN 入门方法。它很稳定,可用于生产,但即使您最终不使用它,它也是熟悉 VPN 的好工具。使用静态密钥设置(用于播放)真的很容易,使用证书设置(用于生产用途)稍微困难一些。
您在问题中说的是“互联网流量”,但目前尚不清楚这是否仅意味着浏览网站,或者实际上所有到互联网的 IP 流量。您可以将“默认网关”路由向下传递到带有 OpenVPN 的客户端,以便他们的 Internet 绑定流量将沿着 OpenVPN“管道”路由到服务器,然后服务器可以将其放到 Internet 上。
如果您只想通过 OpenVPN 路由 HTTP/HTTPS(即,如果它们 PING、运行 Skype 等,则流量可以直接进入 Internet),您也可以考虑部署像 Squid Cache 这样的东西,然后配置客户端浏览器使用该代理服务器,使得到代理的流量仅通过 OpenVPN“管道”路由(即,将代理放在 VPN 可访问的 IP 地址上,但保留客户端的默认网关)。(我相信,您甚至可以执行“推送“dhcp-option 252 ...”以通过 OpenVPN 将代理自动配置 URL 推送到客户端。)
你有一些选择,这取决于你想要做什么。
回复:您对 pjz 关于 Intranet 站点访问的评论
你将不得不以某种方式“支付吹笛者”。
如果您只是通过默认网关将所有 Internet 绑定流量路由到 VPN 中,那么任何到子网上 Web 服务器的流量仍然会“直接传输”。但是,如果 Intranet Web 服务器位于不同的子网中,则它们到该子网的流量将通过 OpenVPN 管道而不是到现场路由器。那会很糟糕。
如果您按照我上面的建议通过 OpenVPN(或其他方式)将代理自动配置脚本推送到客户端,您可以在该文件中放置“异常”以导致客户端“直接运行”。我通常在代理自动配置文件中这样做:
if ( isPlainHostName(host) ) { return "DIRECT"; }
Run Code Online (Sandbox Code Playgroud)
这会导致直接访问其中没有任何点的主机名。
如果您知道需要直接访问的特定主机(或通配符匹配模式):
if ( shExpMatch(url,"http://*.customer.com")) { return "DIRECT"; }
if ( shExpMatch(url,"http://known-intranet-server.customer.com")) { return "DIRECT"; }
Run Code Online (Sandbox Code Playgroud)
如果您知道您的用户将在哪里工作,您可以在此之前将异常放入 proxy-autoconfiguraiion 文件中。但是,如果没有,您将不得不被动地处理此类问题。但是,如果您事先不知道,那么您就是在寻求一种可以自动“做正确的事情”的解决方案。不幸的是,计算机在这方面做得很糟糕。>微笑<
无论您部署什么,我都会花额外的时间来使用代理自动配置文件。它为您提供了一种集中的方法(可以在不接触客户端计算机的情况下“即时”更新)来控制将 HTTP 流量转移到代理服务器或让它直接进入 Internet。对于这种应用程序,它们非常方便。
归档时间: |
|
查看次数: |
1943 次 |
最近记录: |