設置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

 

[plain]  view plain  copy
 
  1. iptables -I INPUT -d 10.79.32.22 -p tcp -m multiport --destination-ports 21,22,80 -m state --state NEW -j ACCEPT  
  2. iptables -I INPUT 1 -d 10.79.32.22 -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT  
  3. iptables -I OUTPUT 1 -s 10.79.32.22 -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT  
  4. iptables -P FORWARD DROP  
  5. iptables -P OUTPUT DROP  
  6. iptables -P INPUT DROP  


2、查看iptables狀態

 

 

[plain]  view plain  copy
 
  1. # iptables -L -n  



 

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

 

[plain]  view plain  copy
 
  1. #service iptables save  
[plain]  view plain  copy
 
  1. <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模塊


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM