久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

iptables詳解

 mrjbydd 2011-05-06
  •  
iptables詳解   
Iptables原理
現(xiàn)在防火墻主要分以下三種類型:包過濾、應用代理,、狀態(tài)檢測
包過濾防火墻:現(xiàn)在靜態(tài)包過濾防火墻市面上已經(jīng)看不到了,,取而代之的是動態(tài)包過濾技術的防火墻哈~
代理防火墻:因一些特殊的報文攻擊可以輕松突破包過濾防火墻的保護,比如大家知道的SYN攻擊,、ICMP洪水攻擊,所以以代理服務器作為專門為用戶保密或者突破訪問限制的數(shù)據(jù)轉(zhuǎn)發(fā)通道的應用代理防火墻出現(xiàn)了哈~其使用了一種應用協(xié)議分析的新技術,。
狀態(tài)檢測防火墻:其基于動態(tài)包過濾技術發(fā)展而來,加入了一種狀態(tài)檢測的模塊,,進一點發(fā)展了會話過濾功能,,會話狀態(tài)的保留是有時間限制的,此防火墻還可以對包的內(nèi)容進行分析,,從而避免開放過多的端口,。
netfilter/iptables IP數(shù)據(jù)包過濾系統(tǒng)實際上由netfilter和iptables兩個組件構(gòu)成。netfilter是集成在內(nèi)核中的一部分,,其作用是定義,、保存相應的規(guī)則,而iptables是一種工具,,用來修改信息的過濾規(guī)則及其他配置,,我們可以通過iptables來設置一些適合我們企業(yè)需求環(huán)境的規(guī)則哈~,,而這些規(guī)則會保存在內(nèi)核空間之中。
netfilter是Linux核心中的一個通用架構(gòu),,其提供了一系列的表(tables),每個表由若干個鏈(chains)組成,,而每條鏈可以由一條或若干條規(guī)則(rules)組成。實際上netfilter是表的容器,,表是鏈的容器,,而鏈又是規(guī)則的容器。
filter表
image
nat表
image
mangle表
image
iptables內(nèi)置鏈
PREROUTING:數(shù)據(jù)包進入路由表之前
INPUT:通過路由表后目的地為本機
FORWARDING:通過路由表后,,目的地不為本機
OUTPUT:由本機產(chǎn)生,,向外轉(zhuǎn)發(fā)
POSTROUTIONG:發(fā)送到網(wǎng)卡接口之前
netfilter五條鏈相互關系,即iptables數(shù)據(jù)包轉(zhuǎn)發(fā)流程圖
image
Iptables工作流程圖
iptables擁有三個表和五條鏈組成
image
NAT工作原理
image
Iptables詳細參數(shù)表
iptables詳細參數(shù)表大圖
Iptables基本語法
iptables [-t 表名] -命令 -匹配 -j 動作/目標
iptables內(nèi)置了filter,、nat和mangle三張表,,我們可以使用-t參數(shù)來設置對哪張表生效哈~也可以省略-t參數(shù),則默認對filter表進行操作,。
具體命令參數(shù)可以通過man iptables查詢哈~
image
配置SNAT命令基本語法
iptables -t nat -A POSTROUTING -o 網(wǎng)絡接口 -j SNAT --to-source IP地址
配置DNAT命令基本語法
iptables -t nat -A PREROUTING -i 網(wǎng)絡接口 -p 協(xié)議 --dport 端口 -j DNAT --to-destination IP地址
企業(yè)環(huán)境及需求
1,、企業(yè)環(huán)境
230臺客戶機,IP地址范圍為192.168.0.1~192.168.0.254,,子網(wǎng)掩碼為255.255.255.0
Mail服務器:IP地址為192.168.0.1 子網(wǎng)掩碼為255.255.255.0
FTP服務器:IP地址為192.168.0.2 子網(wǎng)掩碼為255.255.255.0
WEB服務器:IP地址為192.168.0.3 子網(wǎng)掩碼為255.255.255.0
公司網(wǎng)絡拓撲圖如下:
image
2,、配置默認策略
所有內(nèi)網(wǎng)計算機需要經(jīng)常訪問互聯(lián)網(wǎng),并且員工會使用即時通信工具與客戶進行溝通,,企業(yè)網(wǎng)絡DMZ隔離區(qū)搭建有Mail,、FTP和Web服務器,其中Mail和FTP服務器對內(nèi)部員工開放,,僅需要對外發(fā)布Web站點,,并且管理員會通過外網(wǎng)進行遠程管理,為了保證整個網(wǎng)絡的安全性,,需要添加iptables防火墻并配置相應的策略
需求分析
企業(yè)的內(nèi)部網(wǎng)絡為了保證安全性,,需要首先刪除所有規(guī)則設置,并將默認規(guī)則設置為DROP,,然后開啟防火墻對于客戶端的訪問限制,,打開WEB、MSN,、QQ及MAIL的相應端口,,并允許外部客戶端登錄WEB服務器的80、22端口,。
解決方案
1,、配置默認策略
默認iptables已經(jīng)被安裝好了
image
(1)刪除策略
iptables -F:清空所選鏈中的規(guī)則,如果沒有指定鏈則清空指定表中所有鏈的規(guī)則
iptables -X:清除預設表filter中使用者自定鏈中的規(guī)則
iptables -Z:清除預設表filter中使用者自定鏈中的規(guī)則
image
(2)設置默認策略
設置默認策略為關閉filter表的INPPUT及FORWARD鏈開啟OUTPUT鏈,,nat表的三個鏈PREROUTING,、OUTPUT,、POSTROUTING全部開啟哈~默認全部鏈都是開啟的,所以有些命令可以不操作,,另外mangle表本文沒用到,,所以不做處理,mangle主要用在數(shù)據(jù)包的特殊變更處理上,,比如修改TOS等特性,。
image
image
2、設置回環(huán)地址
有些服務的測試需要使用回環(huán)地址,,為了保證各個服務的正常工作,,需要允許回環(huán)地址的通信,RHCE課程-RH253Linux服務器架設筆記二-NFS服務器配置己有涉及,如果不設置回環(huán)地址,,有些服務不能啟動哈~,。
iptables -A INPUT -i lo -j ACCEPT
 image
