是否可以使用ufw阻止网页?


8

基本上我有两台机器X和Y。

我想使用ufw在HTTP端口80上阻止来自机器X的“ http:// <IP-of-Y-Here> / AFolder /”。

可以很简单地使用ufw通过以下方式完成此操作:

sudo ufw deny out 80

但是可以按照以下方式做一些事情:

ufw deny from (X IP ADDRESS) port 80 to (Y IP ADDRESS)/AFolder

那会满足我的要求吗?

Answers:


6

不可以,您不能使用ufw阻止对Web服务器上某些特定页面的访问,但不能阻止对其他页面的访问。

ufw是用于iptables控制netfilter防火墙的前端,netfilter防火墙内置于Linux内核中。这是一个普通的防火墙-您可以使用它根据包头过滤包。

IP地址和端口包含在数据包的标头中,但没有检索到的Web文档。相反,在建立连接之后,此信息将在数据包主体中传输。

如您所知,可以阻止对某些网站的访问(尽管通常人们很容易绕开该阻止),并且有些实用程序提供了阻止特定页面的粒度,同时允许访问该页面上的其他页面。同一台服务器。但是要解决您的要求:ufw不会这样做。


6

您可以使用阻止访问服务器上的端口ufwman ufw有大量示例,但假设已启用,则应如下所示:

sudo ufw deny out to <<ip address>> port 80

我刚刚在自己的服务器上对此进行了测试,并且可以正常工作。请记住,端口443用于SSL,因此也可能需要阻塞。

请记住,这会阻塞该服务器上的整个端口80。


如果要基于子文件夹开始过滤(允许某些路径但不允许其他路径),则将需要一些可替代请求的内容。防火墙不查看内容,而是查看连接。对于防火墙,对/ subfolder的请求与对/ a-different-subfolder的请求相同。

因此,您正在寻找的是透明代理,可以使某些流量减少。家长控制软件可能是快速设置的最佳选择。像dansguardian以前肯定流行的东西,我想说值得探索。Wiki上提供了更多信息:


简单而完美。在16.04
山姆
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.