嚴(yán)學(xué)軍
摘要:介紹Linux下的iptables的基本原理,結(jié)合虛擬機(jī)闡述了如何使用IPtables在網(wǎng)絡(luò)中實(shí)現(xiàn)內(nèi)外網(wǎng)的訪問(wèn)控制,并實(shí)現(xiàn)了典型的訪問(wèn)控制案例。
關(guān)鍵詞:虛擬機(jī);iptables ;防火墻
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2017)02-0208-02
由于LINUX是源代碼開(kāi)放的免費(fèi)軟件,現(xiàn)在使用LINUX的人越來(lái)越多。同時(shí)LINUX又具有比WINDOWS更加強(qiáng)大的穩(wěn)定性和安全性,特別是網(wǎng)絡(luò)服務(wù)這個(gè)部分,LINUX具有和兼容幾乎所有WINDOWS的網(wǎng)絡(luò)服務(wù),所以現(xiàn)在在互聯(lián)網(wǎng)上出現(xiàn)的LINUX服務(wù)器所占比例也逐漸增加,基于LINUX的使用越來(lái)越廣泛,很多學(xué)校都開(kāi)設(shè)了LINUX課程。本文主要對(duì)LINUX服務(wù)器上常用的iptables防火墻的使用如何在虛擬機(jī)中實(shí)現(xiàn)進(jìn)行討論。
1 iptables工作原理
IPTables包含3個(gè)表,分別是Filter、NAT、Manage表,通過(guò)這幾個(gè)表可以設(shè)置對(duì)數(shù)據(jù)包進(jìn)行過(guò)濾和篩選。具體來(lái)說(shuō),F(xiàn)ilter表可以實(shí)現(xiàn)數(shù)據(jù)包過(guò)濾,NAT表可以實(shí)現(xiàn)地址轉(zhuǎn)換,Manage表主要用來(lái)對(duì)數(shù)據(jù)包進(jìn)行處理。在每個(gè)表中又包含若干鏈,每個(gè)鏈都可以設(shè)置一些規(guī)則,通過(guò)使用鏈中的規(guī)則以對(duì)流進(jìn)的數(shù)據(jù)包做出判斷。根據(jù)表和鏈的結(jié)合情況,下面幾種是經(jīng)常碰到的情況。當(dāng)INPUT鏈位于 filter 表,匹配目的 IP 是本機(jī)的數(shù)據(jù)包;FORWARD鏈位于 filter 表,匹配穿過(guò)本機(jī)的數(shù)據(jù)包;PREROUTING鏈位于 nat 表,用于修改目的地址(DNAT);POSTROUTING鏈位于 nat 表,用于修改源地址(SNAT)。
2 iptables的過(guò)濾規(guī)則
IPtables命令由六個(gè)基本部分構(gòu)成,下面分別介紹。
1)要操作的表:主要有三個(gè)分別是filter實(shí)現(xiàn)數(shù)據(jù)報(bào)過(guò)濾;nat實(shí)現(xiàn)網(wǎng)絡(luò)地址轉(zhuǎn)換;Mangle實(shí)現(xiàn)數(shù)據(jù)報(bào)處理。
2)操作命令:主要有-A、-I、-D、-R、-F等單字符命令,表示添加、插入、刪除、替代、清空等等操作。
3)要操作的鏈:INPUT鏈位于filter表……