自定义 mikrotik 热点防火墙规则

customize mikrotik hotspot firewall rules

我在虚拟服务器上安装了路由器 os,有 3 个接口:

lan-192.168.1.1/24

wan-192.168.2.1/24

wifi-192.168.3.1/24

我有一个 PPOE 客户端通过 WAN 连接到 ISP 并获得静态 public IP

x.x.x.x

我有一个 windows 服务器,在 LAN 接口上有 DNS、HTTP 服务,在 WIFI 接口上有 1 个无线接入点。

我已经创建了阻止来自 Internet 的传入连接的规则,80,53 除外,...

我已经创建了从我的 public IP x.x.x.x 到本地服务器 IP 的 dst-nat。 另一个dst-nat从局域网到服务器的局域网IP地址。 还有 SRC NAT to masquradeLAN and WIFI 到服务器的连接。 另一个 SRC-NAT 访问互联网的伪装。

还有 mikrotik DNS 服务用于从我的本地服务器 DNS 服务获取记录和捕获。

一切正常,直到,我想在WIFI接口上创建热点服务。 动态防火墙过滤器和 NAT 会破坏一切正常工作。


场景是WIFI用户认证上网,本地免费访问本地服务器。 局域网用户也可以免费上网。 另外 public 从 Internet 访问我的服务器。

提前致谢!

注意:如果您只想直接回答,请跳至 TLDR。

此配置已变得比必要的复杂得多。我打算凭记忆写这篇文章,因为我现在手边没有未使用的路由器,但是这个应该可以工作。

我要在这里做一些假设:

  • 您不希望来自 WAN 或 PPPoE 的任何人能够访问您的 LAN。
  • 除了 HTTP 或 DNS 之外,您不希望来自 WIFI 的任何人都能够访问您的 LAN。
  • 您完全打算在一切正常并在您的服务器上启用 HTTPS 后返回。这很重要!!!

首先,设置一切以不受限制地工作。除了一个化装舞会条目外,没有任何规则。你想伪装所有不是发往 192.168.0.0/16 的流量。这些规则就是您所需要的。除非您想为 PPPoE 接口上的流量提供服务,否则 DST-NAT 规则是不必要的。

接下来,在 FORWARD 链下添加以下防火墙规则:

  • 接受所有已建立的和所有相关的流量(无其他限制)。
  • 接受从 192.168.3.0/24 到 TCP 80,53,443 发往您的 Windows 服务器 IP 地址。
  • ACCEPT FROM 192.168.3.0/24 TO ICMP 指定您的 Windows 服务器 IP 地址。
  • 接受从 192.168.1.0/24 到 !192.168.0.0/16。这允许 LAN 访问 Internet。
  • 接受从 192.168.3.0/24 到 !192.168.0.0/16。这允许WIFI上网。
  • 放弃其他一切。

确保一切正常。这些基本规则至少会在您的 LAN 上为您提供一些保护,防止随机的人连接到您的 WIFI。这样,如果您曾经禁用热点以允许通过 Wifi 不受限制地访问,您的 LAN 仍然受到保护。

* TLDR *

现在您可以设置热点了。最重要的部分在您的 Walled Garden IP 列表选项卡上,在 IP -> Hotspot 下。您必须在此处添加条目以允许在有人登录之前访问您想要运行的任何服务器,特别是您服务器的 HTTP、DNS 等服务。 Hotspot 会将这些翻译成自动为您创建的防火墙规则。

最后,如果我不告诉你这不是一个完整的防火墙设置,我会失职,如果没有正确实施,这里可能会出现各种各样的问题。如果您对付费帮助感兴趣,我的电子邮件在我的个人资料中。