RE: how do i forward ftp from my firewall to an internal server?

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

 



The FTP protocol works completely differently than http, particularly in the
way connections are negotiated and accepted.  You must also account for both
active and passive modes. I'm assuming the rules you have here are for new
connections to your FTP server?  What are your FTP rules for the FORWARD
chain?

-----Original Message-----
From: netfilter-admin@xxxxxxxxxxxxxxxxxxx
[mailto:netfilter-admin@xxxxxxxxxxxxxxxxxxx] On Behalf Of Gustav Petersson
Sent: Saturday, February 28, 2004 12:28 AM
To: netfilter@xxxxxxxxxxxxxxxxxxx
Subject: how do i forward ftp from my firewall to an internal server?

Like the subject line says.. how do I do it?

I have port http traffic forwarded to the same server but when i use the
same rule with only the port(s) changed for ftp traffic my ftp server opens
the connection but immediately closes it again. I have tried running both
the standard in.ftpd and proftpd. Any help would be greatly appreciated.

Gustav Petersson

I am running debian 3.0 with kernel 2.4.24 and I have the following modules
loaded:

ipt_LOG
ipt_state
iptable_filter
ip_nat_ftp
ip_conntrack_ftp
iptable_nat
ip_conntrack
ip_tables

Here is my firewall config:
#!/bin/sh
 
EXT_IP=1.2.3.4
INT_IP=192.168.x.x

modprobe iptable_nat
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
 
echo "1" > /proc/sys/net/ipv4/ip_forward
 
iptables -P INPUT ACCEPT
iptables -F INPUT
iptables -P OUTPUT ACCEPT
iptables -F OUTPUT
iptables -P FORWARD ACCEPT
iptables -F FORWARD
iptables -t nat -F

# NAT
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 213.88.181.68
 
 


# Forward port 80 to internal server
iptables -A PREROUTING -t nat -p tcp -d $EXT_IP --dport 80 \
        -j DNAT --to $INT_IP:80

# Forward ports 20 and 21 to internal server iptables -A PREROUTING -t nat
-p tcp -d $EXT_IP --dport 20 \
        -j DNAT --to $INT_IP:20
 


iptables -A PREROUTING -t nat -p tcp -d $EXT_IP --dport 21 \
        -j DNAT --to $INT_IP:21






[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