Articles of pf

pfctl udp NAT转发不工作

我正在尝试设置PF将所有RADIUS请求redirect到另一个IP。 这是我有: nat on en0 inet proto udp from any to any port 1812 -> 10.3.0.43 port 1812 nat on en0 inet proto udp from any to any port 1813 -> 10.3.0.43 port 1813 但是这不行! 我的radius服务器没有看到任何udp数据包。 当我将nat更改为rdrredirect时,它可以正常工作,但由于请求没有被翻译,所以radius服务器无法发回响应。

PF在混杂模式下似乎不是有状态的

在创build一些具有Bhyve + IPv6的虚拟机时,我必须创build一个网桥 ,因此主网卡必须处于混杂的 promisc模式。 最后,我pipe理虚拟机的工作,但开始注意到主机上的一个奇怪的行为(主要是超时和非常缓慢的响应),而试图更新软件包或只是获取/curl。 当使用获取这是输出: fetch: /file.txt appears to be truncated: 0/1296 bytes 目前使用PF的服务器和通过检查日志: tcpdump -n -e -ttt -i pflog0 ip6 做了像pkg update或简单的curl google.com一些trafic后,我得到这个日志: 00:00:00.000000 rule 3/0(match): block in on igb0: 2001:4860:4860::8844.53 > 2a01:4f8:350:84ec::1.53939: 19426 1/0/1 A 216.58.210.14 (55) 00:00:00.400845 rule 3/0(match): block in on igb0: 2001:4860:4860::8844.53 > 2a01:4f8:350:84ec::1.36699: 23499 1/0/1 A 216.58.210.14 […]

数据包筛选器configuration限制stream量到本地主机

我在OpenBSD 4.3上运行一个基于pf的过滤路由器已经有一年了。 我目前的任务是build立一个新的networking来托pipe我们的外部网站。 我的目标是在这个网段build立的机器不应该比在互联网上的机器更多地访问我们networking的其余部分。 总的来说,这是非常接近的。 我们有DNS服务器将其外部视图返回到这个网段。 pf不会将来自此网段的stream量路由到除互联网接口以外的任何网段。 但是,我似乎无法阻止它将数据包路由到路由器,如果他们也被允许上网。 例如 阻止 … #标记dmzstream量作为只允许互联网 传入$ dmz_if inet所有标记INTERNET_ONLY … #确保只有通过互联网的stream量通过 阻止$ internet_if 屏蔽$ internet_if标记的INTERNET_ONLY标签ROUTE_INTERNET 在internet_if上标记ROUTE_INTERNET 我希望能够添加 $(dmz_if:network)阻止$ local_if 阻止任何数据包形成路由器,但似乎本地主机的数据包不lo0上出去。 我怎样才能阻止他们? 我误解了这一切是如何工作的? 有没有我错过了这个选项? 有什么build议么?

pf端口转发

我有我的防火墙/ NAT路由器设置工作的基础知识; stream量正常,端口53上的DNS请求映射到内部子网,然后再次成功退出(端口号不变)。 但我坚持从内部网关到我需要翻译端口的机器的端口转发。 这是我得到的似乎没有工作: rdr on $ext_if inet proto tcp from any to 192.168.1.101 port 24 -> 192.168.0.105 port 22 pass in on $ext_if inet proto tcp from any to 192.168.0.105 port 22 networking是公共IP =>这个网关在192.168.1.101 =>机器需要SSH访问在192.168.0.105 公共地址上的端口22正被用于不同的子networking(一个与192.168.0.1/32networking平行的networking)。 供参考以下IS工作: rdr on $ext_if proto udp from any to any port 53 -> 192.168.0.105 pass in on […]

FreeBSD nat通过PF:如何从随机的UDP端口更改为增量?

我正在testingNAT渗透代码,需要一个对称的NAT。 我已经用PFconfiguration了FreeBSD,很简单的规则: # rl0 in WAN on DHCP, sk0 is LAN with computers behind this NAT. nat on rl0 from sk0:network to any -> (rl0) 这很好,NAT对UDP数据包来说是对称的,但不幸的是,每个数据包到不同目的地的出站端口号是随机的。 这是一种configurationPF的方式,所以端口将不是随机的,而是一种增量? 例如,主机A的UDP数据包将得到UDP端口号为50000的UDP数据包,到主机B的UDP数据包将获得端口号50001,主机C 50002等等。

PF规则和configuration允许本地IP别名在FreeBSD上进行NAT转换?

