我想阻止一些网站的HTTPS版本,并允许他们在HTTP上。 涉及的主要网站是Youtube和Google图片/video。 这是因为在HTTP版本上,我可以在这些平台上强制使用Safesearch筛选器,而我无法使用HTTPS版本。 对我而言,这是一个非常严重的问题,它会损害Google提供的Safesearchfunction的许多优点。
有没有可以做到这一点的软件/configuration?
我正在使用一个过滤软件(K9networking保护),在我提到的网站的HTTP版本上执行Safesearch,但无法在HTTPS版本上执行。
我想我需要在计算机级实现这一点,因为绕过路由器的过滤解决scheme非常容易,特别是当他们依赖于DNSconfiguration时。
有两种方法可以做到这一点:
1)根据目标IP地址和端口,在防火墙处阻止它。 例如,当我从我的位置查找YouTube时,我得到:
C:\ Users \用户mark.henderson> NSLOOKUP
默认服务器:enetsdc2.enets.local
地址:192.168.161.2
> youtube.com
服务器:enetsdc2.enets.local
地址:192.168.161.2
名称:youtube.com
地址:2404:6800:800b :: 88
74.125.237.135
74.125.237.136
74.125.237.142
74.125.237.128
74.125.237.134
74.125.237.129
74.125.237.131
74.125.237.130
74.125.237.133
74.125.237.132
74.125.237.137
>
这给你一个相当清晰的阻塞列表,显然HTTPS是443端口。 所以如果你想阻止443这些IP地址,那么这是一个开始。 重复和冲洗每个领域。
与此相关的是,这只会阻止最初的访问。 可能还有其他方法可以访问video,例如在使用不同IP地址的子域上。 例如,Google地图由数十个子域提供,每个子域可以有不同的IP地址。 反复试验几乎是最简单的方法。
2)中间人SSL检查。 我相信微软TMG防火墙可以做到这一点(虽然我没有真正检查)。 基本上,YouTube和您的networking之间的SSL连接终止在您的防火墙。 防火墙然后解密会话,检查stream量,应用其filter,然后使用自己的可信证书对其进行重新encryption ,从原始证书复制详细信息。
为此,防火墙基本上作为自己的CA,为不属于自己的域颁发证书。 为了实现这种无缝连接,每个浏览器/客户端必须信任防火墙CA,因为证书将由其颁发,而不是实际的证书。 有一点知识的人(通过检查证书链)很容易检测到这一点。 如果设置不正确,会给每个用户一个证书错误。
总而言之,我提出第一种方法,理由很简单,就是说你不会意外地解密会计师的网上银行会议,所以如果CEO存入的银行账户中缺less100,000美元为他的情妇。
除了以下的评论之外,还有第三个选项,就我所知,只有Google提供。 如果您在运行自己的DNS服务器的networking上,并且知道如何覆盖某些站点的公共DNS条目,则此操作才有效。
根据Google安全search和针对学校的SSLsearch ,您可以使用nosslsearch.google.com的cname覆盖www.google.com的Alogging。 这将执行初始SSL握手,但会立即将用户redirect到非SSL进行search。
这不适用于YouTube或其他服务,除非他们也提供这项服务。
其他注意事项:DNS阻止是阻止访问的一种废话方法,是正确的,因为它可以被绕过。 但是,如果您在公司networking中,则可能是在内部运行您自己的DNS,因此除了您明确允许的内部DNS服务器外,您始终可以阻止DNSnetworking之外的stream量。 但另一方面,您只能使用DNS来阻止域名 ,而不是使用协议。 所以你可以阻止youtube.com,但不允许在HTTP上,并在HTTPS上阻止它。
你认为路由器是错误的地方做这个,但是不正确。 事实上,如果你想获得最大的成功机会,这是唯一可以做到的地方。 因为路由器(以及它们后面的防火墙)是进出networking的唯一途径,所以stream向互联网的任何stream量都可以通过您的控制stream量达到99%。 (另外1%是将个人电脑连接到智能手机上网的人,但这是一个pipe理/社会问题,而不是技术问题)。