Re: [iptables] Zone based rules
Gian Piero Carrubba <[email protected]> Tue, 9 Apr 2013 20:54:35 +0200
| Newsgroups | gmane.linux.debian.devel.firewall |
|---|---|
| Message-ID | <[email protected]> |
* [Tue, Apr 09, 2013 at 05:41:39PM +0200] Jimmy Thrasibule: >In can change the rules order but this will not solve the problem. >Another solution would be to mark the packet and then check the mark at >the end to decide on whether to accept or reject. But how about >performances on a large set of rules as the firewall will have to go >through all of them before taking a decision? Have you considered using RETURN instead of ACCEPT ? Something like: # Traffic coming from the zones. -A FORWARD -i eth0 ZONE_MRKT_OUT -A FORWARD -i eth1 ZONE_SRV_OUT # Traffic to the zones. -A FORWARD -o eth0 ZONE_MRKT_IN -A FORWARD -o eth1 ZONE_SRV_IN -A FORWARD -j ACCEPT # Let's look at marketing. -A ZONE_MKRT_OUT -j RETURN -A ZONE_MKRT_OUT -j DROP # catch-all, useless here # Servers -A ZONE_SRV_IN -s mar.ket.ing.net/mask -p tcp --dport 22 -j DROP -A ZONE_SRV_IN -j DROP # catch-all >How would you manage such a case? I'm not sure if I've got the context right, here. If the fw will be managed by a single person/team, I'd surely go for a classic set of rules. I normally group the forward rules by the output interface and use a reject catch-all chain (explicitly dropping "unfair" packets), so i.e.: -A FORWARD -o eth0 -j fwd_eth0 -A FORWARD -o eth1 -j fwd_eth1 -A FORWARD -o eth2 -j fwd_eth2 # internet nic ? -A fwd_eth1 -i eth0 -p tcp --dport 22 -j DROP -A fwd_eth1 -j reject-chain -A fwd_eth2 -i eth0 -j ACCEPT -A fwd_eth2 -j reject-chain On the other hand, if the filtering rules should be managed autonomously by the two departments (and I suspect this is the case), I'd probably go for a multi-context/"virtual" system. Putting something together using lxc and a virtual switch shouldn't be difficult. Ciao, Gian Piero.