# $OpenBSD: pf.conf,v 1.28 2004/04/29 21:03:09 frantzen Exp $ # # See pf.conf(5) and /usr/share/pf for syntax and examples. # Remember to set net.inet.ip.forwarding=1 and/or net.inet6.ip6.forwarding=1 # in /etc/sysctl.conf if packets are to be forwarded between interfaces. block on fxp0 all tcp_services = "{ ssh, smtp, domain, www, irc}" udp_services = "{ domain }" pass in on fxp0 inet proto tcp from any to fxp0 port 22 flags S/SA keep state pass out on fxp0 from fxp0 inet proto { tcp, udp } port 6667 keep state pass out on fxp0 inet proto udp to any port 53 keep state #ext_if="ext0" int_if="fxp0" #table persist #table persist #scrub in #nat on $ext_if from !($ext_if) -> ($ext_if:0) #rdr pass on $int_if proto tcp to port ftp -> 127.0.0.1 port 8021 #rdr pass on $ext_if proto tcp from to port smtp \ # -> 127.0.0.1 port spamd #rdr pass on $ext_if proto tcp from ! to port smtp \ # -> 127.0.0.1 port spamd #block in #pass out keep state #pass quick on { lo $int_if } #antispoof quick for { lo $int_if } #pass in on $ext_if proto tcp to ($ext_if) port ssh keep state #pass in on $ext_if proto tcp to ($ext_if) port > 49151 user proxy keep state #pass in log on $ext_if proto tcp to ($ext_if) port smtp keep state #pass out log on $ext_if proto tcp from ($ext_if) to port smtp keep state