Help with pf ruleset

2008-03-09 Thread erik Wilson
I'm pulling my hair out here. I've been working on this for days without
any success.

I've whittled the ruleset down to the barest possible rules and even that
doesn't work. I'm at my wits end. I would really appreciate it if someone
could show me where i'm being a complete and total moron.

Here's the situation. I have a somewhat unique environment. It consists of
2 WAN's, an internal LAN, and numerous VLANS (isolated clients, which need
to be accessible from the internet, but not to each other). This runs in a
VMWare esx server, but that's not really important.

FreeBSD 7.0-RELEASE

em0 = lan (10.0.0.x)
em2 = WAN1 (y.y.y.y) (dhcp)
em3 = WAN2 (x.x.x.x) (static /28 subnet)

the default gateway is on nic2. nic3 will need to forward ip:port's to
various vlans. nic2 is used for all outbound lan traffic (internet). nic2
will need to failover to nic3 eventually, and nic3 will have to failover to
nic2 (for outbound, obviously no choice for inbound).

So here's the problem. I can't even get nic2 or nic3 to respond to a ping
request from outside my network when pf is enabled. I know the interfaces
are set up correct, as I can ping the default gateways of both interfaces.

Also, outbound NAT works perfectly on wan1.

Here's my ruleset.

lan_if=em0
wan1_if=em2
wan2_if=em3
set block-policy return
set skip on lo0
nat on $wan1_if from $lan_if:network to any - ($wan1_if)
block in log
pass out log keep state
pass in log inet proto icmp all icmp-type echoreq keep state
pass in log quick on $lan_if

Looks simple enough, right? Why won't it work? All i want is to get a ping
from both of the firewalls WAN's from outside the network.

Any ideas?

Routing tables

Internet:
DestinationGatewayFlagsRefs  Use  Netif Expire
defaulty.y.y.129   UGS 0 4433em2
10.0.0.0/24link#1 UC  00em0
10.0.0.1   00:0c:29:a9:e5:75  UHLW1  338em0   1177
10.0.0.2   00:0c:29:c0:74:57  UHLW1 3291em0   1041
10.0.0.10  00:19:db:b1:07:78  UHLW1 4827em0   1185
10.0.1.0/24link#7 UC  00  vlan0
10.0.2.0/24link#8 UC  00  vlan1
10.0.2.2   00:0c:29:e9:8c:d2  UHLW1  251  vlan1   1190
10.0.3.0/24link#9 UC  00  vlan2
10.0.3.2   00:50:56:9c:53:89  UHLW1  420  vlan2   1152
10.0.4.0/24link#10UC  00  vlan3
10.0.5.0/24link#11UC  00  vlan4
127.0.0.1  127.0.0.1  UH  00lo0
y.y.y.128/25link#3 UC  00em2
x.x.x.144/28 link#4 UC  00em3
x.x.x.14600:0c:29:b5:0e:bb  UHLW16lo0
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: Help with pf ruleset

2008-03-09 Thread Erik Wilson
On Sun, Mar 9, 2008 at 3:20 PM, Erik Norgaard [EMAIL PROTECTED] wrote:

  erik Wilson wrote:
  I'm pulling my hair out here. I've been working on this for days without
  any success.
 
  I've whittled the ruleset down to the barest possible rules and even
 that
  doesn't work. I'm at my wits end. I would really appreciate it if
 someone
  could show me where i'm being a complete and total moron.
 
  Here's the situation. I have a somewhat unique environment. It consists
 of
  2 WAN's, an internal LAN, and numerous VLANS (isolated clients, which
 need
  to be accessible from the internet, but not to each other). This runs in
 a
  VMWare esx server, but that's not really important.
 
  FreeBSD 7.0-RELEASE
 
  em0 = lan (10.0.0.x)
  em2 = WAN1 (y.y.y.y) (dhcp)
  em3 = WAN2 (x.x.x.x) (static /28 subnet)
 
  the default gateway is on nic2. nic3 will need to forward ip:port's to
  various vlans. nic2 is used for all outbound lan traffic (internet).
 nic2
  will need to failover to nic3 eventually, and nic3 will have to failover
 to
  nic2 (for outbound, obviously no choice for inbound).
 
  So here's the problem. I can't even get nic2 or nic3 to respond to a
 ping
  request from outside my network when pf is enabled. I know the
 interfaces
  are set up correct, as I can ping the default gateways of both
 interfaces.
 
  Also, outbound NAT works perfectly on wan1.
 
  Here's my ruleset.
 
  lan_if=em0
  wan1_if=em2
  wan2_if=em3
  set block-policy return
  set skip on lo0
  nat on $wan1_if from $lan_if:network to any - ($wan1_if)
  block in log
  pass out log keep state
  pass in log inet proto icmp all icmp-type echoreq keep state
  pass in log quick on $lan_if
 
  Looks simple enough, right? Why won't it work? All i want is to get a
 ping
  from both of the firewalls WAN's from outside the network.
 
  Any ideas?

 How about the log?


I'll post some log info as soon as I can bring down the network again to do
some testing.


 I know you have cut away a lot of rules, but maybe that just makes
 things more confusing. Try to nest your rules in the following order:

 direction - interface - protocol - src net - dst net - port/type

 You should need no out rules if you have in rules with keep state.
 At each branch level make a catchup rule at the end with default action
 and quick key word to make sure packets don't spill over and get
 matched by other rules.


Good advice, thanks.  I'm afraid i've tried so many different options and
variations to get this to work that it's not as pretty as it should be.  I
got some of these rules from various examples posted on the web, and tweaked
them into unrecognizability ;)  Do you think that Josh is right about
needing a route-to rule for the second WAN interface?

Since you're handing out best practices ;)  Is it better to use a nat pass
or rdr pass rule than seperate nat/rdr and pass statements?  Why?

I think my biggest frustration is not finding a single place that is
detailed enough about things.  I've rad the book of pf, the man pages, the
handbooks, etc.. they all give pieces of the puzzle.  Maybe once i master
this i'll work on a pf bible ;)


 Hopefully this will help you pin down where things go wrong.

 Cheers, Erik


Cheers yourself Erik ;)
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: apache+mod_ssl-1.3.41+2.8.31 crashing with mod_php5

2008-03-09 Thread Erik Wilson
On Sun, Mar 9, 2008 at 6:26 PM, Chris Maness [EMAIL PROTECTED] wrote:

 I am having apache core dump after I install php5 with the apache
 module.  It runs fine without the module directives that are
 automagically added to the http.conf file, but after it is compiled and
 installed my main log (var log messages) indicates a core dump.


Have you upgraded to the latest version of apache to go with the latest
version of php5?  Perhaps you have an older version that isn't binary
compatible with the latest compiled php.
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to [EMAIL PROTECTED]