OPNsense设置强制门户教程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OPNsense设置强制门户教程相关的知识,希望对你有一定的参考价值。

强制门户是一种网络安全解决方案,可自动控制和管理用户对公共网络的访问。强制门户通常用于开放访问网络中的访客管理,这些网络可在酒店、医院、机场和公司网络中找到。启用强制门户后,除非用户提供电子邮件、姓名和手机号码等个人信息,或通过填写基于Web的注册表单通过凭证进行身份验证,否则对Internet的访问将受到限制。

OPNsense是一个基于FreeBSD 的防火墙和路由平台,它是开源的,易于使用且易于构建,它可以轻松配置强制门户,方便以安全的方式为用户提供Internet 访问。

需要进一步获取防火墙方面的知识,请关注“pfSense防火墙”。

本教程将分以下几个部分进行介绍:

  • 配置强制门户的好处
  • 强制门户如何工作
  • 强制门户设置
  • 配置强制门户
  • 使用自定义模板
  • 限制访客网络上的带宽
  • 管理凭证系统
  • 查看强制门户会话

配置强制门户的好处

1.安全性

强制门户可以帮助企业保持业务符合监管标准和良好实践,通过热点向用户提供 Internet 访问。

强制门户可以向用户显示服务条款,他们必须在使用公司的 Wi-Fi 热点之前接受这些条款。管理员这样做是为了确保他们自己的用户对他们的行为负责,并且他们不承担法律责任。业主可以通过要求其用户在通过强制门户访问网络之前同意服务条款页面的条款来保护自己免于承担法律责任。强制门户通过将任何 Web 请求“重定向”到特定页面来运行,直到用户单击同意服务条款。因此,无论浏览器访问什么地址,当用户启动浏览器时,强制门户页面都会首先出现。

2.带宽管理

一些用户总是滥用互联网服务,例如每天保持数小时在线,每天访问多次,甚至通过多个终端连接。

强制门户提供了许多措施来确保对所有用户的充分访问:可以控制连接时间、每个用户的终端数量、带宽使用。

可以使用强制门户管理带宽,并创建可配置的时间限制,来确保每个用户都可以保持连接,并访问网络。

3.市场营销

在商业方面,强制门户为无缝营销提供了理想的机会,使用户可以在关键时刻参与他们的互联网体验,并且是满足各种业务需求的强大媒介。要填写调查、观看赞助广告或突出当前促销活动,都可以使用强制门户来实现。

强制门户如何工作

OPNsense提供了一个强制门户来强制请求网络访问的客户端进行身份验证或将他们重定向到点击页面。该解决方案通常用于热点网络,但也广泛用于企业网络,为Internet 或无线访问提供额外的安全层。

OPNsense强制门户具有以下功能:

  1. 基于类别的Web过滤:通过结合强制门户和缓存代理,可以使用基于Web类别的过滤并阻止用户访问特定的内容,以及通过启用缓存来减少Internet 带宽使用并提高响应时间。
  2. 超时和随时回来:连接可以在设定的时间后终止(空闲超时)和/或在设定的分钟数后强制断开连接,即使用户仍然处于活动状态(硬超时)。如果用户在空闲和/或硬超时内重新连接,则不需要登录,并且可以恢复用户的活动会话。
  3. 带宽管理: 防火墙具有流量整形功能。其内置的流量整形器可用于执行以下操作:
  • 可以优先考虑协议端口号和/或 IP 地址。
  • 均匀分配带宽。
  1. 绕过门户: 可以使用白名单选项来允许某些 IP 地址或 MAC 地址绕过门户。
  2. 模板管理: OPNsense中独特的模板管理器可以轻松创建自己的登录页面。同时,它提供了额外的功能,例如:
  • 创建自己的弹出窗口的选项
  • URL重定向:通过强制门户认证或点击后,可以将用户强制重定向到指定的URL。
  • 自定义起始页
  1. 区域管理:可以在每个接口上配置不同的区域,也可以多个接口共享一个区域配置。每个区域都可以使用自己独特的强制门户模板或与另一个区域共享。
  2. 身份验证: OPNsense强制门户提供 HTTPS 安全身份验证或带有 URL 重定向到特定页面的仅启动门户。要对区域中的用户进行身份验证,可以使用以下来源:
  • 本地用户管理器
  • 代金券/门票
  • Radius
  • LDAP [微软活动目录]
  • 无身份验证(仅限启动页面)
  • 多个(前面的组合)
  1. 优惠券管理器: OPNsense 的强制门户包括一个简单的优惠券创建系统,可以将优惠券导出到为CSV 文件,并与LibreOffice 或 Microsoft Word 模板结合来打印凭证,生成包含您公司徽标和样式的专业外观的卡片。
  2. 平台集成:强制门户应用程序可以使用集成的 REST API 与其他服务集成。
  3. 实时报告: OPNsense强制门户具有基本的实时报告功能,例如:
  • 活跃期
  • 优惠券剩余时间
  • 最高 IP 带宽使用情况(实时图表)

