LINUX中IPTABLES防火墻的基本使用教程

前言

成都創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括大方網(wǎng)站建設(shè)、大方網(wǎng)站制作、大方網(wǎng)頁(yè)制作以及大方網(wǎng)絡(luò)營(yíng)銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,大方網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到大方省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

對(duì)于有公網(wǎng)IP的生產(chǎn)環(huán)境vps,僅僅開放需要的端口,即采用ACL來控制IP和端口(Access Control List).

這里可以使用Linux防火墻netfilter的用戶態(tài)工具

iptables有4種表:raw–>mangle(修改報(bào)文原數(shù)據(jù))–>nat(定義地址轉(zhuǎn)換)–>filter(定義允許或者不允許的規(guī)則)

每個(gè)表可以配置多個(gè)鏈:

* 對(duì)于filter來講一般只能做在3個(gè)鏈上:INPUT ,F(xiàn)ORWARD ,OUTPUT

* 對(duì)于nat來講一般也只能做在3個(gè)鏈上:PREROUTING ,OUTPUT ,POSTROUTING

* 對(duì)于mangle是5個(gè)鏈都可以做:PREROUTING,INPUT,F(xiàn)ORWARD,OUTPUT,POSTROUTING

filter表的三個(gè)鏈詳解:

* INPUT鏈: 過濾所有目標(biāo)地址是本地的數(shù)據(jù)包

* FORWARD鏈: 過濾所有路過本機(jī)的數(shù)據(jù)包

* OUTPUT鏈: 過濾所有由本機(jī)產(chǎn)生的數(shù)據(jù)包

舉一反三學(xué)習(xí):

【例】:過濾所有的訪問:
iptables -t filter -A INPUT -s 0.0.0.0/0.0.0.0 -d X.X.X.X -j DROP

【例】:對(duì)SSH的22端口開放
iptables -I INPUT -s 0.0.0.0/0.0.0.0 -d X.X.X.X -p tcp --dport 22 -j ACCEPT

【例】:開放80端口
iptables -A INPUT -s 0.0.0.0/0.0.0.0 -d X.X.X.X -p tcp --dport 80 -j ACCEPT


【例】:來自124的數(shù)據(jù)禁止通過174 IP
iptables -A OUTPUT -p tcp -s 45.32.102.124 -d 157.240.22.174 -j REJECT 

【例】打印當(dāng)前生效的iptables規(guī)則(-n顯示IP地址)
iptables -L -n 

Linux中iptables防火墻指定端口范圍

iptables -I INPUT -p tcp --dport 700:800 -j DROP 
iptables -I INPUT -s 11.129.35.45 -p tcp --dport 700:800 -j ACCEPT

一、 700:800 表示700到800之間的所有端口

二、 :800 表示800及以下所有端口

三、 700: 表示700以及以上所有端口

這個(gè)例子作用是,700-800端口,僅僅對(duì) 11.129.35.45 IP開放,白名單機(jī)制。

Snat、Dnat的iptables用途:

源地址轉(zhuǎn)換(Snat): iptables -t nat -A -s 私IP -j Snat –to-source 公I(xiàn)P

目的地址轉(zhuǎn)換(Dnat): iptables -t nat -A -PREROUTING -d 公I(xiàn)P -j Dnat –to-destination 私IP

iptables命令詳解

iptables常用的命令選項(xiàng)有:

-P:設(shè)置默認(rèn)策略的(設(shè)定默認(rèn)門是關(guān)著的還是開著的)如:iptables -P INPUT (DROP|ACCEPT)
-F: FLASH,清空規(guī)則鏈的(注意每個(gè)鏈的管理權(quán)限)
-N:NEW 支持用戶新建一個(gè)鏈,比如:iptables -N inbound_tcp_web 表示附在tcp表上用于檢查web的。
-X:用于刪除用戶自定義的空鏈
-Z:清空鏈
-A:追加
-I num : 插入,把當(dāng)前規(guī)則插入為第幾條
-R num:Replays替換/修改第幾條規(guī)則
-D num:刪除,明確指定刪除第幾條規(guī)則
-L:查看規(guī)則詳細(xì)信息,比如"iptables -L -n -v"
-s 表示源地址IP
-d 表示目標(biāo)地址IP
DROP 表示丟棄(拒絕)
ACCEPT 表示接受
-p 表示適用協(xié)議,如tcp

其他更多例子:

【例】添加iptables規(guī)則禁止用戶訪問域名為www.sexy.com的網(wǎng)站。

iptables -I FORWARD -d www.sexy.com -j DROP

【例】添加iptables規(guī)則禁止用戶訪問IP地址為20.20.20.20的網(wǎng)站。

iptables -I FORWARD -d 20.20.20.20 -j DROP

【例】添加iptables規(guī)則禁止IP地址為192.168.1.X的客戶機(jī)上網(wǎng)。

iptables -I FORWARD -s 192.168.1.X -j DROP

【例】添加iptables規(guī)則禁止192.168.1.0子網(wǎng)里所有的客戶機(jī)上網(wǎng)。

iptables -I FORWARD -s 192.168.1.0/24 -j DROP

【例】禁止192.168.1.0子網(wǎng)里所有的客戶機(jī)使用FTP協(xié)議下載。

iptables -I FORWARD -s 192.168.1.0/24 -p tcp –dport 21 -j DROP

【例】強(qiáng)制所有的客戶機(jī)訪問192.168.1.x這臺(tái)Web服務(wù)器。

iptables -t nat -I PREROUTING -i eth0 -p tcp –dport 80 -j DNAT –to-destination 192.168.1.x:80

【例】禁止使用ICMP協(xié)議。

iptables -I INPUT -i ppp0 -p icmp -j DROP

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)創(chuàng)新互聯(lián)的支持。

標(biāo)題名稱:LINUX中IPTABLES防火墻的基本使用教程
瀏覽路徑:http://muchs.cn/article40/ipjceo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、品牌網(wǎng)站設(shè)計(jì)企業(yè)建站、面包屑導(dǎo)航、用戶體驗(yàn)、網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司