All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martijn Lievaart <m@rtij.nl>
To: Matt Singerman <msingerman@ncemch.org>
Cc: netfilter@lists.netfilter.org
Subject: Re: Problems configuring iptables
Date: Wed, 23 Aug 2006 20:22:24 +0200	[thread overview]
Message-ID: <44EC9CE0.10308@rtij.nl> (raw)
In-Reply-To: <44EC966C.6000002@ncemch.org>

Matt Singerman wrote:

> Wow, that came out looking all messed up, let me try sending that again:
>
> Hmmm...  That is definitely part of it, yeah.  But there is something 
> else going on here.
>
> So I tried changing the chain policy to ACCEPT and to just block all 
> traffic using an iptables rule.  When I implement the rules as 
> follows, things work:
>
> Chain FORWARD (policy ACCEPT)
> target     prot opt source               destination       ACCEPT     
> tcp  --  x.y.z.116            x.y.z.120     tcp dpt:ssh 
> flags:FIN,SYN,RST,ACK/SYN
> DROP       tcp  --  anywhere             anywhere      tcp dpt:ssh 
> flags:FIN,SYN,RST,ACK/SYN
>
> As you can see, that is just blocking all traffic from anywhere to 
> anywhere on port 22 after allowing traffic from x.y.z.116 to x.y.z.120 
> through.  (x.y.z.116 and x.y.z.120 are both on the same subnet, but 
> 120 is behind the firewall and 116 is not.)  x.y.z.116 can SSH in to 
> x.y.z.120, but nothing else can.
>
> If I try to change it so that it isn't just blocking traffic on port 
> 22, but rather all traffic:
>
> Chain FORWARD (policy ACCEPT)
> target     prot opt source               destination       ACCEPT     
> tcp  --  x.y.z.116            x.y.z.120     tcp dpt:ssh 
> flags:FIN,SYN,RST,ACK/SYN
> DROP       tcp  --  anywhere             anywhere
>
> No SSH connections can get through at all, even from host x.y.z.116.
>
> Any ideas what could be causing this odd behavior?
>

Nothing odd here. First you allow all all syns from .116 to .120. You 
dorp all other syns. You allow all other traffic, which includes all 
non-syn traffic. In the second scenario you aloow the syns, but frop all 
non syn traffic. So the syn gets through, but the syn-ack from the ssh 
server gets dropped.

What you should be doing is this:

# let through all traffic from established connections
-A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# let through the connection request
-A FORWARD -p tcp --dport 22 -s x.y.z.116 -d x.y.z.130 -j ACCEPT
# log and drop all other traffic
-A FORWARD -j LOG
-A FORWARD -j DROP

For further information, read the howtos at the www.netfilter.org site.

HTH,
M4



  reply	other threads:[~2006-08-23 18:22 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-23 15:49 Problems configuring iptables Matt Singerman
2006-08-23 16:23 ` Ross A. Del Duca
2006-08-23 17:51   ` Matt Singerman
2006-08-23 17:54     ` Matt Singerman
2006-08-23 18:22       ` Martijn Lievaart [this message]
2006-08-23 18:58         ` Matt Singerman
2006-08-23 19:00           ` Pablo Sanchez
2006-08-23 19:07             ` Matt Singerman
2006-08-23 19:18           ` Martijn Lievaart
2006-08-24 10:57             ` Gáspár Lajos
2006-08-24 15:08               ` Matt Singerman

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=44EC9CE0.10308@rtij.nl \
    --to=m@rtij.nl \
    --cc=msingerman@ncemch.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 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.