强制门户设置

为保持网络安全,一般应将访客网络与专用 LAN 隔离,然后在访客网络上部署一个强制门户,让访客访问Internet。

在本教程中,我们将为OPNsense上的访客网络启用和配置强制门户,具有三个网络接口/区域:

  • 局域网
  • 广域网
  • 访客网

按照下面的4 个步骤在OPNsense 防火墙上设置强制门户。

第 1 步 - 接口配置

1.1. 导航到​​Interfaces​​​→​​Assignments​​。

1.2. 在字段中输入接口的描述性名称,如GUESTNET

1.3. 按下​​+​​按钮添加新接口。

OPNsense设置强制门户教程_强制门户

图 1. GuestNetwork 的接口分配

1.4. 单击​​Save​​。新接口将被调用。

OPNsense设置强制门户教程_强制门户_02

图 2. 保存新创建的接口

1.5. 在接口列表中单击​​GUESTNET​​更改其设置。

1.6. 选择​​Enable Interface​​。

1.7. 选择​​Block bogon networks​​选项。

1.8. ​​IPv4 Configuration Type​​​选择为​​Static IPv4​

OPNsense设置强制门户教程_强制门户_03

图 3. 启用 GuestNet 接口

1.9. 设置静态 IPv4 地址,例如​​172.16.10.1​​​, 掩码为 ​​24​​。

1.10. ​​IPv4 Upstream Gateway​​​选择​​Auto detect​​。

OPNsense设置强制门户教程_强制门户_04

图 4. GuestNet 接口上设置 IP 地址

1.11. 单击​​Save​​​,然后单击​​Apply changes​​。

OPNsense设置强制门户教程_强制门户_05

图 5. 应用更改

第 2 步 - DHCP 服务器配置

2.1. 导航到​​Services​​​→ ​​DHCPv4​​​→ ​​[GUESTNET]​​。

2.2. 在 GUESTNET 接口上启用DHCP 服务器。

2.3. 设置 DHCP 池范围,例如从​​172.16.10.100​​​到​​172.16.10.200​​。

2.4. 可以指定​​DNS server​​,不指定则默认为接口地址。

