2021-05-12 14:32:11
使用iptables作為網路防火牆構建安全的網路環境
前言
一般情況下
iptables
只作為主機防火牆使用,但是在特殊情況下也可以使用iptables
對整個網路進行流量控制和網路安全防護等功能,在本文中,我們使用iptables
對三台伺服器的安全進行安全防護
網路防火牆的優勢
網路防火牆相比於主機防火牆而言,範圍更大,不用對網路內的各主機各自設定防火牆規則就可以保證其安全性,但是必須在網路的進出口才能對出入封包進行限制
實驗拓撲圖
實驗環境
主機 | IP地址 | 功用 |
---|---|---|
fire.anyisalin.com | 192.168.2.2,192.168.1.112 | 控制整個網段的資料包文的流入流出及過濾 |
ns.anyisalin.com | 192.168.2.3 | 提供DNS服務 |
ftp.anyisalin.com | 192.168.2.5 | 提供FTP服務 |
www.anyisalin.com | 192.168.2.4 | 提供web服務 |
除了fire
主機,其他主機皆關閉SElinux
和iptables
實驗步驟
FTP
,WEB
,DNS
伺服器安裝設定這裡就不寫了,有興趣的看我以前的部落格AnyISalIn的文章
防火牆未設定前對所有伺服器的測試
以下操作在192.168.1.103進行
dns
服務能夠正常使用
ftp
服務能夠正常使用
web
服務能夠正常使用
針對不同伺服器進行”非法”存取
我們對
dns,web.ftp
伺服器分別進行ping
,ssh
等操作
定義網路防火牆規則
大家應該夠知道,伺服器開放的埠越多就越危險,所以我們在網路防火牆對其進行規則定義
[root@fire ~]# iptables -P FORWARD DROP #設定FORWARD鏈預設策略為DROP
[root@fire ~]# modprobe nf_conntrack_ftp #裝載追蹤FTP被動連線模組
[root@fire ~]# iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
[root@fire ~]# iptables -A FORWARD -d 192.168.2.0/24 -p tcp -m multiport --dports 21,80 -m state --state NEW -j ACCEPT
[root@fire ~]# iptables -A FORWARD -d 192.168.2.3 -p udp --dport 53 -m state --state NEW -j ACCEPT
解釋一下上面幾條規則的作用
第一條規則將FORWARD
鏈的預設策略設定為DROP
,那麼預設所有的封包將不能通過FORWARD
的轉發
第二條規則狀態nf_conntrack_ftp
模組,使得iptables
能夠追蹤FTP
連結的狀態,使資料連線得以建立
第三條意思是狀態使ESTABLISHED
和RELATED
允許通過,指的是已建立連結或者追蹤連結建立能夠通過
第四條意思是允許存取目標地址為192.168.2.0
網段,埠為21/TCP
和80/TCP
狀態為NEW能
夠通過,指的是新的連結能通過
第五條是為DNS
查詢而新增的規則,指的是允許存取目標地址為192.168.2.3的地址且目標埠為
53/UDP的
NEW`狀態能夠通過,同指新的連結能夠通過
再次針對不同伺服器進行”非法”存取
大家看!現在已經不能對伺服器進行非法存取了
測試伺服器是否可存取
ftp
服務能正常存取
web
服務能正常存取
dns
服務能正常存取
總結
本文只做了一些簡單的限制,不過足以限制使用者只能存取”該存取”的服務,這當然不能運用於生產環境中,畢竟設計簡陋,大家笑笑就好
更多iptables相關教學見以下內容:
CentOS 7.0關閉預設防火牆啟用iptables防火牆 http://www.linuxidc.com/Linux/2015-05/117473.htm
iptables使用範例詳解 http://www.linuxidc.com/Linux/2014-03/99159.htm
Linux防火牆iptables詳細教學 http://www.linuxidc.com/Linux/2013-07/87045.htm
iptables的備份、恢復及防火牆指令碼的基本使用 http://www.linuxidc.com/Linux/2013-08/88535.htm
Linux下防火牆iptables用法規則詳解 http://www.linuxidc.com/Linux/2012-08/67952.htm
Linux下iptables防火牆設定 http://www.linuxidc.com/Linux/2015-10/123843.htm
本文永久更新連結地址:http://www.linuxidc.com/Linux/2016-04/130032.htm
相關文章