iptables下开放ftp连接端口
iptables下開放ftp連接端口
轉載?2014年04月19日 10:04:27iptables 就是linux系統的防火墻,很多人安裝iptables之后重啟服務器發現網站無法訪問,ftp無法連接。關閉iptables之后網站和ftp服務器都能正常訪問,但是為了服務器的安全,不建議關閉防火墻。
要想配置好iptables讓ftp服務器正常訪問,我們首先要了解一下ftp服務器的工作機制。
ftp協議是一個簡單、保密性差(明碼)的tcp協議,它的工作原理是客戶端先連服務器端的21端口,然后經過3步的握手以后建立了一條連接。要注意的是,這條連接只可以用來傳輸ftp的命令,只有這條連接的話是什么文件都傳不了的,就算是用“ls”命令來查看文件也不行。
建立了命令的連接以后,服務器端就要建立一條數據的連接。數據的連接又分為主動模式(port)和被動模式(passive)。ftp默認是被動模式,主動和被動之間使用”pass”命令切換。主動模式通過20端口與客戶端相連,而被動模式卻使用1024以后的端口與客戶端相連。由于1024以后的端口是隨機分配的,所以在被動模式下我們是不知道服務端是使用什么端口與客戶端連接的。也就是說,我們是不知道iptables要開放什么端口。
了解之后我們發現,僅僅在iptables設置開放21端口是不行的。
在/etc/sysconfig/iptables-config里面添加ip_nat_ftp、ip_conntrack、ip_conntrack_ftp模塊,如下:
vi /etc/sysconfig/iptables-config IPTABLES_MODULES="ip_nat_ftp" IPTABLES_MODULES="ip_conntrack" IPTABLES_MODULES="ip_conntrack_ftp"然后重啟iptables或者執行如下命令:
modprobe ip_nat_ftp?? (加載ftp模塊) lsmod | grepftp??? (查看模塊是否被加載)?
之后只需要添加規則
iptables -I INPUT -s 192.168.1.1 -d 192.168.1.200 -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -s 192.168.1.1 -d 192.168.1.200 -p tcp --sport 21 -j ACCEPT注意:如果你把OUTPUT 設置成DROP的就要寫上
iptables -A OUTPUT -m state --state NEW -p tcp --dport 21 -j ACCEPT
?
最后要記得保存和重啟iptables服務
/etc/rc.d/init.d/iptablessave service iptables restart這樣ftp命令能傳輸了,也可以利用ftp服務器上傳下載文件了。
轉載于:https://www.cnblogs.com/liubi/p/8859081.html
總結
以上是生活随笔為你收集整理的iptables下开放ftp连接端口的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 武警义务兵考军校要多少分
- 下一篇: 请问武警的一个支队有多少人?中队,大队呢