3、連接狀態(tài)設置
為了簡化防火墻的配置操作,,并提高檢查的效率,,需要添加連接狀態(tài)設置
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
連接跟蹤存在四種數(shù)據(jù)包狀態(tài)
NEW:想要新建連接的數(shù)據(jù)包
INVALID:無效的數(shù)據(jù)包,例如損壞或者不完整的數(shù)據(jù)包
ESTABLISHED:已經(jīng)建立連接的數(shù)據(jù)包
RELATED:與已經(jīng)發(fā)送的數(shù)據(jù)包有關的數(shù)據(jù)包
image
4,、設置80端口轉(zhuǎn)發(fā)
公司網(wǎng)站需要對外開放,,所以我們需要開放80端口
iptables -A FORWARD -p tcp --dport 80 -j ACCEPT
image
5、DNS相關設置
為了客戶端能夠正常使用域名訪問互聯(lián)網(wǎng),,我們還需要允許內(nèi)網(wǎng)計算機與外部DNS服務器的數(shù)據(jù)轉(zhuǎn)發(fā),。
開啟DNS使用UDP、TCP的53端口
iptables -A FORWARD -p tcp --dport 53 -j ACCEPT
iptables -A FORWARD -p udp --dport 53 -j ACCEPT
image 
6,、允許訪問服務器的SSH
管理員會通過外網(wǎng)進行遠程管理,所以我們要開啟SSH使用的TCP協(xié)議22端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
image
7,、允許內(nèi)網(wǎng)主機登錄MSN和QQ相關設置
QQ能夠使用TCP80,、8000、443及UDP8000,、4000登錄,,而MSN通過TCP1863、443驗證,。因此只需要允許這些端口的FORWARD轉(zhuǎn)發(fā)即可以正常登錄,。
iptables -A FORWARD -p tcp --dport 1863 -j ACCEPT
iptables -A FORWARD -p tcp --dport 443 -j ACCEPT
iptables -A FORWARD -p tcp --dport 8000 -j ACCEPT
iptables -A FORWARD -p udp --dport 8000 -j ACCEPT
iptables -A FORWARD -p udp --dport 4000 -j ACCEPT
注意:當然,如果公司要限制這樣即時通信工具的使用,,只要禁止這些端口的轉(zhuǎn)發(fā)就可以了哈~特別注意,,馬化騰這家伙忒壞~嘿嘿~,端口不固定,,QQVIP會員專用通道什么的,,代理登錄等等哈~,,所以我們?nèi)绻枰鈿⒕鸵占卿浂丝诩癚Q服務器地址,根據(jù)本人總結(jié),,最好在企業(yè)實際配置中技術與行政管理相結(jié)合,,這樣達到的效果最好~0(^_^)0
image
8、允許內(nèi)網(wǎng)主機收發(fā)郵件
客戶端發(fā)送郵件時訪問郵件服務器的TCP25端口,。接收郵件時訪問,,可能使用的端口則較多,UDP協(xié)議以及TCP協(xié)議的端口:110,、143,、993及995
smtp:
[root@rhel5 ~]# iptables -A FORWARD -p tcp --dport 25 -j ACCEPT
pop3:
[root@rhel5 ~]# iptables -A FORWARD -p tcp --dport 110 -j ACCEPT
[root@rhel5 ~]# iptables -A FORWARD -p udp --dport 110 -j ACCEPT
imap:
[root@rhel5 ~]# iptables -A FORWARD -p tcp --dport 143 -j ACCEPT
[root@rhel5 ~]# iptables -A FORWARD -p udp --dport 143 -j ACCEPT
imaps:
[root@rhel5 ~]# iptables -A FORWARD -p tcp --dport 993 -j ACCEPT
[root@rhel5 ~]# iptables -A FORWARD -p udp --dport 993 -j ACCEPT
pop3s:
[root@rhel5 ~]# iptables -A FORWARD -p tcp --dport 995 -j ACCEPT
[root@rhel5 ~]# iptables -A FORWARD -p udp --dport 995 -j ACCEPT
image
9、NAT端口映射設置
由于局域網(wǎng)的地址為私網(wǎng)地址,,在公網(wǎng)上不合法哈~所以必須將私網(wǎng)地址轉(zhuǎn)為服務器的外部地址進行地址映射哈~連接外網(wǎng)接口為ppp0
iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.0.0/24 -j MASQUERADE
MASQUERADE和SNAT作用一樣哈~相樣是提供源地址轉(zhuǎn)換的操作,,但是MASQUERADE是針對外部接口為動態(tài)IP地址來設置滴,不需要使用--to-source指定轉(zhuǎn)換的IP地址,。如果網(wǎng)絡采用的是撥號方式接入互聯(lián)網(wǎng),,而沒有對外的靜態(tài)IP地址(主要用在動態(tài)獲取IP地址的連接,比如ADSL撥號,、DHCP連接等等),,那么建議使用MASQUERADE哈~
注意:MASQUERADE是特殊的過濾規(guī)則,其只可以映射從一個接口到另一個接口的數(shù)據(jù)哈~
image
10,、內(nèi)網(wǎng)機器對外發(fā)布WEB網(wǎng)站
內(nèi)網(wǎng)WEB服務器IP地址為192.168.0.3,,我們需要進行如下配置哈~,當公網(wǎng)客戶端訪問服務器時,,防火墻將請求映射到內(nèi)網(wǎng)的192.168.0.3的80端口
iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.3:80
image
11,、保存與恢復iptables配置
保存:iptables-save
iptables-save [-c] [-t 表名]
-c:保存包和字節(jié)計數(shù)器的值??梢允乖谥貑⒎阑饓蟛粊G失對包和字節(jié)的統(tǒng)計
-t:用來保存哪張表的規(guī)則,,如果不跟-t參數(shù)則保存所有的表
可以使用重定向命令來保存這些規(guī)則集
iptables-save > /etc/iptables-save
恢復:iptables-restore
iptables-restore [-c] [-n]
-c:如果加上-c參數(shù)則表示要求裝入包和字節(jié)計數(shù)器
-n:表示不覆蓋己有的表或表內(nèi)的規(guī)則,默認情況下是清除所有己存在的規(guī)則
使用重定向來恢復由iptables-save保存的規(guī)則集
iptables-restore > /etc/iptables-save
如果要在服務或系統(tǒng)重啟后依然生效
service iptables save
image
12,、最終iptables配置如下
[root@rhel5 ~]# iptables -L
Chain INPUT (policy DROP)
target     prot opt source               destination        
ACCEPT     all  --  anywhere             anywhere           
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh
Chain FORWARD (policy DROP)
target     prot opt source               destination        
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:http
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:domain
ACCEPT     udp  --  anywhere             anywhere            udp dpt:domain
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:msnp
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:https
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:irdmi
ACCEPT     udp  --  anywhere             anywhere            udp dpt:irdmi
ACCEPT     udp  --  anywhere             anywhere            udp dpt:terabase
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:smtp
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:pop3
ACCEPT     udp  --  anywhere             anywhere            udp dpt:pop3
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:imap
ACCEPT     udp  --  anywhere             anywhere            udp dpt:imap
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:imaps
ACCEPT     udp  --  anywhere             anywhere            udp dpt:imaps
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:pop3s
ACCEPT     udp  --  anywhere             anywhere            udp dpt:pop3s
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination        
[root@rhel5 ~]# iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination        
DNAT       tcp  --  anywhere             anywhere            tcp dpt:http to:192.168.0.3:80
Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination        
MASQUERADE  all  --  192.168.0.0/24       anywhere           
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination        
[root@rhel5 ~]#
注意:
SNAT將源網(wǎng)絡地址進行轉(zhuǎn)換,,只能用在nat表的POSTROUTING鏈中,只要連接的第一個符合條件的包被SNAT了哈~,,那么這個連接的其他所有的數(shù)據(jù)包都會自動地被SNAT,。與SNAT對應,DNAT將目的地址進行轉(zhuǎn)換,,只能用在nat表的PREROUTIONG和OUTPUT鏈中,,或者是被這兩條鏈調(diào)用的鏈里面。包含DNAT的鏈不能被除此之外的其他鏈調(diào)用,比如POSTROUTING鏈,。
附:
我們可以通過設置禁止訪問具體域名和IP地址哈~
禁止訪問QQ主頁:
[root@rhel5 ~]# iptables -A FORWARD -d [url]www.qq.com[/url] -j DROP
禁止訪問指定IP地址:
[root@rhel5 ~]# iptables -A FORWARD -d 119.147.15.17 -j DROP
image
我們可以通過查找QQ的安裝目錄來獲取QQ服務器的地址和端口號哈~
 image
 

    本站是提供個人知識管理的網(wǎng)絡存儲空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導購買等信息,謹防詐騙,。如發(fā)現(xiàn)有害或侵權內(nèi)容,,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多