From: Vincent Regnard <devel@regnard.org>
To: netfilter@lists.netfilter.org
Subject: Re: multiport tolerance changes
Date: Wed, 26 Jul 2006 16:21:00 +0200 [thread overview]
Message-ID: <44C77A4C.2080708@regnard.org> (raw)
In-Reply-To: <44C7537C.7070509@plouf.fr.eu.org>
Pascal Hambourg a écrit :
> Hello,
>
> Vincent Regnard a écrit :
>>
>> With iptables 1.2.7 I had some rules where I could write some
>> multiport (port lists or ranges) both for source and destination
>> ports, like this:
>>
>> /sbin/iptables -A fw2net_eth3 -p tcp -m multiport -s 82.67.103.87
>> --sport 1024:65535 -d 0.0.0.0/0 --dports 80,8080,81,8000,1755 -j ACCEPT
>>
>> iptables was coping well with this and expanded the port matrix into
>> appropriate single rules
>
> What do you mean ? Could you give an example of such expansion ?
The expansion in that case becomes:
0 0 ACCEPT tcp -- * * 82.67.103.87
0.0.0.0/0 tcp spts:1024:65535 dpt:8080
0 0 ACCEPT tcp -- * * 82.67.103.87
0.0.0.0/0 tcp spts:1024:65535 dpt:81
0 0 ACCEPT tcp -- * * 82.67.103.87
0.0.0.0/0 tcp spts:1024:65535 dpt:8000
0 0 ACCEPT tcp -- * * 82.67.103.87
0.0.0.0/0 tcp spts:1024:65535 dpt:1755
>
>> But iptables 1.3.5 refuses to have multiport for both source and
>> destination ports and objects:
>>
>> iptables v1.3.5: multiport can only have one option
>
> Well, it seems that my old iptables 1.2.6a already had the same
> limitation. I submitted your rule to it and got an error too.
>
>> So I have to re-write my firewall rules.
>
> How did you rewrite the above rule ?
I suppressed the SOURCE port range and the rule becomes more permissive
(but works):
/sbin/iptables -A fw2net_eth3 -p tcp -m multiport -s 82.67.103.87 -d
0.0.0.0/0 --dports 80,8080,81,8000,1755 -j ACCEPT
> If I reorder the options, so that the --sport parameter appears to
> belong to the implicit "-m tcp" match created by "-p tcp", the rule is
> accepted by my iptables 1.2.6a :
>
> /sbin/iptables -A fw2net_eth3 -s 82.67.103.87 -d 0.0.0.0/0 \
> -p tcp --sport 1024:65535 -m multiport --dports 80,8080,81,8000,1755 \
> -j ACCEPT
>
I confirm that when writing it that way (reordering properly) I also
have no more error. But for some protocol, I would like to be able to
write some source port range and also some destination port range. A
rule like this:
/sbin/iptables -A fw2net_eth3 -p tcp -m multiport -s 82.67.103.87
--sports 10000,10001,10002 -d 0.0.0.0/0 --dports 80,8080,81,8000,1755 -j
ACCEPT
And such a rule actually does not work.
> As a general rule it seems to me that it is more logical and readable to
> put the parameters of a match right behind the match.
You're right, but I have some constraints that does not permit this
right now.
>
> PS: what's the use of "-d 0.0.0.0/0" ?
>
>
0.0.0.0 is here just because I use shell script variable for my rules
and sometimes it gets replaced with a "proper" IP bloc or address
I have some general scripts that generate config for many routeurs, the
config are then uploaded onto the routers for iptables treatment. A kind
of general firewall configuration generator based on per router DB
variables.
prev parent reply other threads:[~2006-07-26 14:21 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-26 9:32 multiport tolerance changes Vincent Regnard
2006-07-26 11:35 ` Pascal Hambourg
2006-07-26 14:21 ` Vincent Regnard [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=44C77A4C.2080708@regnard.org \
--to=devel@regnard.org \
--cc=netfilter@lists.netfilter.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox