版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
項(xiàng)目3
配置與管理防火墻《網(wǎng)絡(luò)服務(wù)器搭建、配置與管理Linux(麒麟/歐拉)》“十四五”職業(yè)教育國家規(guī)劃教材能力要求CAPACITY了解防火墻的分類及工作原理。0103掌握SNAT。02掌握DNAT。思政導(dǎo)入IDEOLOGY明確職業(yè)技術(shù)崗位所需的職業(yè)規(guī)范和精神,樹立社會(huì)主義核心價(jià)值觀!思政目標(biāo)IDEOLOGY
“大學(xué)之道,在明明德,在親民,在止于至善?!薄啊呱窖鲋梗靶行兄??!m不能至,然心鄉(xiāng)往之”。了解計(jì)算機(jī)的主奠基人——華羅庚教授,知悉讀大學(xué)的真正含義,以德化人,激發(fā)學(xué)生的科學(xué)精神和愛國情懷。思政內(nèi)容IDEOLOGY在我國計(jì)算機(jī)發(fā)展的歷史長河中,有一位做出突出貢獻(xiàn)的科學(xué)家,他也是中國計(jì)算機(jī)的主奠基者,你知道他是誰嗎?他就是華羅庚教授—我國計(jì)算技術(shù)的奠基人和主要的開拓者之一。華羅庚教授在數(shù)學(xué)上的造詣和成就深受世界科學(xué)家的贊賞。在美國任訪問研究員時(shí),華羅庚教授的心里就已經(jīng)開始勾畫我國電子計(jì)算機(jī)事業(yè)的藍(lán)圖了!項(xiàng)目知識(shí)準(zhǔn)備項(xiàng)目設(shè)計(jì)與準(zhǔn)備項(xiàng)目實(shí)施項(xiàng)目實(shí)錄:配置與管理firewalld防火墻內(nèi)容導(dǎo)航CONTENTS一、項(xiàng)目知識(shí)準(zhǔn)備防火墻概述通常所說的網(wǎng)絡(luò)防火墻是套用了古代防火墻的喻義,它指的是隔離在本地網(wǎng)絡(luò)與外界網(wǎng)絡(luò)之間的一道防御系統(tǒng)。防火墻可以使內(nèi)部網(wǎng)絡(luò)與互聯(lián)網(wǎng)之間或者與其他外部網(wǎng)絡(luò)間互相隔離、限制網(wǎng)絡(luò)互訪,以此來保護(hù)內(nèi)部網(wǎng)絡(luò)。
防火墻的分類方法多種多樣,不過從傳統(tǒng)意義上講,防火墻大致可以分為三大類,分別是“包過濾”“應(yīng)用代理”“狀態(tài)檢測(cè)”。一、項(xiàng)目知識(shí)準(zhǔn)備iptables與firewalld通常所說的網(wǎng)絡(luò)防火墻是套用了古代的防火墻的喻義,它指的是隔離在本地網(wǎng)絡(luò)與外界網(wǎng)絡(luò)之間的一道防御系統(tǒng)。防火墻可以使內(nèi)部網(wǎng)絡(luò)與互聯(lián)網(wǎng)之間或者與其他外部網(wǎng)絡(luò)間互相隔離、限制網(wǎng)絡(luò)互訪,以此來保護(hù)內(nèi)部網(wǎng)絡(luò)。
早期的Linux系統(tǒng)采用ipfwadm作為防火墻,但在2.2.0版本中其被ipchains取代。Linux2.4發(fā)布后,netfilter/iptables數(shù)據(jù)包過濾系統(tǒng)正式使用。它引入了很多重要的改進(jìn),比如基于狀態(tài)的功能、基于任何傳輸控制協(xié)議(TransmissionControlProtocol,TCP)標(biāo)記和MAC地址的包過濾功能、更靈活的配置和記錄功能、強(qiáng)大且簡(jiǎn)單的NAT功能和透明代理功能等,然而,最重要的變化是引入了模塊化的架構(gòu)方式。這使得iptables的運(yùn)用和功能擴(kuò)展更加方便、靈活。一、項(xiàng)目知識(shí)準(zhǔn)備iptables與firewalld通常所說的網(wǎng)絡(luò)防火墻是套用了古代的防火墻的喻義,它指的是隔離在本地網(wǎng)絡(luò)與外界網(wǎng)絡(luò)之間的一道防御系統(tǒng)。防火墻可以使內(nèi)部網(wǎng)絡(luò)與互聯(lián)網(wǎng)之間或者與其他外部網(wǎng)絡(luò)間互相隔離、限制網(wǎng)絡(luò)互訪,以此來保護(hù)內(nèi)部網(wǎng)絡(luò)。
在KylinOS中,firewalld防火墻取代了iptables防火墻。實(shí)際上,iptables與firewalld都不是真正的防火墻,它們都只是用來定義防火墻策略的防火墻管理工具,或者說,它們只是一種服務(wù)。iptables服務(wù)會(huì)把配置好的防火墻策略交由內(nèi)核層面的netfilter網(wǎng)絡(luò)過濾器來處理,而firewalld服務(wù)則把配置好的防火墻策略交由內(nèi)核層面的iptables包過濾框架來處理。換句話說,當(dāng)前在Linux系統(tǒng)中其實(shí)存在多個(gè)防火墻管理工具,旨在方便運(yùn)維人員管理Linux系統(tǒng)中的防火墻策略,我們只需要配置妥當(dāng)其中的一個(gè)就足夠了。雖然這些工具各有優(yōu)劣,但它們?cè)诜阑饓Σ呗缘呐渲盟悸飞鲜潜3忠恢碌摹R?、?xiàng)目知識(shí)準(zhǔn)備NAT基礎(chǔ)知識(shí)通常所說的網(wǎng)絡(luò)防火墻是套用了古代的防火墻的喻義,它指的是隔離在本地網(wǎng)絡(luò)與外界網(wǎng)絡(luò)之間的一道防御系統(tǒng)。防火墻可以使內(nèi)部網(wǎng)絡(luò)與互聯(lián)網(wǎng)之間或者與其他外部網(wǎng)絡(luò)間互相隔離、限制網(wǎng)絡(luò)互訪,以此來保護(hù)內(nèi)部網(wǎng)絡(luò)。
1. NAT的主要功能NAT主要具有以下功能。(1)從Intranet傳出的數(shù)據(jù)包由NAT將它們的專用地址轉(zhuǎn)換為公用地址。(2)從Internet傳入的數(shù)據(jù)包由NAT將它們的公用地址轉(zhuǎn)換為專用地址。(3)支持多重服務(wù)器和負(fù)載均衡。(4)實(shí)現(xiàn)透明代理。
這樣在內(nèi)網(wǎng)中,計(jì)算機(jī)使用未注冊(cè)的專用IP地址,而在與外網(wǎng)通信時(shí),計(jì)算機(jī)使用注冊(cè)的公用IP地址,大大降低了連接成本。同時(shí)NAT也起到將內(nèi)網(wǎng)隱藏起來、保護(hù)內(nèi)網(wǎng)的作用,因?yàn)閷?duì)外部用戶來說,只有使用公用IP地址的NAT是可見的,這類似于防火墻的安全措施。一、項(xiàng)目知識(shí)準(zhǔn)備NAT基礎(chǔ)知識(shí)通常所說的網(wǎng)絡(luò)防火墻是套用了古代的防火墻的喻義,它指的是隔離在本地網(wǎng)絡(luò)與外界網(wǎng)絡(luò)之間的一道防御系統(tǒng)。防火墻可以使內(nèi)部網(wǎng)絡(luò)與互聯(lián)網(wǎng)之間或者與其他外部網(wǎng)絡(luò)間互相隔離、限制網(wǎng)絡(luò)互訪,以此來保護(hù)內(nèi)部網(wǎng)絡(luò)。
2.NAT的工作過程(1)客戶端將數(shù)據(jù)包發(fā)送給運(yùn)行NAT的計(jì)算機(jī)。(2)NAT將數(shù)據(jù)包中的端口號(hào)和專用IP地址轉(zhuǎn)換成自己的端口號(hào)和公用IP地址,然后將數(shù)據(jù)包發(fā)送給外網(wǎng)的目的主機(jī),同時(shí)在映像表中記錄一個(gè)跟蹤信息,以便向客戶端發(fā)送回答信息。(3)外網(wǎng)發(fā)送回答信息給NAT。(4)NAT將收到的數(shù)據(jù)包中的端口號(hào)和公用IP地址轉(zhuǎn)換為客戶端的端口號(hào)和內(nèi)網(wǎng)使用的專用IP地址并轉(zhuǎn)發(fā)給客戶端。一、項(xiàng)目知識(shí)準(zhǔn)備NAT基礎(chǔ)知識(shí)通常所說的網(wǎng)絡(luò)防火墻是套用了古代的防火墻的喻義,它指的是隔離在本地網(wǎng)絡(luò)與外界網(wǎng)絡(luò)之間的一道防御系統(tǒng)。防火墻可以使內(nèi)部網(wǎng)絡(luò)與互聯(lián)網(wǎng)之間或者與其他外部網(wǎng)絡(luò)間互相隔離、限制網(wǎng)絡(luò)互訪,以此來保護(hù)內(nèi)部網(wǎng)絡(luò)。
3.NAT的分類(1)源NAT(SourceNAT,SNAT)是指改變第一個(gè)包的源IP地址。SNAT會(huì)在包被送出之前的“最后一刻”做好路由后(Post-Routing)的動(dòng)作。Linux中的IP偽裝(MASQUERADE)就是SNAT的一種特殊形式。(2)目的NAT(DestinationNAT,DNAT)是指改變第一個(gè)包的目的IP地址。DNAT總是在包進(jìn)入后立刻進(jìn)行預(yù)路由(Pre-Routing)動(dòng)作。端口轉(zhuǎn)發(fā)、負(fù)載均衡和透明代理均屬于DNAT。一、項(xiàng)目知識(shí)準(zhǔn)備SELinux通常所說的網(wǎng)絡(luò)防火墻是套用了古代的防火墻的喻義,它指的是隔離在本地網(wǎng)絡(luò)與外界網(wǎng)絡(luò)之間的一道防御系統(tǒng)。防火墻可以使內(nèi)部網(wǎng)絡(luò)與互聯(lián)網(wǎng)之間或者與其他外部網(wǎng)絡(luò)間互相隔離、限制網(wǎng)絡(luò)互訪,以此來保護(hù)內(nèi)部網(wǎng)絡(luò)。
安全增強(qiáng)型Linux(Security-EnhancedLinux,SELinux)是美國國家安全局(NationalSecurityAgency,NSA)對(duì)于強(qiáng)制訪問控制的實(shí)現(xiàn),是Linux歷史上杰出的新安全子系統(tǒng)。NSA在Linux社區(qū)的幫助下開發(fā)了一種訪問控制體系,在這種訪問控制體系的限制下,進(jìn)程只能訪問那些在它的任務(wù)中所需的文件。2.6及以上版本的Linux內(nèi)核都集成了SELinux模塊。學(xué)好SELinux是每個(gè)Linux系統(tǒng)管理員的必修課。一、項(xiàng)目知識(shí)準(zhǔn)備SELinux通常所說的網(wǎng)絡(luò)防火墻是套用了古代的防火墻的喻義,它指的是隔離在本地網(wǎng)絡(luò)與外界網(wǎng)絡(luò)之間的一道防御系統(tǒng)。防火墻可以使內(nèi)部網(wǎng)絡(luò)與互聯(lián)網(wǎng)之間或者與其他外部網(wǎng)絡(luò)間互相隔離、限制網(wǎng)絡(luò)互訪,以此來保護(hù)內(nèi)部網(wǎng)絡(luò)。
1.DACLinux上傳統(tǒng)的訪問控制標(biāo)準(zhǔn)是自主訪問控制(DiscretionaryAccessControl,DAC)。在這種形式下,一個(gè)軟件或守護(hù)進(jìn)程以用戶ID(UserID,UID)或設(shè)置用戶ID(SetUserID,SUID)的身份運(yùn)行,并且擁有該用戶的目標(biāo)(文件、套接字,以及其他進(jìn)程)權(quán)限。這使得惡意代碼很容易運(yùn)行在特定權(quán)限之下,從而取得訪問關(guān)鍵子系統(tǒng)的權(quán)限。而最致命的問題是,root用戶不受任何管制,其可以無限制地訪問系統(tǒng)上的任何資源。一、項(xiàng)目知識(shí)準(zhǔn)備SELinux通常所說的網(wǎng)絡(luò)防火墻是套用了古代的防火墻的喻義,它指的是隔離在本地網(wǎng)絡(luò)與外界網(wǎng)絡(luò)之間的一道防御系統(tǒng)。防火墻可以使內(nèi)部網(wǎng)絡(luò)與互聯(lián)網(wǎng)之間或者與其他外部網(wǎng)絡(luò)間互相隔離、限制網(wǎng)絡(luò)互訪,以此來保護(hù)內(nèi)部網(wǎng)絡(luò)。
2.MAC在使用了SELinux的操作系統(tǒng)中,決定一個(gè)資源是否能被訪問的因素除了“某個(gè)資源是否擁有對(duì)應(yīng)的用戶權(quán)限(讀、寫、執(zhí)行)”之外,還需要判斷每一類進(jìn)程是否擁有對(duì)某一類資源的訪問權(quán)限。這樣即使進(jìn)程是以root用戶身份運(yùn)行的,也需要判斷這個(gè)進(jìn)程的類型以及允許訪問的資源類型,才能決定是否允許訪問某個(gè)資源,進(jìn)程的活動(dòng)空間也可以被壓縮到最小。即使是以root用戶身份運(yùn)行的服務(wù)進(jìn)程,一般也只能訪問到它需要的資源。即使程序出了漏洞,影響范圍也只在其允許訪問的資源范圍內(nèi),安全性大大提高。這種權(quán)限管理機(jī)制的主體是進(jìn)程,這種機(jī)制稱為強(qiáng)制訪問控制(MandatoryAccessControl,MAC)。SELinux實(shí)際上就是MAC理論最重要的實(shí)現(xiàn)之一,并且SELinux從架構(gòu)上允許DAC和MAC兩種機(jī)制都起作用。一、項(xiàng)目知識(shí)準(zhǔn)備SELinux通常所說的網(wǎng)絡(luò)防火墻是套用了古代的防火墻的喻義,它指的是隔離在本地網(wǎng)絡(luò)與外界網(wǎng)絡(luò)之間的一道防御系統(tǒng)。防火墻可以使內(nèi)部網(wǎng)絡(luò)與互聯(lián)網(wǎng)之間或者與其他外部網(wǎng)絡(luò)間互相隔離、限制網(wǎng)絡(luò)互訪,以此來保護(hù)內(nèi)部網(wǎng)絡(luò)。
3.SELinux工作機(jī)制與SELinux相關(guān)的概念如下。(1)主體(Subject)。(2)目標(biāo)(Object)。(3)策略(Policy)。(4)模式(Mode)。當(dāng)一個(gè)主體(如一個(gè)程序)嘗試訪問一個(gè)目標(biāo)(如一個(gè)文件)時(shí),內(nèi)核中的SELinux安全服務(wù)器(SELinuxSecurityServer)將在策略數(shù)據(jù)庫(PolicyDatabase)中運(yùn)行一個(gè)檢查。該檢查基于當(dāng)前的模式,如果SELinux安全服務(wù)器授予權(quán)限,該主體就能夠訪問該目標(biāo);如果SELinux安全服務(wù)器未授予權(quán)限,就會(huì)在/var/log/messages中記錄一條拒絕信息。項(xiàng)目知識(shí)準(zhǔn)備項(xiàng)目設(shè)計(jì)與準(zhǔn)備項(xiàng)目實(shí)施項(xiàng)目實(shí)錄:配置與管理firewalld防火墻內(nèi)容導(dǎo)航CONTENTS二、項(xiàng)目設(shè)計(jì)與準(zhǔn)備項(xiàng)目設(shè)計(jì)與準(zhǔn)備部署firewalld和NAT應(yīng)滿足下列需求,完成的任務(wù)如下。(1)服務(wù)器安裝好企業(yè)版Linux網(wǎng)絡(luò)操作系統(tǒng),并且必須保證常用服務(wù)正常工作??蛻舳耸褂肔inux或Windows網(wǎng)絡(luò)操作系統(tǒng)。服務(wù)器和客戶端能夠通過網(wǎng)絡(luò)進(jìn)行通信。(2)或者利用虛擬機(jī)設(shè)置網(wǎng)絡(luò)環(huán)境。(3)3臺(tái)安裝好KylinOS的計(jì)算機(jī)。本項(xiàng)目要完成的任務(wù)如下。(1) 安裝與配置firewalld。(2) 配置SNAT和DNAT??梢允褂肰MwareWorkstation的“克隆”技術(shù)快速安裝需要的Linux客戶端。項(xiàng)目知識(shí)準(zhǔn)備項(xiàng)目設(shè)計(jì)與準(zhǔn)備項(xiàng)目實(shí)施項(xiàng)目實(shí)錄:配置與管理firewalld防火墻內(nèi)容導(dǎo)航CONTENTS三、項(xiàng)目實(shí)施任務(wù)3-1使用firewalld服務(wù)KylinOS集成了多款防火墻管理工具,其中firewalld提供了支持在網(wǎng)絡(luò)/防火墻區(qū)域(zone)定義網(wǎng)絡(luò)連接以及接口安全等級(jí)的動(dòng)態(tài)防火墻管理工具—Linux操作系統(tǒng)的動(dòng)態(tài)防火墻管理器(DynamicFirewallManagerofLinuxSystems)。Linux操作系統(tǒng)的動(dòng)態(tài)防火墻管理器擁有基于命令行界面(CommandLineInterface,CLI)和基于圖形用戶界面(GraphicalUserInterface,GUI)的兩種管理方式。三、項(xiàng)目實(shí)施任務(wù)3-1使用firewalld服務(wù)1.使用終端管理工具命令行終端是一種極富效率的運(yùn)行工具,firewall-cmd命令是firewalld防火墻管理工具的CLI版本。三、項(xiàng)目實(shí)施任務(wù)3-1使用firewalld服務(wù)(2)使用終端管理工具實(shí)例。①查看firewalld服務(wù)當(dāng)前狀態(tài)和使用的區(qū)域。[root@Server01~]#firewall-cmd--state #查看防火墻狀態(tài)[root@Server01
~]#
systemctl
restart
firewalld[root@Server01
~]#
firewall-cmd--get-default-zone #查看默認(rèn)區(qū)域public②查詢防火墻生效ens33
網(wǎng)卡在firewalld服務(wù)中的區(qū)域。[root@Server01
~]#
firewall-cmd--get-active-zones #查看當(dāng)前防火墻中生效的區(qū)域[root@Server01
~]#
firewall-cmd--set-default-zone=trusted #設(shè)定默認(rèn)區(qū)域三、項(xiàng)目實(shí)施任務(wù)3-1使用firewalld服務(wù)(2)使用終端管理工具實(shí)例。③把firewalld服務(wù)中ens33
網(wǎng)卡的默認(rèn)區(qū)域修改為external,并在系統(tǒng)重啟后生效。分別查看運(yùn)行時(shí)模式與永久模式下的區(qū)域名稱。[root@Server01
~]#
firewall-cmd--list-all--zone=work #查看指定區(qū)域的火墻策略[root@Server01
~]#
firewall-cmd
--permanent
--zone=external
--change-interface=ens33success[root@Server01
~]#
firewall-cmd
--get-zone-of-interface=ens33trusted[root@Server01
~]#
firewall-cmd
--permanent
--get-zone-of-interface=ens33no
zone④把firewalld服務(wù)的當(dāng)前默認(rèn)區(qū)域設(shè)置為public。⑤啟動(dòng)/關(guān)閉firewalld服務(wù)的應(yīng)急狀況模式,阻斷一切網(wǎng)絡(luò)連接。三、項(xiàng)目實(shí)施任務(wù)3-1使用firewalld服務(wù)(2)使用終端管理工具實(shí)例。④把firewalld服務(wù)的當(dāng)前默認(rèn)區(qū)域設(shè)置為public。[root@Server01~]#firewall-cmd--set-default-zone=public[root@Server01~]#firewall-cmd--get-default-zonepublic⑤啟動(dòng)/關(guān)閉firewalld服務(wù)的應(yīng)急狀況模式,阻斷一切網(wǎng)絡(luò)連接。[root@Server01
~]#
firewall-cmd
--panic-onsuccess[root@Server01
~]#
firewall-cmd
--panic-offsuccess三、項(xiàng)目實(shí)施任務(wù)3-1使用firewalld服務(wù)(2)使用終端管理工具實(shí)例。⑥查詢public區(qū)域是否允許請(qǐng)求ssh和https的流量。[root@Server01
~]#
firewall-cmd
--zone=public
--query-service=sshyes[root@Server01
~]#
firewall-cmd
--zone=public
--query-service=httpsno⑦把firewalld服務(wù)中請(qǐng)求https的流量設(shè)置為永久允許,并立即生效。[root@Server01~]#firewall-cmd--get-services #查看所有可以設(shè)定的服務(wù)[root@Server01~]#firewall-cmd--zone=public--add-service=https[root@Server01~]#firewall-cmd--permanent--zone=public--add-service=https[root@Server01~]#firewall-cmd--reload[root@Server01~]#firewall-cmd--list-all #查看生效的防火墻策略三、項(xiàng)目實(shí)施任務(wù)3-1使用firewalld服務(wù)2.使用圖形管理工具(1) 啟動(dòng)圖形界面的firewalld。在終端執(zhí)行命令“firewall-config”或者選擇“開始”→“所有程序”→“系統(tǒng)工具”→“防火墻”命令,打開如圖所示的firewall-config界面,其功能具體如下。①設(shè)置運(yùn)行時(shí)模式或永久模式。②顯示可選的區(qū)域集合列表。③顯示常用的系統(tǒng)服務(wù)列表。④顯示當(dāng)前正在使用的區(qū)域。⑤管理當(dāng)前被選中區(qū)域中的服務(wù)。⑥管理當(dāng)前被選中區(qū)域中的端口。⑦開啟或關(guān)閉SNAT技術(shù)。⑧設(shè)置端口轉(zhuǎn)發(fā)策略。⑨控制請(qǐng)求互聯(lián)網(wǎng)控制報(bào)文協(xié)議(InternetControlMessageProtocol,ICMP)服務(wù)的流量。三、項(xiàng)目實(shí)施任務(wù)3-1使用firewalld服務(wù)2.使用圖形管理工具(2)將當(dāng)前區(qū)域中請(qǐng)求http服務(wù)的流量策略設(shè)置為允許,但僅限當(dāng)前生效,具體配置如圖所示。三、項(xiàng)目實(shí)施任務(wù)3-2設(shè)置SELinux的模式SELinux有3個(gè)模式(可以由用戶設(shè)置),這些模式將規(guī)定SELinux在主體請(qǐng)求時(shí)如何應(yīng)對(duì)。(1) enforcing(強(qiáng)制):強(qiáng)制執(zhí)行SELinux策略,基于SELinux策略規(guī)則授予或拒絕授予主體對(duì)目標(biāo)的訪問權(quán)限。(2) permissive(寬容):不強(qiáng)制執(zhí)行SELinux策略,沒有實(shí)際拒絕訪問,但會(huì)有拒絕信息寫入日志文件/var/log/messages。(3) disabled(禁用):完全禁用SELinux,使SELinux不起作用。三、項(xiàng)目實(shí)施任務(wù)3-2設(shè)置SELinux的模式1.使用配置文件設(shè)置SELinux的模式與SELinux相關(guān)的文件主要有以下3類。(1) /etc/selinux/config和/etc/sysconfig/selinux:主要用于打開和關(guān)閉SELinux。(2) /etc/selinux/targeted/contexts:主要用于對(duì)contexts的配置。contexts是SELinux的安全上下文,是SELinux實(shí)現(xiàn)安全訪問的重要功能。(3) /etc/selinux/targeted/policy:SELinux策略文件。對(duì)于大多數(shù)用戶而言,直接修改/etc/selinux/config和/etc/sysconfig/selinux文件來控制是否啟用SELinux就可以了。另外,提醒讀者,因?yàn)?etc/sysconfig/selinux文件是/etc/selinux/config的鏈接文件,所以只要修改一個(gè)文件的內(nèi)容,另一個(gè)文件就會(huì)同步改變。三、項(xiàng)目實(shí)施任務(wù)3-2設(shè)置SELinux的模式【例3-1】查看/etc/selinux/config文件。[root@Server01~]#cat/etc/selinux/config–n【例3-2】查看SELinux的模式[root@Server01~]#sestatusSELinuxstatus: disabled項(xiàng)目知識(shí)準(zhǔn)備項(xiàng)目設(shè)計(jì)與準(zhǔn)備項(xiàng)目實(shí)施項(xiàng)目實(shí)錄:配置與管理firewalld防火墻內(nèi)容導(dǎo)航CONTENTS項(xiàng)目4
配置與管理代理服務(wù)器《網(wǎng)絡(luò)服務(wù)器搭建、配置與管理Linux(麒麟/歐拉)》“十四五”職業(yè)教育國家規(guī)劃教材能力要求CAPACITY了解代理服務(wù)器的基本知識(shí)。0103了解文件權(quán)限設(shè)置內(nèi)容。02掌握squid代理服務(wù)器的配置方法。思政導(dǎo)入IDEOLOGY了解中國國家頂級(jí)域名“CN”,了解中國互聯(lián)網(wǎng)發(fā)展中的大事和大師,激發(fā)學(xué)生的自豪感。思政目標(biāo)IDEOLOGY“古之立大事者,不惟有超世之才,亦必有堅(jiān)忍不拔之志”,鞭策學(xué)生努力學(xué)習(xí)。思政內(nèi)容IDEOLOGY你知道我國是哪一年真正擁有了Internet嗎?中國國家頂級(jí)域名“CN”服務(wù)器是哪一年完成設(shè)置的呢?1994年4月20日,一條64kbit/s的國際專線從中國科學(xué)院計(jì)算機(jī)網(wǎng)絡(luò)信息中心通過美國Sprint公司連入Internet,實(shí)現(xiàn)了中國與Internet的全功能連接。從此我國被國際上正式承認(rèn)為真正擁有全功能互聯(lián)網(wǎng)的國家。此事被我國新聞界評(píng)為1994年我國十大科技新聞之一,被國家統(tǒng)計(jì),公報(bào)列為我國1994年重大科技成就之一。項(xiàng)目知識(shí)準(zhǔn)備項(xiàng)目設(shè)計(jì)與準(zhǔn)備項(xiàng)目實(shí)施項(xiàng)目實(shí)錄:配置與管理代理服務(wù)器內(nèi)容導(dǎo)航CONTENTS一、項(xiàng)目知識(shí)準(zhǔn)備代理服務(wù)器的工作原理當(dāng)客戶端在瀏覽器中設(shè)置好代理服務(wù)器后,所有使用瀏覽器訪問Internet站點(diǎn)的請(qǐng)求都不會(huì)被直接發(fā)給目的主機(jī),而是首先被發(fā)送至代理服務(wù)器,代理服務(wù)器接收到客戶端的請(qǐng)求以后,由代理服務(wù)器向目的主機(jī)發(fā)出請(qǐng)求,并接收目的主機(jī)返回的數(shù)據(jù),將其存放在代理服務(wù)器的硬盤,然后由代理服務(wù)器將客戶端請(qǐng)求的數(shù)據(jù)轉(zhuǎn)發(fā)給客戶端。代理服務(wù)器的工作原理如圖所示。一、項(xiàng)目知識(shí)準(zhǔn)備代理服務(wù)器的工作原理①當(dāng)客戶端A對(duì)Web服務(wù)器提出請(qǐng)求時(shí),此請(qǐng)求會(huì)首先被發(fā)送到代理服務(wù)器。②代理服務(wù)器接收到客戶端A的請(qǐng)求后,檢查緩存中是否存有客戶端A需要的數(shù)據(jù)。③如果代理服務(wù)器沒有客戶端A請(qǐng)求的數(shù)據(jù),則它將向Web服務(wù)器提交請(qǐng)求。④Web服務(wù)器響應(yīng)請(qǐng)求的數(shù)據(jù)。⑤代理服務(wù)器從Web服務(wù)器獲取數(shù)據(jù)后,將其保存至本地的緩存,以備以后查詢使用。⑥代理服務(wù)器向客戶端A轉(zhuǎn)發(fā)Web服務(wù)器的數(shù)據(jù)。⑦客戶端B訪問Web服務(wù)器,向代理服務(wù)器發(fā)出請(qǐng)求。⑧代理服務(wù)器查找緩存記錄,確認(rèn)已經(jīng)存在Web服務(wù)器的相關(guān)數(shù)據(jù)。⑨代理服務(wù)器直接回應(yīng)查詢到的信息,而不需要再去Web服務(wù)器查詢,從而節(jié)約網(wǎng)絡(luò)流量,提高訪問速度。一、項(xiàng)目知識(shí)準(zhǔn)備代理服務(wù)器的作用(1)提高訪問速度。因?yàn)橛脩粽?qǐng)求的數(shù)據(jù)被存于代理服務(wù)器的硬盤中,所以下次這個(gè)用戶或其他用戶再請(qǐng)求相同目的站點(diǎn)的數(shù)據(jù)時(shí),會(huì)直接從代理服務(wù)器的硬盤中讀取,代理服務(wù)器起到了緩存的作用,提高了訪問速度。當(dāng)熱門站點(diǎn)有很多用戶訪問時(shí),代理服務(wù)器的優(yōu)勢(shì)更為明顯。(2)限制用戶訪問。因?yàn)樗惺褂么矸?wù)器的用戶都必須通過代理服務(wù)器訪問遠(yuǎn)程站點(diǎn),所以在代理服務(wù)器上可以設(shè)置相應(yīng)的限制,以過濾或屏蔽某些信息。這是局域網(wǎng)網(wǎng)關(guān)限制局域網(wǎng)用戶訪問范圍常用的辦法,也是局域網(wǎng)用戶不能瀏覽某些網(wǎng)站的原因。撥號(hào)用戶如果使用代理服務(wù)器,則同樣必須服從代理服務(wù)器的訪問限制。(3) 提高安全性。無論是聊天還是瀏覽網(wǎng)站,目的網(wǎng)站只能知道使用的代理服務(wù)器的相關(guān)信息,而無法得知客戶端的真實(shí)IP地址,從而提高了用戶的安全性。項(xiàng)目知識(shí)準(zhǔn)備項(xiàng)目設(shè)計(jì)與準(zhǔn)備項(xiàng)目實(shí)施項(xiàng)目實(shí)錄:配置與管理代理服務(wù)器內(nèi)容導(dǎo)航CONTENTS二、項(xiàng)目設(shè)計(jì)與準(zhǔn)備項(xiàng)目設(shè)計(jì)與準(zhǔn)備部署squid代理服務(wù)器應(yīng)滿足下列需求。(1)安裝好企業(yè)版Linux網(wǎng)絡(luò)操作系統(tǒng),并且必須保證常用服務(wù)正常工作??蛻舳耸褂肔inux或Windows網(wǎng)絡(luò)操作系統(tǒng)。服務(wù)器和客戶端能夠通過網(wǎng)絡(luò)進(jìn)行通信。(2)或者利用虛擬機(jī)設(shè)置網(wǎng)絡(luò)環(huán)境。模擬互聯(lián)網(wǎng)的真實(shí)情況,需要3臺(tái)虛擬機(jī),Linux服務(wù)器和客戶端的配置信息如表所示。主機(jī)名操作系統(tǒng)IP
地址角色內(nèi)網(wǎng)服務(wù)器:Server01Kylin
V10/24(VMnet1)Web
服務(wù)器、firewalld
squid
代理服務(wù)器:Server02
Kylin
V10IP
地址1
:0/24(VMnet1)IP
地址2:12/24(VMnet8)
firewalld、squid外網(wǎng)Linux
客戶端:Client1Kylin
V1013/24(VMnet8)Web
服務(wù)器、firewalld項(xiàng)目知識(shí)準(zhǔn)備項(xiàng)目設(shè)計(jì)與準(zhǔn)備項(xiàng)目實(shí)施項(xiàng)目實(shí)錄:配置與管理代理服務(wù)器內(nèi)容導(dǎo)航CONTENTS三、項(xiàng)目實(shí)施任務(wù)4-1安裝、啟動(dòng)、停止與隨系統(tǒng)啟動(dòng)squid服務(wù)1. squid軟件包與常用配置項(xiàng)(1) squid軟件包①軟件包名:squid。②服務(wù)名:squid。③主程序:/usr/sbin/squid。④配置目錄:/etc/squid/。⑤主配置文件:/etc/squid/squid.conf。⑥默認(rèn)監(jiān)聽端口:TCP3128。⑦默認(rèn)訪問日志文件:/var/log/squid/access.log。(2) 常用配置項(xiàng)①http_port3128。②cache_access_log/var/log/squid/access.log。③visible_hostname。三、項(xiàng)目實(shí)施任務(wù)4-1安裝、啟動(dòng)、停止與隨系統(tǒng)啟動(dòng)squid服務(wù)(2)安裝、啟動(dòng)、停止squid服務(wù)(在Server02上安裝[root@Server02~]#rpm-qa|grepsquid[root@Server02~]#mount/dev/cdrom/media[root@Server02~]#dnfcleanall#安裝前先清除緩存[root@Server02~]#dnfinstallsquid-y[root@Server02~]#systemctlstartsquid#啟動(dòng)squid服務(wù)[root@Server02~]#systemctlenablesquid#開機(jī)自動(dòng)啟動(dòng)三、項(xiàng)目實(shí)施任務(wù)4-2配置squid服務(wù)1.幾個(gè)常用的參數(shù)參數(shù)作用http_port
3128設(shè)置監(jiān)聽的端口為3128cache_mem
64M設(shè)置內(nèi)存緩沖區(qū)的大小為64MBcache_dir
ufs
/var/spool/squid
2000
16
256設(shè)置硬盤緩存大小為2000MB,緩存目錄為/var/spool/squid,一級(jí)子目錄16
個(gè),二級(jí)子目錄256
個(gè)cache_effective_user
squid設(shè)置緩存的有效用戶cache_effective_group
squid設(shè)置緩存的有效用戶組dns_nameservers
[IP
地址]一般不設(shè)置,而是用服務(wù)器默認(rèn)的DNS
地址cache_access_log
/var/log/squid/access.log訪問日志文件的保存路徑cache_log
/var/log/squid/cache.log緩存日志文件的保存路徑visible_hostname
設(shè)置squid
服務(wù)器的名稱三、項(xiàng)目實(shí)施任務(wù)4-2配置squid服務(wù)2.設(shè)置訪問控制列表squid代理服務(wù)器是客戶端與Web服務(wù)器之間的中介,它實(shí)現(xiàn)訪問控制,決定哪一臺(tái)計(jì)算機(jī)可以訪問Web服務(wù)器以及如何訪問。Squid代理服務(wù)器通過檢查具有控制信息的主機(jī)和域的訪問控制列表(AccessControlList,ACL)來決定是否允許某計(jì)算機(jī)訪問。ACL是控制用戶的主機(jī)和域的列表。使用acl命令可以定義ACL,該命令能在控制項(xiàng)中創(chuàng)建標(biāo)簽。用戶可以使用http_access等命令定義這些控制功能,可以基于多種acl選項(xiàng),如源IP地址、域名,甚至日期和時(shí)間等來使用acl命令定義系統(tǒng)或者系統(tǒng)組。三、項(xiàng)目實(shí)施任務(wù)4-2配置squid服務(wù)(1) acl命令acl命令的格式如下。
aclACL名稱 ACL類型[-i]ACL值 其中,ACL名稱用于區(qū)分squid的各個(gè)ACL,任何兩個(gè)ACL不能用相同的ACL名稱。一般來說,為了便于區(qū)分ACL的含義,應(yīng)盡量使用意義明確的名稱。ACL類型用于定義可被squid識(shí)別的類別,如IP地址、主機(jī)名、域名、日期和時(shí)間等類別。ACL類型及說明如表所示。三、項(xiàng)目實(shí)施任務(wù)4-2配置squid服務(wù)ACL
類型說明src
ip-address/netmask客戶端源IP
地址和子網(wǎng)掩碼src
addr1-addr4/netmask客戶端源IP
地址范圍dst
ip-address/netmask客戶端目標(biāo)IP
地址和子網(wǎng)掩碼myip
ip-address/netmask本地套接字IP
地址srcdomain
domain源域名(客戶端所屬的域)dstdomain
domain目的域名(Internet
中服務(wù)器所屬的域)srcdom_regex
expression對(duì)源URL
進(jìn)行正則表達(dá)式匹配dstdom_regex
expression對(duì)目的URL
進(jìn)行正則表達(dá)式匹配
time指定時(shí)間。用法:acl
aclnametime[day-abbrevs][h1:m1-h2:m2]其中day-abbrevs
可以為S(Sunday)、M(Monday)、T(Tuesday)、W(Wednesday)、H(Thursday)、F(Friday)、A(Saturday)注意:h1:m1
一定要比h2:m2
小port指定連接端口,如acl
SSL_ports
port
443proto指定使用的通信協(xié)議,如acl
allowprotolist
proto
HTTPurl_regex設(shè)置URL
規(guī)則匹配表達(dá)式urlpath_regex:URL-path設(shè)置略去協(xié)議和主機(jī)名的URL
規(guī)則匹配表達(dá)式三、項(xiàng)目實(shí)施任務(wù)4-2配置squid服務(wù)(2)http_access設(shè)置允許或拒絕某個(gè)ACL的訪問請(qǐng)求,格式如下。
http_access[allow|deny]ACL名稱 squid代理服務(wù)器在定義ACL后,會(huì)根據(jù)http_access的規(guī)則允許或拒絕滿足一定條件的客戶端的訪問請(qǐng)求?!纠?-1】拒絕所有客戶端的請(qǐng)求。aclallsrc/http_accessdenyall三、項(xiàng)目實(shí)施任務(wù)4-2配置squid服務(wù)【例4-2】禁止/24的用戶上網(wǎng)。aclclient1src/http_accessdenyclient1【例4-3】禁止用戶訪問域名為www.***.com的網(wǎng)站。aclbaddomaindstdomainwww.***.comhttp_accessdenybaddomain【例4-4】禁止/24的用戶在星期一到星期五的9:00~18:00上網(wǎng)。aclclient1src/aclbadtimetimeMTWHF9:00-18:00http_accessdenyclient1badtime【例4-5】禁止用戶下載.mp3、.exe、.zip和.rar文件。aclbadfileurlpath_regex-i\.mp3$\.exe$\.zip$\.rar$http_accessdenybadfile三、項(xiàng)目實(shí)施任務(wù)4-2配置squid服務(wù)【例4-6】屏蔽www.***.gov站點(diǎn)。aclbadsitedstdomain-iwww.***.govhttp_accessdenybadsite-i表示忽略字母大小寫,默認(rèn)情況下squid是區(qū)分大小寫的?!纠?-7】屏蔽所有包含“sex”的URL路徑。aclsexurl_regex-isexhttp_accessdenysex【例4-8】禁止訪問22、23、25、53、110、119這些危險(xiǎn)端口。acldangerous_portport22232553110119http_accessdenydangerous_port三、項(xiàng)目實(shí)施企業(yè)實(shí)戰(zhàn)與應(yīng)用利用squid和NAT功能可以實(shí)現(xiàn)透明代理。透明代理是指客戶端根本不需要知道有代理服務(wù)存在,客戶端也不需要在瀏覽器或其他的客戶端中進(jìn)行任何設(shè)置,只需要將默認(rèn)網(wǎng)關(guān)設(shè)置為Linux服務(wù)器的IP地址(內(nèi)網(wǎng)IP地址)即可。企業(yè)環(huán)境和需求三、項(xiàng)目實(shí)施手動(dòng)設(shè)置代理服務(wù)器的解決方案(1)在Server02上安裝雙網(wǎng)卡。具體方法參見3.4.2節(jié)的相關(guān)內(nèi)容。編者的計(jì)算機(jī)的第1塊網(wǎng)卡是ens160,系統(tǒng)自動(dòng)命名第2塊網(wǎng)卡為ens36。(2)配置IP地址、網(wǎng)關(guān)等信息。①在Server01上設(shè)置IP地址等信息。②在Client1上安裝httpd服務(wù),讓防火墻允許該服務(wù)通過,并測(cè)試默認(rèn)網(wǎng)絡(luò)配置是否成功。[root@Client1~]#mount/dev/cdrom/media#掛載安裝光盤[root@Client1~]#dnfcleanall[root@Client1~]#dnfinstallhttpd-y#安裝Web服務(wù)器[root@Client1~]#systemctlstarthttpd三、項(xiàng)目實(shí)施手動(dòng)設(shè)置代理服務(wù)器的解決方案續(xù)上[root@Client1~]#systemctlenablehttpd[root@Client1~]#systemctlstartfirewalld[root@Client1~]#firewall-cmd--permanent--add-service=http#讓防火墻放行httpd服務(wù)[root@Client1~]#firewall-cmd--reload[root@Client1~]#firefox13#測(cè)試Web服務(wù)器配置是否成功三、項(xiàng)目實(shí)施手動(dòng)設(shè)置代理服務(wù)器的解決方案2.在Server02上安裝squid服務(wù)(前面已安裝),配置squid服務(wù)(行號(hào)為大致位置)[root@Server02~]#vim/etc/squid/squid.conf……55acllocalnetsrc/856http_accessallowlocalnet57http_accessdenyall#上面3行的意思是,定義
的網(wǎng)絡(luò)為localnet,允許訪問localnet,其他都被拒絕64http_port312867cache_dirufs/var/spool/squid1024016256#設(shè)置硬盤緩存大小為10GB,目錄為/var/spool/squid,一級(jí)子目錄16個(gè),二級(jí)子目錄256個(gè)68visible_hostnameServer02[root@Server02~]#systemctlstartsquid[root@Server02~]#systemctlenablesquid三、項(xiàng)目實(shí)施手動(dòng)設(shè)置代理服務(wù)器的解決方案3.在Server01上測(cè)試代理設(shè)置是否成功(1)打開Firefox瀏覽器,配置代理服務(wù)器。在瀏覽器中,按“Alt”鍵調(diào)出菜單,單擊“編輯”→“首選項(xiàng)”→“常規(guī)”→“網(wǎng)絡(luò)設(shè)置”→“設(shè)置”,打開“連接設(shè)置”對(duì)話框,選中“手動(dòng)代理配置”,將HTTP代理設(shè)為“0”,端口設(shè)為“3128”,如圖所示。設(shè)置完成后單擊“確定”按鈕。三、項(xiàng)目實(shí)施手動(dòng)設(shè)置代理服務(wù)器的解決方案3.在Server01上測(cè)試代理設(shè)置是否成功(2)在瀏覽器地址欄中輸入13,按“Enter”鍵,出現(xiàn)圖所示的不能正常連接界面。三、項(xiàng)目實(shí)施手動(dòng)設(shè)置代理服務(wù)器的解決方案4.排除故障(1)解決方案:在Server02上設(shè)置防火墻,當(dāng)然也可以停止全部防火墻。[root@Server02~]#firewall-cmd--permanent--add-service=squid[root@Server02~]#firewall-cmd--permanent--add-port=80/tcp[root@Server02~]#firewall-cmd--reload[root@Server02~]#netstat-an|grep:3128#3128端口正常監(jiān)聽tcp600:::3128:::*LISTEN三、項(xiàng)目實(shí)施手動(dòng)設(shè)置代理服務(wù)器的解決方案4.排除故障(2)在Server01瀏覽器地址欄中輸入13,按“Enter”鍵,出現(xiàn)如圖所示。三、項(xiàng)目實(shí)施手動(dòng)設(shè)置代理服務(wù)器的解決方案5.在Server02上查看日志文件[root@Server02~]#vim/var/log/squid/access.log1690613612.5655TCP_MISS/4034379GEThttp:#13/-HIER_DIRECT/13text/html三、項(xiàng)目實(shí)施客戶端不需要配置代理服務(wù)器的解決方案(1)在Server02上配置squid服務(wù),前文開放squid防火墻和端口的內(nèi)容仍適用于本任務(wù)。①修改squid.conf配置文件,在“http_port3128”下面增加如下內(nèi)容并重新加載該配置。[root@Server02~]#vim/etc/squid/squid.conf64http_port312864http_port3129transparent[root@Server02~]#systemctlrestartsquid[root@Server02~]#netstat-an|grep:3128#查看端口是否啟動(dòng)監(jiān)聽(很重要)tcp600:::3128:::*LISTEN[root@Server02~]#netstat-an|grep:3129#查看端口是否啟動(dòng)監(jiān)聽(很重要)tcp600:::3129:::*LISTEN三、項(xiàng)目實(shí)施客戶端不需要配置代理服務(wù)器的解決方案②添加firewalld規(guī)則,將TCP端口為80的訪問直接轉(zhuǎn)向3129端口。重啟防火墻和squid。[root@Server02~]#firewall-cmd--permanent--add-forward-port=port=80:proto=tcp:toport=3129success[root@Server02~]#firewall-cmd--reload[root@Server02~]#systemctlrestartsquid三、項(xiàng)目實(shí)施客戶端不需要配置代理服務(wù)器的解決方案(2)在Server01上測(cè)試代理設(shè)置是否成功。①打開Firefox瀏覽器,配置代理服務(wù)器。在瀏覽器中,按“Alt”鍵調(diào)出菜單,單擊“編輯”→“首選項(xiàng)”→“常規(guī)”→“網(wǎng)絡(luò)設(shè)置”→“設(shè)置”,打開“連接設(shè)置”對(duì)話框,選中“不使用代理服務(wù)器”,將代理服務(wù)器設(shè)置清空。②設(shè)置Server01的網(wǎng)關(guān)為0。(刪除網(wǎng)關(guān)是將add改為del。)[root@Server01~]#routeadddefaultgw0#網(wǎng)關(guān)一定要設(shè)置③在S
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 第19課 科學(xué)技術(shù)的重大成果課件
- 2024年專業(yè)電工施工協(xié)議典范
- 中國特色社會(huì)主義基本原理(上)
- 2024年度層電梯廳裝潢協(xié)議模板
- 2024年無薪實(shí)習(xí)勞動(dòng)協(xié)議
- 2024年倉庫租賃法律協(xié)議細(xì)則
- 2024年型車輛采購協(xié)議
- 2024屆安徽省合肥高升學(xué)校高三八校第一次適應(yīng)性考試數(shù)學(xué)試題試卷
- 2024建筑業(yè)勞務(wù)施工協(xié)議文本
- 2023-2024學(xué)年浙江省溫州市九校下期第二次質(zhì)量考評(píng)(3月)高三數(shù)學(xué)試題
- 《一只窩囊的大老虎》名師教案(第二課時(shí))
- 高中生心理健康教育課教案(15篇)
- 公司隱私保護(hù)管理制度
- 2023-2024學(xué)年全國初中八年級(jí)上政治人教版期中考卷(含答案解析)
- 公園綠化保潔管理制度方案(2篇)
- 2024年高考數(shù)學(xué)(理科)全國3卷(精校版)
- 中國新聞事業(yè)史 知到智慧樹網(wǎng)課答案
- 新質(zhì)生產(chǎn)力-講解課件
- 形勢(shì)與政策(論當(dāng)前國際形勢(shì)和中國外交)
- 第六章常微分方程
- 《研學(xué)旅行課程設(shè)計(jì)》課件-體驗(yàn)式學(xué)習(xí)課程內(nèi)容設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論