pfSense不转发回数据包

我有一个pfSense框设置,我的本地networking(192.168.1.100)中设置了我的WAN接口(em0),而我的LAN接口(em1)是它自己的专用networking(10.0.0.1)。 最终目标是将10.0.0.xnetworking作为专用恶意软件实验室,该networking上的设备无法直接与192.168.1.xnetworking上的任何设备进行通信。 虽然,我想在pfSense防火墙上打洞,以允许来自192.168.1.xnetworking的stream量访问专用networking中的服务,例如FTP,HTTP,SMB,SSH等。因此,如果我通过FTP到192.168.1.100 (WAN接口),然后它将路由到在10.0.0.x内部的设备上运行的FTP服务器。 目前我可以看到,我的FTP服务器获得一个TCP SYN数据包,但没有其他事情发生。

在这里输入图像说明

我可以通过tcpdump通过pfSense看到一些 FTPstream量。

在这里输入图像说明

这是我的NAT端口转发规则(他们也有一个关联的过滤规则)。

在这里输入图像说明

而且如果有用的话,我的局域网防火墙也是如此。

在这里输入图像说明

我认为也许我的阻止规则阻止了来自10.0.0.xnetworking的192.168.1.xstream量,但是我禁用了该规则。 我完全失败,不明白发生了什么问题,所以任何帮助将是超级赞赏!

FTP服务器上的Wireshark屏幕截图很有趣 – 缺乏响应表明它不能(路由/ NAT问题)或不会(防火墙)响应。 我的想法:

  • FTP服务器有一个本地防火墙(检查与iptables -L -vn )丢弃任何stream量? 如果iptables的INPUTOUTPUT链有DROP策略,但是你没有规则允许FTPstream量和相关/build立的连接input和输出,这将是一个问题。
  • 到SSH和HTTP端口的stream量(提供这些服务是否正在运行)与FTPstream量遭受同样的命运? 我不是专家,但是FTP经常使用多个端口(20和21),所以排除特定于FTP的怪异行为可能是好的。
  • 您可以从10.0.0.x子网上的另一台计算机获得TCP连接到FTP服务器吗? 可以从FTP服务器的任何stream量出去到192.168.1.xnetworking? 如果10.0.0.x子网内的stream量正常运行,但没有stream量能够stream出,则pfSense框中的路由,NAT或防火墙设置可能存在问题。
  1. 虽然你说你正在接收TCP SYN数据包,但我认为你应该在WAN接口上有一个防火墙规则,允许端口21(FTP)进入LAN接口,即em1。
  2. FTP服务器应该有10.0.0.1的默认网关。
  3. 同时检查出站NAT规则是否设置为自动。 如果它不是比你从FTP返回数据包遇到路由问题。
  4. 在pfsense>诊断> ARP表应该告诉你FTP服务器是否可以通过pfsense访问。 将ICMP数据包放到专用networking上的设备上开始,并从那里开始跟踪。 跟踪路线也应该帮助find你的数据包丢失的地方。

pfSense对FTP协议有一个特殊的支持,它会影响主动和被动模式。 我的经验是,它只会使被动模式的DNATconfiguration复杂化(否则通常很简单)。 无论如何,我只能使被动模式工作,下面的步骤。

进入系统:高级:系统可调参数… / system_advanced_sysctl.php )页面。 为debug.pfftpproxy选项设置1 ,以禁用FTP代理处理程序。 现在,设置您的FTP服务器使用特定端口范围的数据,并转发这些除了TCP / 21。

但是,只要有可能,就完全避免使用FTP协议。 有像SCP这样的替代scheme,更加安全(基于SSH)​​,允许更多的身份validation选项,并且没有所有的主动/被动/ NAT /多端口负担。

假设提供的地址是你的地方 – 你有广域网接口(em0)启用块专用networking? 我相信这是一个默认的设置,以及阻塞bogannetworking。

http://i.stack.imgur.com/boREK.png