hi,

maybe synproxy is conflicting somehow with rdr states? try keep state
instead, just to test it... but I'm not sure. As dan said, do a "block log
all" and run tcpdump on pflog0 while you'r trying to connect.

you can also do this, i like tagging :)

rdr on $ext_if proto tcp from any to $ext_if port $email_ports tag email_in
-> $email_server
rdr on $ext_if proto tcp from any to $ext_if port $web_ports tag web_in >
$web_server

in filtering section:

pass log tagged email_in keep state
pass log tagged web_in keep state

so you don't need to specify the "any to xxx port xxx" twice...

another thing is: normaly it's a problem to connect to your redirected ports
(public ip) from the inside (LAN). because pf does NAT on ext_if for any
traffic. and then needs a second state for the RDR to the inside. i think
this is not working. but you can solve this with a additional "no nat proto
tcp from $inside_net to $public_ip port $port" or something like this... I
think this should work. pf does not need NAT in this case, because the local
box knows both networks (public and private) and pf generates just one
state...  maybe that's your problem...


greets
 marco

On Fri, May 8, 2009 at 6:37 AM, Dan <d...@ourbrains.org> wrote:

> Daniel Boyd(dan...@boydemail.com)@2009.05.07 13:26:42 -0500:
> > I'm having some problems getting pf to forward ports.  My computer is
> > running a fresh install of OpenBSD 4.5.
> >
> > My internal network is using 172.17.2.0/24 and I need pf to do NAT and
> > forward some ports to two internal servers.
> >
> > NAT is working just fine, (e.g. the internal computers can browse the
> > web etc.) but I can't connect to my internal servers from the outside.
> >
> ...
>
> > block all
> ...
>
> Change block all to block log all, then tcpdump -nettti pflog0
>
> Try to connect to rdr'd machines.
> You'll see exactly where the problem is.

Reply via email to