Date: Sun, 19 Oct 2003 17:04:42 +0100 From: Dan <dan@ntlbusiness.com> To: Barney Wolff <barney@databus.com> Cc: freebsd-net@freebsd.org Subject: Re: IPFW. Message-ID: <200310191704.42446.dan@ntlbusiness.com> In-Reply-To: <20031019155913.GA46989@pit.databus.com> References: <200310191532.40136.dan@ntlbusiness.com> <20031019155913.GA46989@pit.databus.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sunday 19 October 2003 4:59 pm, you wrote: > On Sun, Oct 19, 2003 at 03:32:40PM +0100, Dan wrote: > > Hi there. > > I hope you can help. > > I've been trying and trying for days to try and get these rules sorted, > > as whenever they're used, my laptop (which is using my FreeBSD box as a > > gateway) cannot access the Internet. > > I suggest you put "log" on all your denies, and by ipfw -atde list > see which rules are stopping the packets. > > Aside from whether the ruleset works, it seems inconsistent. If you're > going to keep state, you should not be allowing tcp established, but > instead setting up state on setup, both ways. btw, "pass" means allow, > did you mean "deny"? Hi there. Thank you very much for your reply. I couldn't see anything obvious in ipfw -atde list - and I tried requestnig a new page from the laptop, but saw nothing new there. I've taken what you said -- and as far as I can understand (sorry..this is really hard to me) I've come up with: Is this better? thanks again! # Define the firewall command (as in /etc/rc.firewall) for easy # reference. Helps to make it easier to read. fwcmd="/sbin/ipfw" # Force a flushing of the current rules before we reload. $fwcmd -f flush # Divert all packets through the tunnel interface. $fwcmd add 50 divert natd all from any to any via sis0 # Allow all connections that have dynamic rules built for them, # but deny established connections that don't have a dynamic rule. # See ipfw(8) for details. $fwcmd add check-state $fwcmd add pass tcp from any to any keep-state # Allow all localhost connections ${fwcmd} add 100 pass all from any to any via lo0 ${fwcmd} add 200 deny log all from any to 127.0.0.0/8 ${fwcmd} add 300 deny log ip from 127.0.0.0/8 to any # Allow all connections from my network card that I initiate $fwcmd add allow tcp from me to any out xmit any setup keep-state $fwcmd add deny log tcp from me to any $fwcmd add allow ip from me to any out xmit any keep-state $fwcmd add allow all from 192.168.0.0/24 to any # Everyone on the Internet is allowed to connect to the following # services on the machine. This example specifically allows connections # to sshd and a webserver. $fwcmd add allow tcp from any to any keep-state $fwcmd add allow tcp from any to me 80 setup $fwcmd add allow tcp from any to me 22 setup # This sends a RESET to all ident packets. $fwcmd add reset log tcp from any to me 113 in recv any # Enable ICMP: remove type 8 if you don't want your host to be pingable $fwcmd add allow icmp from any to any icmptypes 0,3,8,11,12,13,14 # Deny all the rest. $fwcmd add deny log ip from any to any
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200310191704.42446.dan>