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