From: Tim Perton <grpanosgr@yahoo.com>
To: netfilter@lists.netfilter.org
Cc: gtaylor@riverviewtech.net
Subject: Re: iptables: hide the real web server from users
Date: Wed, 14 Feb 2007 08:36:40 -0800 (PST) [thread overview]
Message-ID: <533163.22377.qm@web33303.mail.mud.yahoo.com> (raw)
In-Reply-To: <45D32DD7.80006@riverviewtech.net>
Dear Grant,
thank you very much for your quick reply.
I agree to the 3 conditions/caveats in your previous
email. I have already tried an example on this.
Let's say I want to connect to www.google.com
(216.239.59.103) so System B is www.google.com
According to your example I issue the following
commands (after stop/start iptables to be fresh):
iptables -A INPUT -p tcp -m tcp --dport 1099 -j ACCEPT
iptables -t nat -A PREROUTING -i eth0 -d a.b.c.d -p
tcp --dport 1099 -j DNAT --to-destination
216.239.59.103:80
iptables -t nat -A POSTROUTING -o eth0 -d
216.239.59.103 -p tcp --dport 1099 -j SNAT --to-source
a.b.c.d
I am trying http://a.b.c.d:1099 or with telnet
a.b.c.d 1099 (Trying a.b.c.d... telnet: Unable to
connect to remote host: Connection refused)
My regards,
Tim
--- Grant Taylor <gtaylor@riverviewtech.net> wrote:
> Tim Perton wrote:
> > I want my users to do a request like
> > http://a.b.c.d/1.php and then machine A to make
> the
> > same request to System B, get the results and send
> > them back to the user transparently.
>
> Technically you can do what you are wanting to do.
> However there are a
> few caveats that you need to be aware of when doing
> such.
>
> 1) System B will see System A as the connecting
> host, not the real client.
> 2) If System B is not ""behind System A (as you
> have described it to
> not be) it will have to send the traffic back to
> System A which will
> then send the traffic back to the client.
> Translation, System B can not
> send the traffic directly to the client with out
> breaking the TCP
> connection state on the client.
> 3) System A will be using more bandwidth by doing
> this.
>
> If all the above are ok with you, consider doing the
> following on system A.
>
> # Port forward web traffic originally to System A
> over to System B.
> iptables -t nat -A PREROUTING -i $INet -d
> $SystemA_IP -p tcp --dport 80
> -j DNAT --to-destination $SystemB_IP:$SystemB_Port
> # SNAT traffic to System B's web server to appear to
> be from System A.
> iptables -t nat -A POSTROUTING -o $INet -d
> $SystemB_IP -p tcp --dport
> $SystemB_Port -j SNAT --to-source $SystemA_IP
>
> If you have any questions, ask.
>
>
>
> Grant. . . .
>
>
____________________________________________________________________________________
Looking for earth-friendly autos?
Browse Top Cars by "Green Rating" at Yahoo! Autos' Green Center.
http://autos.yahoo.com/green_center/
next prev parent reply other threads:[~2007-02-14 16:36 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-02-14 12:53 iptables: hide the real web server from users Tim Perton
2007-02-14 13:08 ` Rodrigo Montoro (Sp0oKeR)
2007-02-14 14:40 ` Rob Sterenborg
2007-02-14 14:43 ` Robert LeBlanc
2007-02-14 15:44 ` Tim Perton
2007-02-23 11:05 ` Martijn Lievaart
2007-02-14 15:42 ` Grant Taylor
2007-02-14 16:36 ` Tim Perton [this message]
2007-02-14 17:59 ` Grant Taylor
2007-02-15 14:28 ` Tim Perton
2007-02-15 15:08 ` Pascal Hambourg
2007-02-15 10:55 ` Pascal Hambourg
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=533163.22377.qm@web33303.mail.mud.yahoo.com \
--to=grpanosgr@yahoo.com \
--cc=gtaylor@riverviewtech.net \
--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