TL;博士:
如何阻止chrome拒绝加载被OpenDNS阻止的页面,而服务器已经明确请求了HTTPS?
长问题:
Chrome在我的组织中遇到了很大的问题。 我使用DNS来pipe理网站拦截,对于不适合的网站,对我这样做的组织来说可能是一个风险。
我只想通过networking使用Chrome浏览器,因为Internet Explorer与我们使用的一些网站存在兼容性问题(我们无法改变这一点,或者使用不同的网站)。 因此使用Internet Explorer不是一个解决scheme。
我不想安装不同的浏览器,原因有很多。 主要是因为重写我们使用的定制插件的困难。
不过,最近我遇到了很多Chrome SSL错误的问题。 我不能使用我的自定义OpenDNS块页面,它使用联系表单来请求解除阻止。
Chrome通常会阻止要求HTTPS的网站OpenDNS(一个很好的例子是Facebook)。 一些网站,如https://internetbadguys.com (OpenDNS示例)这意味着chrome拒绝加载阻止页面,解释该网站被阻止。 相反,他们经常打电话给IT支持,但是他们想要一个解决scheme,因为他们厌倦了大量的SSL错误。
我试图寻找方法来解决这个问题。 我努力了:
有没有人有关于如何禁用,绕过或解决这个“function”的想法?
编辑:这是我正在谈论的一个例子 –
我发现在谷歌图片。
注意:我不会阻止Google。
编辑2:我的时钟是正确的。 我也不能停止使用OpenDNS。
我和你100%在这。 我们公司使用OpenDNS阻止某些网站。 YouTube.com就是其中之一。 但是,我们还会向员工发放“绕行代码”以避开受阻的网站。 这是如何工作的:
所以问题是 – 如果Chrome甚至没有给你select,你怎么绕过OpenDNS的绕过代码?
替代scheme:使用Firefox或(我很痛苦,build议这样做)Internet Explorer。
那么…您是在redirect真实的Google网站,并抱怨Google的浏览器发现您已经拦截了Google的网站?
从源代码构buildChrome并将其部署到您的企业。 或者停止使用OpenDNS 。
您基本上要求打破您的build议SSL安全。
Chrome具有称为固定证书的function,其中知名网站证书存储在浏览器内。
这意味着只要提供了除期望目的地之外的其他证书,浏览器就会发出关于中间人攻击的警告。
这是一个安全function,不应该被禁用。
劫持SSL然后提供无效的证书是一种不好的做法,人们只要发生这种情况就需要抱怨。 根据你的描述,听起来像这样的劫持正是OpenDNS正在做的事情。
我认为这是一个不好的做法,是因为这可能会导致一些用户认为存在劫持SSL的正当理由,这种错误认识对安全性是不利的。
所以你能对它做点啥?
如果你想留在OpenDNS,我build议你find他们直接劫持连接的IP地址。 在您的networking边缘,阻止除端口80外的所有到该IP地址的出站连接。确保TCP SYN数据包得到一个TCP RST数据包作为回报。 响应一个ICMP错误或简单地丢弃SYN不能保证通过发送TCP协议栈来处理。
如果连接在DNS层被劫持,并且在尝试连接到端口443时发送了TCP RST,则浏览器将显示自己的错误消息,如“此网页不可用”,这比证书警告好得多。
您仍然可以将自定义错误消息显示给连接到端口80的用户,但是正如其他人所指出的那样,您无法使用HTTPS来完成此任务,因为HTTPS的全部目的都是为了防止这种情况发生。
为什么用户可能首先连接到端口443而不是端口80? 至less有三个可能的原因:
https:// 。 在这种情况下,你不能给用户一个自定义的错误页面,所以你需要让他们事先知道如何请求解锁。