歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 使用iptables作為網絡防火牆構建安全的網絡環境

使用iptables作為網絡防火牆構建安全的網絡環境

日期:2017/2/28 13:53:07   编辑:Linux教程

前言

一般情況下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主機,其他主機皆關閉SElinuxiptables

實驗步驟

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鏈接的狀態,使數據連接得以建立
第三條意思是狀態使ESTABLISHEDRELATED允許通過,指的是已建立鏈接或者追蹤鏈接建立能夠通過
第四條意思是允許訪問目標地址為192.168.2.0網段,端口為21/TCP80/TCP狀態為NEW能夠通過,指的是新的鏈接能通過
第五條是為DNS查詢而添加的規則,指的是允許訪問目標地址為192.168.2.3的地址且目標端口為53/UDPNEW`狀態能夠通過,同指新的鏈接能夠通過

再次針對不同服務器進行”非法”訪問

大家看!現在已經不能對服務器進行非法訪問了

測試服務器是否可訪問

ftp服務能正常訪問



web服務能正常訪問


dns服務能正常訪問

總結

本文只做了一些簡單的限制,不過足以限制用戶只能訪問”該訪問”的服務,這當然不能運用於生產環境中,畢竟設計簡陋,大家笑笑就好

Copyright © Linux教程網 All Rights Reserved