../_images/forward_proxy.png

OPNsense配备了功能齐全的正向缓存(透明)代理。缓存代理通过缓存对频繁请求的网页减少带宽使用并缩短响应时间。访问控制列表可用于用户身份验证和/或(基于类别)Web过滤器。

功能包括:

  • 多接口支持

  • 透明模式(包括SSL / HTTPS)

  • ICAP支持反病毒/恶意软件引擎

  • HTTP代理

  • FTP代理

  • 用户认证

  • 访问控制列表(对http(s) 和ftp都有效)

  • 黑名单

  • 基于类别的Web过滤

  • 可以与流量×××器结合使用

认证

用户身份验证可以使用OPNsense标准和内置身份验证器完成。包括:

  • LDAP(包括Microsoft Active Directory)

  • Radius

  • 本地用户管理

  • 不进行认证

访问控制

OPNsense支持全面访问控制,包括基于:

  • 子网

  • 端口

  • MIME类型

  • 禁止IP

  • 白名单

  • 黑名单

  • 浏览器/用户代理

流量控制

代理可以与流量×××器结合使用,并充分利用其×××功能。此外,它还包括自己的选项:

  • 最大下载量

  • 最大上传量

  • 整体带宽限制

  • 每个主机带宽限制

基于类别的Web过滤器

不需要额外的插件,例如squidGuard, 因为OPNsense有基于内置类别的Web过滤器支持。主要功能包括:

  • 从远程URL获取

  • 支持平面文件列表和基于类别的压缩列表

  • 自动将基于类别的黑名单转换为squid ACL

  • 随时了解内置调度程序

  • 与最受欢迎的黑名单兼容

透明模式

透明模式意味着所有请求都将转移到代理,而无需在客户端进行任何配置。透明模式适用于不安全的http请求,但是通过安全(SSL)https连接,代理将成为中间人,因为客户端将“与”代理“对话”,代理将使用客户端需要信任的主密钥对流量进行加密。

虽然我们不鼓励在透明模式下使用https,但此功能在16.7以后的版本中发布。

警告:使用透明HTTPS代理可能是一种危险的做法,您使用的某些服务可能不允许这种做法,例如网上银行。

WPAD和PAC

如果无法使用透明代理,OPNsense仍支持通过WPAD / PAC进行自动代理配置。

警告:通过DNS的WPAD要求Web界面在默认HTTP端口(TCP / 80)上运行,这也是一种安全风险(MITM***)。在这种情况下,您应该通过代理连接或避免从不受信任的网络配置应用程序。

设置高速缓存代理

../../_images/proxy_basics.png

启用/禁用

要启用代理,只需转到“ 服务” - >“Web代理” - >“管理”,然后选中“ 启用代理”,单击“ 应用”。默认设置将使用基于本地用户数据库的用户身份验证启用代理,并在LAN接口的端口3128上运行。

更改代理接口

如果要更改代理将绑定的接口(子网),请单击“ 正向代理 ”选项卡。现在在代理接口字段中添加/删除接口。添加时确保已应用并且标签可见(输入或从列表中选择)。

更改代理侦听端口

默认情况下,代理将在端口3128处侦听,您可以通过单击“ 正向代理 ”选项卡来更改此设置,并填写代理端口数据库中的端口。不要忘记应用您的更改。

启用缓存

要启用缓存,请单击“ 代理设置”旁边的箭头以查看下拉菜单,然后单击“ 本地缓存设置”

../../_images/proxy_cache.png

选中启用本地缓存,然后单击应用

注意:由于默认情况下不创建缓存,您需要在系统->诊断-> 服务下停止并启动服务,这将确保正确创建缓存。

高级

在高级设置下(请参阅表单左上角的模式切换),您可以更改缓存大小,目录结构和保留在缓存中最大对象尺寸。同样,默认设置适用于普通浏览,将创建一个100MB缓存,最大对象尺寸为4MB。

变更认证方法

单击正向代理选项卡旁边的箭头来显示下拉菜单。现在选择认证设置并在认证方法字段中选择所需的认证源 。如果您不想使用任何身份验证,请单击“ 清除所有”

根据您在系统-> 访问->服务器下设置的认证服务器, 您可以选择以下一项或多项:

  • 无身份验证(保留字段为空)

  • 本地用户数据库

  • LDAP

  • Radius

FTP代理

启用FTP代理单击“正向代理”选项卡旁边的箭头,显示下拉菜单。现在选择FTP代理设置并在FTP代理接口字段中选择一个或多个接口并应用

注意:FTP代理仅在启用代理服务器本身时才起作用。代理仅适用于非加密的ftp流量。

访问控制列表

您可以通过单击“ 正向代理”旁边的箭头来设置ACL,然后 选择“ 访问控制列表”。在这里你可以:

  • 设置允许的子网(默认情况下,将允许代理接口)

  • 添加不受限制的IP地址(不受限制意味着这一点,没有身份验证,也没有针对这些IP的黑名单)

  • 添加禁止主机IP地址(禁止将阻止此客户端使用代理)

  • 白名单(点击(i)查看示例,白名单优先于黑名单)

  • 黑名单(如果白名单不允许,这将根据正则表达式阻止流量)

警告:填写标记字段后,请不要忘记按Enter或逗号,否则将不会应用该值。它看起来应该类似于:

../../_images/proxy_tag.png

远程黑名单/广告拦截

使用简单的平面文件来屏蔽广告。对于此示例,我们将使用此处的广告列表:

http://pgl.yoyo.org/adservers/serverlist.php?hostformat=nohtml

此列表是一个简单的平面列表,如下所示:

101com.com
101order.com
123found.com
180hits.de
180searchassistant.com
1x1rank.com
207.net
247media.com

转到“ 服务” - >“Web代理” - >“管理”,然后单击“ 远程访问控制列表 ”选项卡

现在单击表单右下角的+以添加新列表。