Re: ipset -R

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Okay, the 2nd rule should be:

-m set --match-set $WHITELIST -j $WHITELIST_HANDLING_CHAIN

but I think you'd get my drift.

Rgds,


On 2011-02-24, Pandu Poluan <pandu@xxxxxxxxxxx> wrote:
> What if:
>
> -m set ! --match-set $WHITELIST src -m set --match-set $BLACKLIST src -j
> DROP
>
> The first -m set (with the "!") punches 'holes' into the 2nd. You can
> follow up with
>
> -m set --match-set $WHITELIST src -j ACCEPT
>
> Rgds,
>
>
> On 2011-02-24, Mr Dash Four <mr.dash.four@xxxxxxxxxxxxxx> wrote:
>>
>>> The iptreemap type of ipset 4.x had the feature you are referring here.
>>>
>>> The iptree and iptreemap types are not implemented in ipset 5.x. However
>>> you can achieve the same effect by using two sets, the first one for the
>>> pinholes and the second one for the networks.
>>>
>> It would be a bit cumbersome to achieve that.
>>
>> I use the geoip database to construct, among other things, a permanent
>> block lists (mainly based on country of origin, but there are other
>> factors which I won't go in here) and these sets are only present in my
>> block chains (there is also a bit of logic involved, but that is another
>> set of issues altogether). I also have a separate list with host ip
>> addresses/ranges (my 'whitelist' so to speak) against which I
>> subsequently execute the delete statements to create the pinholes
>> (another useful ipset feature is that it silently ignores delete
>> requests if the ip address/range is not present in the set).
>>
>> As you know the geoip database regularly changes (so does, albeit
>> occasionally, the country of origin of various ip address ranges), so I
>> normally execute an automated set of scripts to update the database,
>> pick the right address ranges for blocking, construct-and-replace my
>> ipsets in the 3 or so blocking chains I have on the main firewall and
>> then apply the deletion statements to the same sets to create the
>> pinholes.
>>
>> The problem I see with your approach above is that I would have to
>> explicitly grant some sort of access to my 'whitelist' addresses (those
>> with which I create the pinholes), which isn't possible as I do not know
>> which ports (or port ranges) would need to be enabled - that depends on
>> various factors which I cannot always control. Besides, I would like the
>> 'whitelist' addresses to be traversed further down the ip chain as there
>> may be other rules which catch them. In other words, I cannot explicitly
>> allow access to the whitelist addresses as you are suggesting above (so
>> is my understanding).
>>
>> The ideal scenario, as I pointed out above, would be to use the
>> whitelist to create the pinholes (i.e. execute a deletion against
>> already registered sets) without explicitly allowing access to those ip
>> addresses/ranges.
>>
>> Another pretty good alternative would be (if I am, somehow, able) to
>> 'subtract' my whitelist members from the blacklisted ones and then use
>> the resulting set (or sets), but as far as I know I can't do that in
>> ipset, can I?
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe netfilter" in
>> the body of a message to majordomo@xxxxxxxxxxxxxxx
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
>
>
> --
> --
> Pandu E Poluan - IT Optimizer
> My website: http://pandu.poluan.info/
>


-- 
--
Pandu E Poluan - IT Optimizer
My website: http://pandu.poluan.info/
--
To unsubscribe from this list: send the line "unsubscribe netfilter" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Netfilter Development]     [Linux Kernel Networking Development]     [Netem]     [Berkeley Packet Filter]     [Linux Kernel Development]     [Advanced Routing & Traffice Control]     [Bugtraq]

  Powered by Linux