設置iptables允許ssh、http、ftp服務

系統環境:centos-6.5

服務器:thinkserver


知識掃盲:

NEW:這個包是我們看到的第一個包

ESTABLISHED:一個連接要從NEW變 爲ESTABLISHED,只需要接到應答包即可,不管這個包是發往防火牆的,還是要由防 火牆轉發的。

FTP服務器有兩種工作模式:主動模式和被動模式。這兩種方式的特點如下:
 (1)主動模式下:
  tcp, 20(20號端口用於數據傳輸),21(21號端口用於控制連接)
 (2)被動模式:
  tcp, 21(用於控制連接) >1023(端口號大於1023的隨機端口用於數據傳輸)
  所以如果FTP工作在被動模式下,無法指定數據傳輸的端口,於是引入了RELATED狀態。RELATED主要用於追蹤與其相關的端口。注意:ftp工作在主動模式或者被動模式與客戶端的請求有關。

ssh、http服務分別工作在22、80端口,第一次進入server端的包爲NEW狀態,所以要求INPUT鏈能過ACCEPT客戶端的第一次發來的數據包。而後,發給客戶端的包,使得該客戶端與服務端通信來往包的狀態變爲ESTABLISHED,所以INPUT鏈允許通過的狀態爲NEW、ESTABLISHED,而OUTPUT鏈,只需ESTABLISHED。


1、設置21,22,80端口INPUT鏈和OUTPUT鏈,設置INPUT、FORWORD、OUTPUT鏈的默認策略爲DROP

iptables -I INPUT -d 10.79.32.22 -p tcp -m multiport --destination-ports 21,22,80 -m state --state NEW -j ACCEPT
iptables -I INPUT 1 -d 10.79.32.22 -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -I OUTPUT 1 -s 10.79.32.22 -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
iptables -P INPUT DROP

2、查看iptables狀態

# iptables -L -n


3、保存iptables當前配置,該配置文件位於/etc/sysconfig/iptables

#service iptables save
<p>#vim /etc/sysconfig/iptables</p>



4、修改iptables啓動時裝載模塊,這裏增加的兩個模塊可以爲“nf_nat_ftp nf_conntrack_ftp”,也可以寫成“ip_nat_ftp ip_conntrack_ftp”

#vim /etc/sysconfig/iptables-config



5、重新啓動iptables服務

# service iptablesrestart



6、查看內核是否裝載有上述配置的兩個有關ftp模塊


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章