Linux中使用有狀態(tài)防火墻實(shí)現(xiàn)FTP功能 |
發(fā)布時(shí)間: 2012/8/13 12:01:38 |
首先大家要認(rèn)清楚一個(gè)概念,使用FTP是從http代理出去,還是由socks代理或firewall上打開(kāi)一個(gè)口轉(zhuǎn)發(fā)。從http代理出去的FTP,實(shí)際上使用的是http代理程序,象最常用的squid,是http tps代理,但是它也能代理ftp請(qǐng)求。當(dāng)你打開(kāi)瀏覽器登陸ftp站點(diǎn)時(shí),使用的就是http代理程序來(lái)處理ftp的問(wèn)題。而有些程序只能設(shè)置成socks或firewall代理,象Cuteftp,wu-ftp和dos下的FTP。此類(lèi)的代理才是標(biāo)準(zhǔn)的FTP代理。
本文假設(shè)大家對(duì)netfilter技術(shù)已經(jīng)有了一定了解,介紹利用netfilter的有狀態(tài)功能在inux2.4內(nèi)核上實(shí)現(xiàn)FTP。 系統(tǒng)環(huán)境: linux7.2,安裝了iptable,squid,有兩塊網(wǎng)卡: eth0:x.x.x.x 接internet, eth1:192.168.0.1 接內(nèi)網(wǎng)。 firewall相關(guān)規(guī)則: 以下為引用的內(nèi)容: ##Ismod the firewall modules *加載模塊
實(shí)際上,加載了ip_conntrack模塊,ftp已經(jīng)能夠登陸,并能使用象pwd,cd等命令,但當(dāng)使用ls命令顯示文件內(nèi)容時(shí),就會(huì)timeout。原因在于顯示文件列表的包防火墻無(wú)法識(shí)別,就會(huì)進(jìn)入默認(rèn)策略----禁止,此時(shí)就需要加載ip_conntrack_ftp模塊。 ip_conntrack_ftp模塊使防火墻能夠識(shí)別FTP某類(lèi)特殊的返回包。如果防火墻上對(duì)所有出去的返回包作了偽裝,就需要加載ip_nat_ftp模塊。ip_nat_ftp模塊在出去的包作了偽裝以后,必須加載,否則防火墻無(wú)法知道返回的包該轉(zhuǎn)發(fā)到哪里。 以下為引用的內(nèi)容:
以下為引用的內(nèi)容:
關(guān)于netfilter有狀態(tài)基礎(chǔ)知識(shí),請(qǐng)查看相關(guān)資料。 本文出自:億恩科技【m.1tcdy.com】 服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |