您好,登錄后才能下訂單哦!
前言
本文旨在復(fù)習(xí)iptables FORWARD表的相關(guān)知識(shí),構(gòu)建簡(jiǎn)易實(shí)驗(yàn)環(huán)境,實(shí)現(xiàn)通過(guò)iptables構(gòu)建網(wǎng)絡(luò)防火墻。
iptables實(shí)現(xiàn)的防火墻功能:
主機(jī)防火墻:服務(wù)范圍為當(dāng)前主機(jī)
網(wǎng)絡(luò)防火墻:服務(wù)范圍為局域網(wǎng)絡(luò)
1. 實(shí)驗(yàn)拓?fù)?/span>
2. 主機(jī)規(guī)劃
主機(jī)名 | 角色 | 網(wǎng)卡 | IP地址 |
node1 | 內(nèi)網(wǎng)主機(jī) | vmnet2:eno16777736 | 192.168.11.2/24 |
node2 | 網(wǎng)關(guān)主機(jī) | vmnet2:eno16777736 橋接:eno33554984 | 192.168.11.1/24 172.16.52.52/16 |
node3 | 外網(wǎng)主機(jī) | 橋接:eno16777736 | 172.16.52.53/16 |
說(shuō)明:
node1 添加一條默認(rèn)網(wǎng)關(guān)指向192.168.11.1
route add default gw 192.168.11.1
node2 要開(kāi)啟ip_forward功能
sysctl -w net.ipv4.ip_forward=1
內(nèi)網(wǎng)要與外網(wǎng)通訊node3還要添加一條指向192.168.11.0/24網(wǎng)絡(luò)路由
route add -net 192.168.11.0/24 gw 172.16.52.52
3.測(cè)試實(shí)驗(yàn)環(huán)境
node1:開(kāi)啟httpd服務(wù),測(cè)試node3能否訪問(wèn)
[root@node3 ~]# ping 192.168.11.2 PING 192.168.11.2 (192.168.11.2) 56(84) bytes ofdata. 64 bytes from 192.168.11.2: icmp_seq=1 ttl=63 time=0.467 ms 64 bytes from 192.168.11.2: icmp_seq=2 ttl=63 time=0.502 ms
[root@node3 ~]# curl 192.168.11.2 <h2>node1 apache sit<h2
4. 構(gòu)建iptables網(wǎng)絡(luò)防火墻
4.1 拒絕所有請(qǐng)求
[root@node2 ~]# iptables -A FORWARD -j DROP
4.2 開(kāi)放所有ESTABLISED,RELATED的請(qǐng)求
[root@node2 ~]# iptables -I FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
4.3 開(kāi)放從內(nèi)網(wǎng)到外網(wǎng)所有為NEW的請(qǐng)求
[root@node2 ~]# iptables -I FORWARD 2 -s192.168.11.0/24 -m state --state NEW -j ACCEPT
[root@node2 ~]# iptables -vnL Chain INPUT (policy ACCEPT 113 packets, 9316 bytes) pkts bytes target prot opt in out source destination Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 37 3108 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 3 236 ACCEPT all -- * * 192.168.11.0/24 0.0.0.0/0 state NEW 696 58080 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 Chain OUTPUT (policy ACCEPT 44 packets, 4040 bytes) pkts bytes target prot opt in out source destination
現(xiàn)在內(nèi)網(wǎng)是可以訪問(wèn)外網(wǎng)的,但是外網(wǎng)進(jìn)來(lái)的所有請(qǐng)求都被拒絕
4.4 開(kāi)放從外到內(nèi)的21端口,22端口,23端口,80端口,狀態(tài)為NEW的請(qǐng)求
[root@node2 ~]# iptables -I FORWARD 3 -d 192.168.11.2 -p tcp -m multiport --dports 21:23,80 -m state --state NEW -j ACCEPT
node3:ftp測(cè)試訪問(wèn):
[root@node3 ~]# lftp 192.168.11.2 lftp 192.168.11.2:~> ls `ls' at 0 [Making data connection...]
RELATED狀態(tài)已經(jīng)追蹤,21號(hào)端口已經(jīng)開(kāi)放,為什么還是不能訪問(wèn)?因?yàn)?/span>nf_conntrack_ftp 模塊沒(méi)有加載
加載nf_conntrack_ftp 模塊:
[root@node2 ~]# modprobe nf_conntrack_ftp
[root@node3 ~]# lftp 192.168.11.2 lftp 192.168.11.2:~> ls drwxr-xr-x 2 0 0 6 Nov 20 2015 pub
總結(jié):網(wǎng)關(guān)防火墻iptables策略做的是白名單,默認(rèn)拒絕所有,只有開(kāi)放的服務(wù),外網(wǎng)才能訪問(wèn)。內(nèi)網(wǎng)訪問(wèn)外網(wǎng)沒(méi)有特殊情況一般為允許。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。