使用MikroTik Bridge作为公共托pipe服务器的公共IP防火墙

我们想要这样做:

互联网< – > MikroTik在接模式与防火墙过滤< – >托pipe服务器

  1. 主要目标是允许从外部进入RDP和FTP,但阻止外部的其他任何事情。 从里面一切都必须出去。

  2. 我们遇到的问题是我们添加这些规则,阻止外部到内部工作,但现在托pipe服务器不能访问任何东西到外面。 从外部返回的TCP / IP不是端口3389或端口80,而是随机的。

/ interface bridge filter> pr

标志:X – 禁用,I – 无效,D – dynamic0 ;;; 接受ICMP for PING chain =正向动作=接受MAC协议= ip dst-address = 196.xxx / 32 ip-protocol = icmp

1 ;;; 接受FTP传输端口链=正向动作=接受MAC协议= IP dst-address = 196.xxx / 32 dst-port = 20 ip-protocol = tcp

2 ;;; 接受FTP控制端口链=正向动作=接受MAC协议= IP dst-address = 196.xxx / 32 dst-port = 21 ip-protocol = tcp

3 ;;; 接受RDP链=正向动作=接受MAC协议= IP dst-address = 196.xxx / 32 dst-port = 3389 ip-protocol = tcp

4 ;;; logging即将丢弃的所有内容chain = forward action = log mac-protocol = ip dst-address = 196.xxx / 32 ip-protocol = tcp log-prefix =“firewall_drop”

5 ;;; 放下一切链=转发行动=下降mac-protocol = ip dst-address = 196.xxx / 32 ip-protocol = tcp

只是FYI桥被设置为使用防火墙和连接跟踪打开。

我build议使用本地IP子网为您的服务器,并有mikrotik(路由器)和服务器之间的私有局域网。 也有公共ip直接mikrotik。 然后执行传出stream量(从服务器到Internet)的ip src-nat。 所有传入的stream量应该是端口转发(dst-nat)。 您也可以使用正常的layer3 ip防火墙,并禁用layer2 / bridgenetworking的layer3防火墙。

这与连接跟踪有关,但我不知道它是如何在一座桥梁中工作的。 我只是添加另一个规则,允许从src地址或接口的内部一切:

add chain=forward action=accept mac-protocol=ip src-address=196.xxx/32 ip-protocol=tcp place-before=4 

我同意@Matt的看法,桥接是一个愚蠢的想法,我们应该从一开始就排好队。 我们桥接的全部原因是因为我们的边界路由器是具有两个接口的传统Cisco VXR 7206,即WAN(ATM)和LAN(用于公共)接口。 我们想在公开场合防火墙,而不用重新networking化我们的networking。 另外,尽pipe@DK_Kukky提出的使用DST-NAT的build议是合理的,这将导致更多的configuration,而且我们也不能(或不会)给我们的客户私有IP,因为我们是一个面向公众的ISP。

我们应该在思科实施防火墙规则或者replace技术(ATM)。 最后,我们用MetroEthernet取代了ATM,我们能够在以太网接口上build立外部接口,并使用MikroTik。 它工作得很好。