新聞中心
【.com獨家特稿】Iptables的基本語法(更好的理解后面的網(wǎng)關(guān)NAT腳本):

在臺江等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營銷網(wǎng)站建設(shè) 網(wǎng)站設(shè)計制作按需定制設(shè)計,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,網(wǎng)絡(luò)營銷推廣,成都外貿(mào)網(wǎng)站建設(shè),臺江網(wǎng)站建設(shè)費用合理。
iptables [-t表名] <-A| I |D |R> 鏈名[規(guī)則編號] [-i | o 網(wǎng)卡名稱] [-p 協(xié)議類型] [-s 源IP地址 | 源子網(wǎng)][--sport 源端口號] [-d 目標(biāo)IP地址 | 目標(biāo)子網(wǎng)][--dport 目標(biāo)端口號] <-j 動作 >
INPUT鏈:當(dāng)一個數(shù)據(jù)包由內(nèi)核中的路由計算確定為本地Linux系統(tǒng)后,它會通過INPUT鏈的檢查。
OUTPUT鏈:保留給系統(tǒng)自身生成的數(shù)據(jù)包。
FORWARD鏈:經(jīng)過Linux系統(tǒng)路由的數(shù)據(jù)包(即當(dāng)iptables防火墻用于連接兩個網(wǎng)絡(luò),兩個網(wǎng)絡(luò)之間的數(shù)據(jù)包必須流經(jīng)該防火墻)。
PREROUTING鏈:用于修改目的地地址(DNAT)。
POSTROUTING鏈:用于修改源地址(SNAT)。
◆轉(zhuǎn)發(fā)和NAT的語義在iptables是獨立的。轉(zhuǎn)發(fā)數(shù)據(jù)包的功能是在filter表中通過使用FORWARD規(guī)則鏈來完成;而NAT功能是在nat通過使用PREROUTING、POSTROUTING規(guī)則鏈來完成?;煜@二個概念對它們的功能并沒有影響,但現(xiàn)在記住它們的區(qū)別是很重要的。轉(zhuǎn)發(fā)和NAT是二個不同的功能和技術(shù);轉(zhuǎn)發(fā)是一個路由功能,而NAT是在nat表中定義的一個轉(zhuǎn)換功能。
Iptables作網(wǎng)關(guān)NAT路由器,啟動的是NAT的地址偽裝功能SNAT/MASQUERADE,具體以公司NAT路由腳本/root/firewall.sh實例來說明下:
此腳本實現(xiàn)功能如下:
①因為是綁定mac地址上網(wǎng),企業(yè)內(nèi)部客戶機(jī)如綁定mac后可杜絕局域網(wǎng)內(nèi)ARP病毒;
②對局域網(wǎng)內(nèi)機(jī)器上網(wǎng)嚴(yán)格控制,每增加一臺工作用機(jī),就必須重新刷新NAT服務(wù)器的ip-mac對應(yīng)關(guān)系;嚴(yán)格杜絕了公司外來用機(jī)上網(wǎng)問題(有的員工周末加班時喜歡帶自己手提),在安全問題上做到防患于未然;
③配合NAT網(wǎng)關(guān)服務(wù)器的監(jiān)控軟件NTOP+iptraf,可以做到及時監(jiān)控每臺主機(jī)的流量情況,如發(fā)現(xiàn)流量異??杉皶r通知網(wǎng)管或行政處理;
④經(jīng)工作實際使用發(fā)現(xiàn),此腳本作NAT網(wǎng)關(guān)路由器時,可將公司10M電信光纖帶寬發(fā)揮得極致,即一個員工用迅雷,整個公司均打不開網(wǎng)頁。
⑤網(wǎng)關(guān)NAT服務(wù)器也適合做局域網(wǎng)的文件服務(wù)器,提供vsftpd,samba服務(wù)等;
⑥看過一些其它linux愛好者寫過的腳本,感覺沒此腳本精簡方便;這里感謝3158.com技術(shù)總監(jiān)唐老師提供技術(shù)性指導(dǎo)。
#!/bin/bash |
#為了方便調(diào)試工作,將防火墻規(guī)則寫成腳本形式方便調(diào)試。
|
#以mac.txt文件定義的主機(jī)ip及mac地址來代替原有arp對應(yīng)關(guān)系;每增加一臺工作用機(jī),就要重新運行一次此腳本。
#當(dāng)iptables對filter nat mangle任意一表進(jìn)行操作時,會自動加進(jìn)iptable_nat模塊;這個可以不寫
modprobe iptable_nat |
#加載狀態(tài)檢測機(jī)制,state模塊時用到,這個必寫
modprobe ip_conntrack |
#ip_conntrack_ftp是本機(jī)做FTP時用到的,這個看你的網(wǎng)關(guān)NAT用不用FTP,我這里用到了所以寫上了
modprobe ip_conntrack_ftp |
#ip_nat_ftp是通過本機(jī)的FTP時需要用到的,這個我系統(tǒng)用到了。
modprobe ip_nat_ftp |
#清除本網(wǎng)關(guān)的Filter、FORWARD、POSTROUTIG鏈的默認(rèn)規(guī)則
|
#將FORWARD的默認(rèn)策略設(shè)置為禁止一切(基于最安全原則考慮)
iptables -P FORWARD DROP |
#客戶機(jī)綁定mac地址才能上網(wǎng),這樣防止惡意增加IP在公司內(nèi)部上網(wǎng),引起不安全隱患。
|
#網(wǎng)關(guān)上有幾塊網(wǎng)卡,eth0接的是外網(wǎng)IP地址,eth1、eth2等對應(yīng)該局域網(wǎng)IP,因是租用了電信的光纖,不存在著ADSL上網(wǎng)情況。
|
/root/mac.txt部分內(nèi)容如下:
|
【.COM 獨家特稿,轉(zhuǎn)載請注明出處及作者!】
本文名稱:Iptables作網(wǎng)關(guān)時一種簡單的NAT使用方式
URL地址:http://www.dlmjj.cn/article/dhggigg.html


咨詢
建站咨詢
