如何使用pfSense和HAVP建立HTTP防病毒代理
山姆是一家算法交易公司的网络分析师。他获得了UMKC的信息技术学士学位。
在本文中,我将演示如何配置pfSense路由器使用HAVP包作为防病毒代理。
防病毒代理的行为类似于传统的web代理,除了它们扫描通过代理的所有内容的病毒或恶意软件签名。如果代理识别出内容是恶意的,下载将被阻止,客户端计算机将被重定向到一个错误页面。
直接在路由器或网关上扫描病毒的最大好处是,病毒可以在进入您的网络之前被阻止。这个功能对于公共网络或无线热点或者其他你不能确定所有电脑都安装了杀毒软件的情况特别有用。
尽管我的电脑都安装了防病毒程序,我还是想给我的网络再加一层保护。HAVP在这方面做得很好。
先决条件HAVP
如果您之前从未安装过pfSense,请查看指南如何安装pfSense.
为了让HAVP包工作,您需要已经有一个功能透明的鱿鱼代理pfSense上运行。
步骤1:安装HAVP包
首先,您需要安装HAVP包。单击系统菜单中的packages菜单项来加载pfSense包管理器。找到HAVP包,单击说明右侧的加号进行安装。
步骤2:配置HAVP
安装HAVP后,需要更改一些设置才能正常工作。单击“服务”菜单中的“防病毒”项,即可访问HAVP设置。
接下来单击HTTP代理选项卡并选中第一个复选框以启用代理。对于代理模式设置,请选择squid的parent。通过将squid设置为父代理,流量将如下所示
客户端<-> pfSense Gateway <-> Squid Proxy <-> HAVP <-> Internet
请确保代理接口设置为LAN,默认端口号可以正常工作。您可能需要更改语言设置,因为英语不是默认设置。您选择的语言会影响客户端错误消息将以何种语言显示。
接下来一直向下滚动到底部,然后点击保存按钮。
步骤3:启用自动定义更新
要启用病毒定义的自动更新,请单击“设置”选项卡。我建议将AV基础更新设置为每24小时一次。如果你真的担心零日威胁,你可以设置更新更频繁地发生,尽管你将使用更多的互联网带宽,如果你这样做。
选择一个离你很近的区域下载镜像也是一个好主意,选择一个近的镜像可以让你更快地下载定义。
如果您在下载更新时有困难,您可以启用日志记录来帮助找出问题所在。
步骤4:检查服务状态
此时,HAVP应该已经启动并运行了。我喜欢检查状态,只是为了确保所有服务都已启动,定义文件已下载。在HAVP常规页面上,您应该看到代理服务和防病毒服务器旁边的绿色箭头。
在版本字段中,您应该看到ClamAV,后面是您正在使用的病毒定义文件的日期。如果文件过期,请转到设置选项卡并单击Update_AV按钮手动启动更新过程。
步骤5:测试病毒检测
如果想了解用户试图下载病毒时的体验,可以从下面下载EICAR病毒测试文件eicar.org.
测试文件不是实际的病毒,该文件包含一个用于测试杀毒软件的标准化签名。
如果HAVP正常工作,那么您应该被重定向到一个有访问被拒绝消息的页面。如果您没有看到警告页面,请返回并在主HAVP设置页面上检查服务的状态。
步骤6:自定义错误页面
为了让错误页面看起来更专业,我建议定制HTML页面,甚至完全替换它们。您可以添加您的公司名称和徽标、IT部门的联系信息,或您认为可能有用的任何其他信息。
默认页面的HTML文件位于/usr/local/share/examples/havp/templates您可以通过SSH连接控制台直接编辑这些文件,也可以使用WinSCP将这些文件复制到另一台机器上,编辑它们,然后替换现有的文件。
在templates目录中有一个文件夹用于支持每种语言。您在设置页面上选择的语言将决定将使用哪些HTML文件。
如果您决定使用自己的HTML文件,您仍然需要使用相同的文件名。
就作者所知,这篇文章是准确而真实的。内容仅用于信息或娱乐目的,不替代个人咨询或商业、金融、法律或技术问题的专业意见。
©2011 Sam Kear
评论
ada4u2018年12月25日:
此外,此方法仅适用于HTTP普通连接,而不适用于HTTPS
山姆Kear(作家)2016年5月25日来自堪萨斯城:
@Ben
pfSense 2.3中没有HAVP包。现在通过C-ICAP将防病毒支持集成到Squid代理服务器包中。
安装Squid后,你会注意到在Squid服务设置包中有一个防病毒选项卡。这允许您通过代理启用ClamAV防病毒扫描。
本2016年5月25日:
在我的pf系统的可用更新中没有列出HAVP,但是有其他可用的包没有显示在屏幕截图中…奇怪。
mrcharles2016年2月25日:
非常感谢你的报道。
我有一个问题,我遵循你的指南设置Squid和HAVP,不幸的是,HAVP服务仍然停止,当我检查日志时,我得到错误如下,请支持我:
php-fpm[61497]: /antivirus.php: RAMDisk not used. php第6行。诊断:系统MB,可用MB,计算MB。尝试减少“MAXSCANSIZE”值。
akinti科尔2015年6月18日:
嗨。谢谢你提供的信息。我成功安装了HAVP,但几分钟后,它断开了连接,出现了一个错误:“只读/文件/http/ HAVP /”。请问该怎么办?
弗朗索瓦2013年11月09日:
你好,
我喜欢你的解决方案。它轻巧、简单、高效。
然而,在我这边,我从未设法在我的alix 2d13(可用235MB RAM)上安装HAVP。无论pfSense的版本是什么(2.0,2.0.3,2.1),我总是有一些bug(交换空间,只读/var, fresh clam bug,等等)。
您知道是否存在预装HAVP的pfSense的compact-flash映像吗?
谢谢
karanik2013年8月7日:
你好,
我对此有意见。秒后停止鱿鱼服务。
出什么问题了?