2.5. 设置​​Gateway IP address​​​,如​​172.16.10.1​​(OPNsense GuestNet i接口 IP

2.6. 其他选项保留为​​default​​。

2.7. 点击​​Save​

OPNsense设置强制门户教程_强制门户_06

图 6. DHCP 配置

第 3 步 - 定义防火墙规则

按给定顺序定义以下防火墙规则:

3.1. 允许访问 DNS服务

按照下图定义规则以允许内部 DNS 服务器访问。

OPNsense设置强制门户教程_强制门户_07

图 7. 允许 DNS Rule-1

OPNsense设置强制门户教程_强制门户_08

图 8. 允许 DNS 规则 2

3.2. 允许强制门户登录

按照下图定义规则来允许访客访问强制门户:

OPNsense设置强制门户教程_强制门户_09

图 9. 允许访问强制门户的防火墙规则1

OPNsense设置强制门户教程_强制门户_10

图 10. 允许访问强制门户的防火墙规则2

3.3. 阻止对局域网访问

按照下图定义规则来阻止访客访问公司 LAN:

OPNsense设置强制门户教程_强制门户_11

图 11. 阻止GuestNet对 LAN的访问1

OPNsense设置强制门户教程_强制门户_12

图 12. 阻止GuestNet对 LAN的访问2

3.4. 阻止对防火墙的访问

按照下图定义规则来阻止来宾访问防火墙:

OPNsense设置强制门户教程_强制门户_13

图 13. 阻止GuestNet对防火墙的访问1

OPNsense设置强制门户教程_强制门户_14

图 14. 阻止GuestNet对防火墙的访问2

3.5. 允许访客访问

按照下面的定义配置允许访客访问 Internet 的规则:

OPNsense设置强制门户教程_强制门户_15

图 15. 允许访客网络访问 Internet1

OPNsense设置强制门户教程_强制门户_16

图 16. 允许访客网络访问 Internet2

为GUESTNET 接口重新排序新创建的防火墙规则。类似于下图。然后单击​​Apply changes​​来激活规则。

OPNsense设置强制门户教程_强制门户_17

图 17.  GuestNet接口防火墙规则

第 4 步 - 强制门户创建

按照以下说明为访客网络创建强制门户。

4.1. 导航到​​Services​​​→ ​​Captive Portal​​​→ ​​Administration​​。

OPNsense设置强制门户教程_强制门户_18

图 18. 创建强制门户

4.2. 单击表格右下角的​​+​​添加新区域。

OPNsense设置强制门户教程_强制门户_19

图 19. 为强制门户设置区域1

4.3. 启用区域。

4.4. 设置​​Interfaces​​​为​​GUESTNET​​。(取消选择局域网)

4.5. 可以设置​​Authenticate using​​为空白不需要身份验证..(删除任何默认设置)

4.5. 设置​​Idle timeout​​为 0。

4.6. 设置​​Hard timeout​​为 0。

4.7. 取消选中​​Concurrent user logins​​,以便用户只能登录一次。

4.8. 可以为HTTPS 选择Web GUI TLS 证书,或者将 SSL 证书保留为​​none​​使用纯 HTTP。

4.9. 保留​​Custom template​​​为​​none​​,以使用默认模板。

4.10. 在描述字段中输入区域描述,例如访客网络。

4.11. 将其他选项保留为默认值。

4.12. 单击​​Save​​。

4.13. 单击​​Apply​​。

OPNsense设置强制门户教程_强制门户_20

图 20.  为强制门户设置区域2

现在OPNsense 上的强制门户已安装完成并可以使用了。

OPNsense设置强制门户教程_强制门户_21

图 21. 在 OPNsense 防火墙上创建访客网络强制门户

测试从访客网络访问internet是否正常

当将设备连接到访客网络并打开您喜欢的浏览器时,您将被重定向到类似于下图的强制门户启动页面。由于我们在上面的示例中没有配置任何身份验证方法,因此您可以通过单击​​Sign in​​按钮开始冲浪而无需任何身份验证。

OPNsense设置强制门户教程_强制门户_22

图 22. 没有任何身份验证的 OPNsense强制门户默认启动页面

提示:OPNsense强制门户支持多种身份验证方法,例如本地、LDAP、Radius、优惠券或其中的多个。应该在强制门户上至少使用一种身份验证方法。

测试强制门户防火墙规则是否生效

如果可以从访客网络访问 Internet,则表示允许 GUESTNET 访问 Internet 和 DNS 服务器的相关防火墙规则正在工作。可以测试拒绝从 GUESTNET 访问防火墙和 LAN 的阻止规则。要验证这些强制门户防火墙规则,可以从连接到访客网络的设备运行以下命令。如果 ping 请求对于防火墙和 LAN 访问都超时,则防火墙规则正常工作。

  1. ping 防火墙 GuestNet 地址

ping 172.16.10.1

Pinging 172.16.10.1 with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.

  1. ping 到LAN 上的设备或防火墙 LAN 地址

ping 10.10.10.1

Pinging 10.10.10.1 with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.

配置强制门户

可以按照以下说明配置强制门户。

1. 为强制门户使用自定义模板

要制作自定义登录页面,您可以按照以下步骤操作。

1.1. 导航到​​Services​​​→ ​​Captive Portal​​​→​​Templates​​选项卡。

1.2. 点击右下角的下载图标下载默认模板。

OPNsense设置强制门户教程_强制门户_23

图 23. 下载强制门户默认模板

1.3. 解压下载的模板文件。

OPNsense设置强制门户教程_强制门户_24

图 24. 解压缩默认模板文件

1.4. 用编辑器打开文件​​index.html​。

1.5. 将默认徽标(default-logo.png)更改为您的徽标文件名,例如 company-logo.png

1.6. 去掉顶部的导航栏

1.7. 从​​< img >​​标签中删除高度和宽度

1.8. 包括欢迎信息。

1.9. 包括指向您公司网站的链接。

1.10. 找到以下代码段

<header class="page-head">
<nav class="navbar navbar-default" >
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="#">
<img class="brand-logo" src="images/default-logo.png" >
</a>
</div>
</div>
</nav>
</header>

1.11. 将上面的代码段更改为下面给出的类似代码段。不要忘记用您自己的替换相关字段

<header class="page-head">
<div align="center">
<a href="#">
<img class="brand-logo" src="images/company-logo.png">
</a>
<h1>Welcome to My Company Guest Network.</h1>
<h2>Feel free to use the guest network for profesional usage</h2>
<h3>See our website for more details: <a href="https://www.opnsense.xxx">My Company</a></h3>
</div>
</header>

1.12. 将公司徽标(company-logo.png) 复制到 image(images) 目录。

1.13.  压缩模板目录。

1.14.  单击模板选项卡上​​+​​ 按钮,上传新创建的模板 zip 文件。

1.15.  输入一个模板名称,例如 MyCompany。

1.16. 单击​​Upload​​图标。

OPNsense设置强制门户教程_强制门户_25

图 25. 上传新的强制门户模板

1.17. 要在 GUESTNET接口上启用新的强制门户模板,单击​​Apply​​。

OPNsense设置强制门户教程_强制门户_26

图 26. 在强制门户上应用新模板

1.18. 要启用新上传的模板,可以按照下面给出的步骤进行操作。

1.19. 导航到​​Services​​​→ ​​Captive Portal​​​→​​Zones​​选项卡。

1.20. 单击​​Guest Network​​旁边的铅笔图标。

OPNsense设置强制门户教程_强制门户_27

图 27. 编辑Guest Network强制门户

1.21. 将​​Custom template​​​字段从​​none​​​更改为​​MyCompany​​。

OPNsense设置强制门户教程_强制门户_28

图 28. 设置强制门户模板

1.22。单击​​Save​​​,然后​​Apply​​应用新设置。

现在打开浏览器来测试新的强制门户模板。启动页面应该类似于下面给出的页面。

OPNsense设置强制门户教程_强制门户_29

图 29. 自定义强制门户登录页面

2. 限制访客网络

强制门户可以与流量整形器结合使用,以充分利用其整形功能。

可以按照以下步骤限制来宾网络上的 Internet 带宽。在本示例中,将每个来宾访问的最大下载带宽设置为10 Mbps,上传设置为1Mbps。

2.1. 设置下载和上传带宽

2.1.1. 导航到​​Firewall​​​→ ​​Shaper​​​→ ​​Pipes​​。

OPNsense设置强制门户教程_强制门户_30

图 30. 在 OPNsense 上创建流量整形器管道

2.1.2. 单击表单右下角的​​+​​ 为下载创建管道

2.1.3. 单击复选框启用。

2.1.4. 带宽设置为​​10​​。

2.1.5. 将带宽单位设置为​​Mbit/s​

2.1.6. 将掩码设置​​Destination​​,为让每个客户端使用 10 Mbps 的下载带宽。

2.1.7. 输入描述,例如​​10Mbps_download​

2.1.8. 单击​​Save​​。

OPNsense设置强制门户教程_强制门户_31

图 31.创建10 Mbps下载带宽管道

2.1.9 . 单击表单右下角的 + 为上传流量添加另一个管道。

2.1.10. 单击复选框启用。

2.1.11. 将带宽设置为​​1​​。

2.1.12. 将带宽单位设置为​​Mbit/s​

2.1.13. 将掩码设置为​​Destination​

2.1.14. 输入描述,例如​​1Mbps_upload​

2.1.15 .单击​​Save​​。

OPNsense设置强制门户教程_强制门户_32

图 32. 创建1Mbps 上传带宽管道

2.1.16. 单击​​Apply​​应用更改。

2.2.添加下载和上传限制规则

按照以下说明为访客网络上的下载和上传流量限制创建整形规则。

2.2.1. 单击“Rules”选项卡。

OPNsense设置强制门户教程_强制门户_33

图 33. 创建流量整形规则

OPNsense设置强制门户教程_强制门户_34

图 34. 创建下载流量整形规则1

2.2.2. 单击​​+​​图标。

2.2.3. 切换表单左上角的高级模式。

2.2.4. 设置接口为​​WAN​

2.2.5. 接口 2 设置为​​GUESTNET​

2.2.6. 方向设置为​​in​

2.2.7. 目标设置为​​10Mbps_download​

2.2.8. 描述设置为​​Limit Guests download to 10 Mbps​​。

2.2.9. 其他设置保留为默认值。

2.2.10. 单击​​Save​​。

OPNsense设置强制门户教程_强制门户_35

图 35. 为 下载创建流量整形规则2

OPNsense设置强制门户教程_强制门户_36

图 36. 为 上传创建流量整形规则1

2.2.11. 单击​​+​​图标。

2.2.12. 切换表单左上角的高级模式。

2.2.13. 设置接口为​​WAN​

2.2.14. 接口 2 设置为​​GUESTNET​

2.2.15. 方向设置为​​out​

2.2.16 .目标设置为​​1Mbps_upload​

2.2.17. 描述设置为​​Limit Guests upload to 1 Mbps​

2.2.18. 其他设置保留为默认值。

2.2.19. 单击​​Save​​。

OPNsense设置强制门户教程_强制门户_37

图 37. 为上传创建流量整形规则2

2.2.10. 单击​​Apply​​应用更改。

OPNsense设置强制门户教程_强制门户_38

图 38. 在 OPNsense 上应用流量整形规则

2.3. 验证访客网络

测试流量整形策略是否真正限制了访客网络上的带宽,可以按照以下说明进行操作。

2.3.1. 将设备连接到访客网络

2.3.2. 打开浏览器。

2.3.3. 输入要浏览的地址,将会看到登录表单。

2.3.4. 点击登录。

2.3.5. 转到速度测试站点,例如​​https://www.speedtest.net​​进行测试。测试完成后,结果应该与下图类似:

OPNsense设置强制门户教程_强制门户_39

图 39. 在访客网络上应用流量整形后的带宽限制测试结果

还可以在应用流量整形之前比较带宽速度测试结果。

OPNsense设置强制门户教程_强制门户_40

图 40. 下载速度测试结果对比(流量整形前后)

OPNsense设置强制门户教程_强制门户_41

图 41. 上传速度测试结果对比(流量整形前后)

3. 管理凭证系统

OPNsense的强制门户提供了一个对酒店网络特别有用的简单凭证创建系统。可以按照以下步骤在OPNsense 防火墙上管理凭证系统。

3.1. 添加凭证服务器

按照以下步骤添加凭证服务器:

3.1.1. 导航到​​System​​​→ ​​Access​​​→​​Servers​

OPNsense设置强制门户教程_强制门户_42

图 42. 添加访问服务器

3.1.2. 单击屏幕右上角​​+​​的按钮添加服务器。

3.1.3. 输入描述性名称,例如​​Vouchers​​。

3.1.4. 将类型设置为​​Voucher​​。

3.1.5. 其他选项保留为默认,或根据需要进行设置。

3.1.6. 点击​​Save​​。

OPNsense设置强制门户教程_强制门户_43

图 43. 在 OPNsense 上添加凭证服务器

3.2. 创建优惠券

为访客网络创建优惠券,可以按照以下步骤操作。

3.2.1. 导航到​​Services​​​→ ​​Captive Portal​​​→ ​​Vouchers​​。

3.2.2. 点击表格右下角的​​Create Vouchers​​ 。

OPNsense设置强制门户教程_强制门户_44

图 44. 为强制门户创建凭证

3.2.3. 选择有效期,例如​​1 day​​。

OPNsense设置强制门户教程_强制门户_45

图 45. 设置优惠券有效期

3.2.4. 根据需要选择​​Expiration time(过期时间)​​。

OPNsense设置强制门户教程_强制门户_46OPNsense 设置中文

强制门户出现需要啥响应?

树莓派作为俘获门户的接入点

强制门户身份验证后存储的 cookie 消失

win10进入安全模式的方法(F8不管用/开不开机)

Phpcms V9手机门户设置教程:怎么用PC V9做手机网站