酷!學園

技術討論區 => Linux 討論版 => 主題作者是: Guset 於 2002-04-19 02:55

主題: 如何在NAT下的FTP從外部只到內部ㄋ?
作者: Guset2002-04-19 02:55
我想在NAT下架設Serv-U FTP 從外部指到內部,要把 Linux的FTP關掉.
請問要如何把它關掉ㄋ? (/etc/inet.conf and /etc/services)
還有ADSL DNS Client指到我的內部IP,卻不是我的浮動IP?
為什麼會這樣ㄋ?  謝謝~~
主題: 如何在NAT下的FTP從外部只到內部ㄋ?
作者: kenny2002-04-19 12:55
基本上﹐不是三言兩語說得清楚的。(我很希望等您解決之後﹐和大家整理出來)

我建議您在管理 NAT 之前﹐先將網路的底層原理弄明白﹐同時還必須搞清楚每一種服務協定的特性﹐例如 FTP 就是一個很好的例子。

如果下面的習題﹐您在沒看答案的時候做得出來﹐那應該不成問題了﹕
http://www.study-area.org/tips/nat_ftp.htm

假如您連看完答案都不知道說什麼﹐那﹐我建議您別急著碰 NAT 啦。
主題: NAT 下架 FTP
作者: Anonymous2002-04-25 15:40
請問我這樣設定是否正確ㄋ?

192.168.1.24 ------> 要架設的FTP

iptables -A input -i ppp0 -p TCP -d abc.adsldns.org  21 -j ACCEPT

iptables -A output -i eth1 -p TCP -d 192.168.1.24 21 -j ACCEPT  

iptables -A input -i eth1 -p TCP -s 192.168.1.24 21 -j ACCEPT  

iptables -A forward -p TCP -s 192.168.1.24 21 -j MASQ  

iptables -A output -i ppp0 -p TCP -s abc.adsldns.org -j ACCEPT

iptables -A output -i eth1 -p TCP -d 192.168.1.24 20 -j ACCEPT  

iptables -A input -i eth1 -p TCP -s 192.168.1.24 20 -j ACCEPT

iptables -A forward -p TCP -s 192.168.1.24 20 -j MASQ  

iptables -A output -i ppp0 -p TCP -s abc.adsldns.org 1024:65355 -d 0/0 1024:65535 -j ACCEPT

iptables -A input -i ppp0 -p TCP -s 0/0 1024:65535 -d abc.adsldns.org 1024:65355 ! -y -j ACCEPT

ps. abc.adsldns.org 為假設,如有雷同,存屬虛構
主題: 如何在NAT下的FTP從外部只到內部ㄋ?
作者: kenny2002-04-25 15:46
您前說的是 NAT 後面架設的﹐所有在 iptables 沒用到 input ﹐而且也應該在 -t nat 這個 table 中設定才對。

前面給您的 links 裡面就有答案了﹐看不懂的話﹐證明您的基礎還沒 ready 。
主題: 如何在NAT下的FTP從外部只到內部ㄋ?
作者: Anonymous2002-04-29 03:28
:D
感謝大大~~
小小已經把問題解決了~~
用 DNAT (port forward)來使ftp server 建立 ftp-data 連線
iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 20 -j DNAT \--to 192.168.1.24

iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 21 -j DNAT \--to 192.168.1.24

iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 80 -j DNAT \--to 192.168.1.24

但是Web Server卻無法連上... (NAT下Web Server)
還在研究當中... >.<