这里是我的configuration的确切细节: 防火墙/ DNS服务器:192.168.2.1(本地局域网),它将路由到互联网。 < – 不受我的控制我的FreeBSD服务器:192.168.2.23(局域网) 我的服务器“内部”,我有一个监狱。 (我会有更多的,一旦我的防火墙规则工作..)我设置了这个使用ezjail,这很多工作。 我想在我的FreeBSD服务器的loopback设备lo0上分配一个别名,并给这个jail ip 127.0.0.10 到目前为止,在我的/etc/pf.conf中,以下工作正在进行: # allow the outside world or internet to hit my FreeBSD server on 6500, and send this traffic to 6500 # verified through nc -l 6500 inside the jail, and telnet in from outside world rdr pass on em0 inet proto tcp from […]

使用pfsense虚拟设备可以降低上传速度

我在Windows服务器前设置了一个pfSense虚拟设备。 pfSense设备已configuration了两个L2L IPSec VPN站点,而不是太多。 该设备有两个vNics,它们都存在于同一个VLAN中,但一个是“WAN”,另一个是“LAN”。 当我在我的Windows服务器上运行speedtest.net,当我configuration它使用一个静态的广域网地址和网关,我得到了很好的速度 – 大概50下来,15。 但是,当我使用私有IP地址进行configuration时,我获得了类似的下载速度,但上传速度非常糟糕,一直保持在2 Mbps或3 Mbps左右。 我使用Wireshark来查看给出的结果,但是在那里似乎没有太多有用的信息,或者我无法find它。 除了L2L VPN之外,其他configuration还包括: 自动出站NAT Windows Server的虚拟P-ARP IP WAN防火墙规则允许RDP上的*到* 广域网防火墙规则允许* *(启用这只是为了testing…没有帮助!) 除了IPSec VPN之外,没有DHCP或任何其他服务 没有错误局域网或广域网 没有冲突LAN或WAN 如果能提供帮助,我会很乐意发布完整的configuration文件。 我一整天都在这个头上挠头。

OpenBsd 5端口转发

我正在尝试在OpenBSD 5.0上configurationpf端口转发 防火墙机器有两个nics: em0:192.168.200.3 vic0:192.65.214.136 我想转发所有数据包到192.168.200.3:104到192.65.214.131:104。 另外我需要仍然有权访问端口22,为SSH。 到目前为止,我设置的规则是这样的: set skip on lo pass in log on em0 proto tcp from any to any port 104 rdr-to 192.65.214.131 # By default, do not permit remote connections to X11 block in on ! lo0 proto tcp to port 6000:6010 通过使用tcpdump -n -e -ttt -r / var / […]

OpenBSD的ftp-proxy在NAT之后

是否有可能改变OpenBSD的PASV IP ftp代理发送给客户端,而不改变redirect控制的监听地址( -b <address> )? 我有以下设置: FTP client –> 1:1 NAT router –> OpenBSD router –> FTP server 1:1 NAT路由器有一条NAT规则将所有内容转发给OpenBSD路由器 ,OpenBSD路由器运行ftp-proxy -R <FTP server IP> 。 当FTP客户端发送PASV命令时,代理服务器会在1:1 NAT路由器的接口上(显然)用自己的源IP回应“ input被动模式(227)”消息。 由于1:1的NAT路由器不具有协议感知能力,因此会转发此消息,并且客户端会收到带有OpenBSD路由器的PASV IP的消息,而该路由器没有路由。 有没有办法,我可以告诉FTP代理发送input被动模式消息与不同的源IP?

将stream量传递到防火墙后面的服务

我在端口8080上运行nginx,现在我想让它可以从互联网上访问,为此,我在路由器上打开一个端口,然后给我的PF添加一些规则,但从wireshark中嗅探,我看到端口不可访问: 2013-01-16 19:15:57.376545 IP 192.168.1.2.34891 > XXX.XXX.XXX.XXX.8080: Flags [S], seq 1885349577, win 65535, options [mss 1460,nop,wscale 3,sackOK,TS val 10383901 ecr 0], length 0 2013-01-16 19:15:57.378853 IP XXX.XXX.XXX.XXX.8080 > 192.168.1.2.34891: Flags [FR.], seq 0, ack 1885349578, win 0, length 0 2013-01-16 19:15:57.378910 IP XXX.XXX.XXX.XXX > 192.168.1.2: ICMP XXX.XXX.XXX.XXX tcp port 8080 unreachable, length 36 2013-01-16 19:15:57.379250 […]