* Firehol DROPping INVALID @ 2004-06-05 20:17 Mark Hindley 2004-06-06 14:11 ` Antony Stone 0 siblings, 1 reply; 3+ messages in thread From: Mark Hindley @ 2004-06-05 20:17 UTC (permalink / raw) To: netfilter Hi, I have asked this on the Firehol lists, but got no response. Hope you can help. I am using kernel 2.6.6 and have firehol setting up a firewall on the gateway machine with eth0 LAN, ppp0 dial-up link. NAT for hosts on LAN If the ppp link is down and a host on the LAN sends a packet destined for the outside world, the icmp-unreacahble packet does not get returned, so the LAN host has to wait to time out. The offending command issued by firehol seems to be: iptables -A OUTPUT -m state --state INVALID -j DROP Although the comment says this is recommended in the Netfilter HOWTO, I cannot find it. I can get round it by adding iptables -I OUTPUT 2 -m state --state INVALID -p icmp --icmp-type destination-unreachable -j ACCEPT which inserts the ACCEPT before the DROP above and means that hosts on the LAN get an immediate icmp reply "destination-unreachable" if the ppp link is down. Is this wise? secure. Am I missing something. Thanks for your help Mark ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Firehol DROPping INVALID 2004-06-05 20:17 Firehol DROPping INVALID Mark Hindley @ 2004-06-06 14:11 ` Antony Stone 2004-06-07 15:15 ` Aleksandar Milivojevic 0 siblings, 1 reply; 3+ messages in thread From: Antony Stone @ 2004-06-06 14:11 UTC (permalink / raw) To: netfilter On Saturday 05 June 2004 9:17 pm, Mark Hindley wrote: > Hi, > > I have asked this on the Firehol lists, but got no response. Hope you > can help. I know nothing about (have never heard of) firehol, however here's my observation on the rule you've quoted. > iptables -A OUTPUT -m state --state INVALID -j DROP > > Although the comment says this is recommended in the Netfilter HOWTO, I > cannot find it. It seems like a rather strange rule to have, to me. Why would you expect your own machine to be generating invalid packets (and therefore go to the bother of writing a firewall rule to drop them)? I'd be interested to know the response you get from the author of firehol if you ask for the source of the recommendation. I can understand why you might want to drop *incoming* invalid packets, but outgoing ones would seem to me to be (a) someone else's problem - they can decide whether to accept them or not - and (b) an indication of some more fundamental problem with whatever application is generating such packets, which should be fixed, rather than using netfilter to ignore the problem and pretend the packets never happened. Therefore my recommendation would be to eliminate the above rule altogether. Most people secure their firewall against inbound problems (INPUT for the firewall itself, FORWARD for machines it is routing to) - outbound problems should not exist. Maybe you want to post the rest of your ruleset so we can comment on how sensible that seems for you? Regards, Antony. -- "The problem with television is that the people must sit and keep their eyes glued on a screen; the average American family hasn't time for it." - New York Times, following a demonstration at the 1939 World's Fair. Please reply to the list; please don't CC me. ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Firehol DROPping INVALID 2004-06-06 14:11 ` Antony Stone @ 2004-06-07 15:15 ` Aleksandar Milivojevic 0 siblings, 0 replies; 3+ messages in thread From: Aleksandar Milivojevic @ 2004-06-07 15:15 UTC (permalink / raw) To: netfilter Antony Stone wrote: > On Saturday 05 June 2004 9:17 pm, Mark Hindley wrote: > > >>Hi, >> >>I have asked this on the Firehol lists, but got no response. Hope you >>can help. > > > I know nothing about (have never heard of) firehol, however here's my > observation on the rule you've quoted. > > >>iptables -A OUTPUT -m state --state INVALID -j DROP >> >>Although the comment says this is recommended in the Netfilter HOWTO, I >>cannot find it. > > > It seems like a rather strange rule to have, to me. Why would you expect > your own machine to be generating invalid packets (and therefore go to the > bother of writing a firewall rule to drop them)? Interesting. Just last night I installed new Linux-based firewall (Fedora Core 2 bundled iptables, stock Fedora Core 2 build of kernel-2.6.5). I wrote firewall rules by hand, and observed exactly the same behaviour. For the initial config, I used simplified set of rules that put restrictions only on WAN side, LAN was left unrestricted. The rules looked something like this (recreating from memory) (eth0 is LAN, eth1 is WAN): *filter :INPUT DROP [0:0] :FORWARD DROP [0:0] :OUTPUT DROP [0:0] # # Anything invalid should be dropped and logged prompto # -A INPUT -m state --state INVALID -j LOG --log-prefix "INVALID INPUT " -A INPUT -m state --state INVALID -j DROP -A OUTPUT -m state --state INVALID -j LOG --log-prefix "INVALID OUTPUT " -A OUTPUT -m state --state INVALID -j DROP -A FORWARD -m state --state INVALID -j LOG --log-prefix "INVALID FORWARD " -A FORWARD -m state --state INVALID -j DROP # # Allow already established connections # -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT # # Local network is unrestricted, as well as local host # -A INPUT -i eth0 -s 192.168.0.0/24 -m state --state NEW -j ACCEPT -A FORWARD -i eth0 -s 192.168.0.0/24 -m state --state NEW -j ACCEPT -A OUTPUT -m state --state NEW -j ACCEPT # # Log everything else # -A INPUT -j LOG --log-prefix "INPUT " -A OUTPUT -j LOG --log-prefix "OUTPUT " -A FORWARD -j LOG --log-prefix "FORWARD " *nat :PREROUTING ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] -A POSTROUTING -o eth1 -s 192.168.0.0/24 -j MASQUERADE After applying these rules, I got bunch of invalid packets in output chain. When I get back home I can look and post exact logs (and recheck that above rules are exactly what I have on the firewall). From memory, source IP was firewall LAN interface (192.168.0.f), destination IP was Windows box on LAN (192.168.0.w). They were ICMP unreachables for packet that originated from Windows box (192.168.0.w) to outside DNS server (142.something), if I remember correctly. I've never seen this before. I've spent an hour trying to find error or typo, and trying different things, but couldn't get rid of those invalid packets in output chain. -- Aleksandar Milivojevic <amilivojevic@pbl.ca> Pollard Banknote Limited Systems Administrator 1499 Buffalo Place Tel: (204) 474-2323 ext 276 Winnipeg, MB R3T 1L7 ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2004-06-07 15:15 UTC | newest] Thread overview: 3+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2004-06-05 20:17 Firehol DROPping INVALID Mark Hindley 2004-06-06 14:11 ` Antony Stone 2004-06-07 15:15 ` Aleksandar Milivojevic
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.