Squid内容过滤:通过扩展功能阻止/下载音乐MP3,mpg,mpeg,exec文件

时间:2020-01-09 10:43:43  来源:igfitidea点击:

出于安全原因并节省带宽,如何以某种方式配置Squid代理服务器,使我的用户不应下载以下所有文件:MP3 MPEG MPG AVG AVI EXE

如何配置Squid内容过滤?
您需要使用SquidACL(访问控制列表)按扩展名阻止所有文件。

如何使用Squid内容过滤ACL阻止音乐文件?

首先打开您的squid.conf文件/etc/squid/squid.conf,运行:

# vi /etc/squid/squid.conf

现在,将以下行添加到您的SquidACL部分:

acl blockfiles urlpath_regex -i "/etc/squid/blocks.files.acl"

当文件被阻止时,您想显示自定义错误消息:

# Deny all blocked extension
error_directory /usr/share/squid/errors/English
deny_info ERR_BLOCKED_FILES blockfiles
http_access deny blockfiles

保存并关闭文件。
在/etc/squid/error /目录或者/usr/share/squid/errors/English目录中创建一个名为ERR_BLOCKED_FILES的自定义错误消息HTML文件:

# vi /usr/share/squid/errors/English/ERR_BLOCKED_FILES

追加以下内容:

<HTML>
<HEAD>
<TITLE>ERROR: Blocked file content</TITLE>
</HEAD>
<BODY>
<H1>File is blocked due to new IT policy</H1>
<p>Please contact helpdesk for more information:</p>
<ul>
<li>Phone: 555-12435 (ext 44)</li>
<li>Email: [email protected]</li>
</BODY>
</HTML>

现在创建一个名为/etc/squid/blocks.files.acl的新文件:

# vi /etc/squid/blocks.files.acl

追加以下文字:

\.exe(\?.*)?$
\.avi(\?.*)?$
\.bat(\?.*)?$
\.tar(\?.*)?$
\.mpg(\?.*)?$
\.mp3(\?.*)?$
\.mp4(\?.*)?$

保存并关闭文件。
重启Squid:

# /etc/init.d/squid restart

Squid在行动:
Squid在行动

rep_mime_type

要阻止活动流格式(Windows Media Player)和Flash视频格式,请在squid.conf中添加以下内容:

acl media rep_mime_type x-ms-asf
acl mediapr urlpath_regex \.(afx|asf)(\?.*)?$

acl media rep_mime_type video/flv video/x-flv
acl mediapr urlpath_regex \.flv(\?.*)?$

http_access deny mediapr
http_reply_access deny media

保存并关闭文件。
重新加载Squid服务器:

# systemctl reload squid

或者

# squid -k reconfigure