Linux Netfilter discussions
 help / color / mirror / Atom feed
From: Pascal Hambourg <pascal.mail@plouf.fr.eu.org>
To: netfilter@vger.kernel.org
Subject: Re: Port forwarding (non-NAT)
Date: Tue, 19 Feb 2008 11:49:20 +0100	[thread overview]
Message-ID: <47BAB430.9040104@plouf.fr.eu.org> (raw)
In-Reply-To: <47BA2235.4050806@erentil.net>

Hello,

Jon Wilson a écrit :
> Kristofer wrote:
> 
>> I've googled and done some searches, and the only information I can 
>> find is for port forwarding with NAT. Perhaps that's what I need to 
>> accomplish what I am trying to do.
>> I currently have an SMTP server listening on port 25, and the machine 
>> has its own static IP address, no NAT is being used.
>> I want to use iptables to forward inbound traffic on port 587 to port 
>> 25 of that same machine, so basically making SMTP listen on both 
>> ports. I do not wish to configure the SMTP software to listen on 
>> multiple ports, since I may want to open up several more ports in the 
>> future and that would be a lot of idle daemons listening on ports they 
>> may or may not use.

Huh ? What is that SMTP software which requires tu run one separate 
daemon for each listening port ? If it can use inetd, you can have it 
listening on multiple ports even without a single idle daemon running 
(except inetd itself of course).

>> So, my questions is: how can I have incoming traffic on port 587 go to 
>> port 25 of the localhost?

Port forwarding is a form of destination NAT. It can also be done with a 
TCP relay such as 6tunnel, but the final destination sees only the relay 
address, not the original source address. Not very convenient for 
logging or access control.

> if iptables on the same computer as the smtp server:
> 
> iptables -t nat -A PREROUTING -p tcp --dport 587 -m state --state NEW -d 
> $IP_OF_MAIL_SERVER -j REDIRECT --to-ports 25
> 
> else:
> 
> iptables -t nat -A PREROUTING -p tcp --dport 587 -m state --state NEW -d 
> $IP_OF_MAIL_SERVER -j DNAT --to $IP_OF_MAIL_SERVER:25

Note that the second rule also works on the server itself.

  reply	other threads:[~2008-02-19 10:49 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1664820.9541203376664790.JavaMail.SYSTEM@tater>
2008-02-18 23:18 ` Port forwarding (non-NAT) Kristofer
2008-02-19  0:26   ` Jon Wilson
2008-02-19 10:49     ` Pascal Hambourg [this message]
2008-02-19 17:01       ` Kristofer

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=47BAB430.9040104@plouf.fr.eu.org \
    --to=pascal.mail@plouf.fr.eu.org \
    --cc=netfilter@vger.kernel.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