• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      中國科學(xué)技術(shù)大學(xué)Nginx 在校園網(wǎng)站集中服務(wù)的應(yīng)用

      2019-04-11 06:58:42張煥杰陳蕾夏玉良
      中國教育網(wǎng)絡(luò) 2019年2期
      關(guān)鍵詞:代理服務(wù)器IP地址日志

      文/張煥杰 陳蕾 夏玉良

      無論是單純發(fā)布信息的網(wǎng)頁或是WWW頁面訪問的應(yīng)用,呈現(xiàn)給最終用戶的形式都是Web網(wǎng)站。用戶通過校園網(wǎng)或Internet網(wǎng)絡(luò)訪問這些網(wǎng)站時(shí),希望能提供IPv6/IPv4多協(xié)議支持,提供多家運(yùn)營商線路入口的就近訪問,提供HTTPS安全傳輸支持。網(wǎng)站運(yùn)維方為了安全的考慮,希望將訪問流量引導(dǎo)經(jīng)過Web應(yīng)用防火墻(WAF)設(shè)備過濾處理,提供對(duì)網(wǎng)站靈活可控的邊界防護(hù)手段,具備日志記錄功能以滿足法規(guī)要求。

      Nginx是一個(gè)異步框架的Web服務(wù)器,也可用作反向代理、負(fù)載均衡和HTTP緩存服務(wù)器。中國人章亦春把LuaJIT VM(Lua語言是巴西教授發(fā)明的簡(jiǎn)單腳本語言)嵌入 Nginx中,實(shí)現(xiàn)高性能服務(wù)端解決方案OpenResty。

      Nginx使用高效率的操作系統(tǒng)內(nèi)核epoll接口處理TCP并發(fā)連接,因此可以輕松支持幾十萬甚至更多并發(fā)連接。

      Nginx運(yùn)行在Unix類操作系統(tǒng)或Windows操作系統(tǒng),本文以最常見的Linux操作系統(tǒng)為運(yùn)行環(huán)境。

      Nginx反向代理服務(wù)器

      如圖1所示,設(shè)立一臺(tái)Nginx服務(wù)器,將網(wǎng)站的域名解析到該Nginx服務(wù)器。用戶訪問網(wǎng)站時(shí),Nginx服務(wù)器首先接收來自用戶的訪問請(qǐng)求,并將請(qǐng)求轉(zhuǎn)發(fā)到源網(wǎng)站,獲取到應(yīng)答后再轉(zhuǎn)發(fā)給用戶。這樣工作的Nginx服務(wù)器被稱為反向代理服務(wù)器。設(shè)立Nginx反向代理服務(wù)器,集中處理用戶對(duì)網(wǎng)站訪問服務(wù),在不修改源服務(wù)器的情況下,以幾乎零成本滿足引言中描述的最終用戶和網(wǎng)站運(yùn)維方的多種需求。

      圖1 Nginx反向代理工作示意

      多入口與IPv6/IPv4協(xié)議支持

      Nginx反向代理服務(wù)器上設(shè)置多個(gè)運(yùn)營商網(wǎng)絡(luò)IP地址,并使用DNS的視圖功能,將不同運(yùn)營商的用戶對(duì)域名的查詢請(qǐng)求解析到恰當(dāng)?shù)腎P,這樣用戶的訪問就可以就近進(jìn)行。Nginx服務(wù)器要把從某個(gè)運(yùn)營商入口進(jìn)來的請(qǐng)求對(duì)應(yīng)的應(yīng)答數(shù)據(jù)包,還要從該出口返回,確保用戶訪問服務(wù)器的任何IP都能正常進(jìn)行。

      Linux操作系統(tǒng)支持策略路由的設(shè)置。管理員使用ip rule命令讓不同IP發(fā)出的數(shù)據(jù)包查找不同的路由表,從而實(shí)現(xiàn)源地址策略路由。Nginx反向代理服務(wù)器中給出了設(shè)置策略路由的配置命令。設(shè)置完成后,使用https://www.17ce.com/可從國內(nèi)外若干網(wǎng)絡(luò)對(duì)網(wǎng)站的訪問可達(dá)性、傳輸延遲和速度進(jìn)行測(cè)試。

      Linux操作系統(tǒng)與Nginx軟件提供完整的IPv6協(xié)議功能,簡(jiǎn)單設(shè)置,不需要修改源站的設(shè)置,即可對(duì)外提供IPv6/IPv4協(xié)議服務(wù),是將現(xiàn)有網(wǎng)站升級(jí)支持IPv6協(xié)議最簡(jiǎn)單和便捷的方式。

      HTTPS協(xié)議支持

      超文本傳輸安全協(xié)議HTTPS提供對(duì)網(wǎng)站服務(wù)器的身份認(rèn)證,保護(hù)交換數(shù)據(jù)的隱私與完整性。為了避免中間人的流量嗅探或流量劫持,越來越多的Web站點(diǎn)開始使用HTTPS協(xié)議。HTTP/2是一種二進(jìn)制協(xié)議,帶來推送、數(shù)據(jù)流復(fù)用和幀控制等功能,目前主要用于減少HTTPS協(xié)議握手時(shí)延遲對(duì)訪問體驗(yàn)的負(fù)面影響,已經(jīng)被主流的瀏覽器支持。

      只要具有公認(rèn)的CA機(jī)構(gòu)發(fā)出的服務(wù)器證書,Nginx就可以方便地對(duì)外提供HTTPS協(xié)議訪問。為了簡(jiǎn)化管理,我們僅僅在用戶和Nginx反向代理服務(wù)器間啟用HTTPS協(xié)議,在Nginx反向代理服務(wù)器與源服務(wù)器間仍使用HTTP協(xié)議。

      Nginx反向代理服務(wù)器轉(zhuǎn)發(fā)請(qǐng)求時(shí),向源服務(wù)器發(fā)送Host、X-REAL-IP和X-Forwarded-Proto三個(gè)HTTP頭,內(nèi)容分別是請(qǐng)求的主機(jī)名、客戶端IP地址、客戶訪問時(shí)的協(xié)議(HTTP/HTTPS),以方便源服務(wù)器使用。

      啟用HTTPS協(xié)議后,建議使用https://www.ssllabs.com評(píng)估HTTPS協(xié)議的安全性,必要時(shí)調(diào)整部分參數(shù),禁用不安全的加密算法,以達(dá)到更高的安全性。

      提供HTTPS服務(wù)后,可以將用戶的HTTP訪問重定向到HTTPS訪問,并設(shè)置HSTS頭,強(qiáng)制將來一直使用HTTPS訪問,徹底杜絕中間人的流量嗅探或流量劫持。

      WAF設(shè)備引流

      只要讓Nginx反向代理服務(wù)器訪問源服務(wù)器的HTTP流量經(jīng)過Web應(yīng)用防火墻(WAF)設(shè)備,就完成了引流工作。WAF設(shè)備上看到請(qǐng)求均是由Nginx服務(wù)器發(fā)起,因此需要調(diào)整WAF設(shè)置,讓W(xué)AF設(shè)備從HTTP請(qǐng)求的X-REAL-IP頭獲取客戶端IP信息。

      為減少攻擊者對(duì)Nginx的影響,可以收集并分析WAF日志,獲取到攻擊者的IP地址,直接使用Nginx服務(wù)器上的包過濾防火墻將這些IP地址封禁,徹底切斷攻擊者的通信。

      邊界防護(hù)

      校園內(nèi)網(wǎng)站數(shù)量龐大,不同的網(wǎng)站在不同的時(shí)期有不同的邊界防護(hù)需求。如在重要時(shí)期網(wǎng)絡(luò)保障階段,需要將可能存在潛在漏洞的信息化應(yīng)用網(wǎng)站限制在校內(nèi),并將部分必須校外訪問的網(wǎng)站增加一個(gè)認(rèn)證階段,避免這些網(wǎng)站直接暴露到校外的潛在安全風(fēng)險(xiǎn)。

      使用反向代理對(duì)外服務(wù)的網(wǎng)站,源服務(wù)器不需要對(duì)外暴露,能讓反向代理服務(wù)器訪問即可,源服務(wù)器更加安全。

      設(shè)置Nginx中的Acl訪問控制策略,僅允許自己校內(nèi)的IPv4/IPv6地址訪問,即可將網(wǎng)站限制在校內(nèi)訪問。

      使用lua對(duì)反向代理做權(quán)限控制給出的方案,在Nginx反向代理服務(wù)器上運(yùn)行一段lua腳本程序,不需對(duì)源網(wǎng)站做任何修改,能對(duì)校外訪問網(wǎng)站增加一次認(rèn)證階段,實(shí)現(xiàn)靈活的邊界防護(hù)策略,并可隨時(shí)在Nginx代理服務(wù)器上切換。權(quán)限控制部分是運(yùn)行在Nginx內(nèi)的lua程序,開發(fā)簡(jiǎn)單、執(zhí)行效率高、對(duì)性能影響小。權(quán)限控制部分通過檢查校外用戶請(qǐng)求中的nginx_auth_uid、nginx_auth_expire和nginx_auth_hash三個(gè)參數(shù),結(jié)合與認(rèn)證部分共享的密鑰,判斷訪問者是否已通過認(rèn)證,允許通過認(rèn)證的用戶訪問。如果是未通過認(rèn)證的用戶,重定向到獨(dú)立的認(rèn)證部分。認(rèn)證部分對(duì)接學(xué)校的統(tǒng)一身份認(rèn)證系統(tǒng),平時(shí)使用簡(jiǎn)單的用戶名和密碼認(rèn)證,在重要時(shí)期網(wǎng)絡(luò)保障階段,可增加更加安全的雙因子認(rèn)證。通過認(rèn)證后會(huì)設(shè)置對(duì)應(yīng)的nginx_auth_uid、nginx_auth_expire和nginx_auth_hash三個(gè)cookie,后續(xù)的訪問會(huì)被權(quán)限控制部分允許。

      日志記錄

      Nginx反向代理可以集中記錄Web網(wǎng)站的訪問日志,不依賴源站點(diǎn)即可滿足法規(guī)對(duì)日志的記錄要求。

      依據(jù)這些集中記錄的日志,可以統(tǒng)計(jì)網(wǎng)站的IPv4/IPv6/HTTPS/HTTP/2訪問情況,還可以分析異常掃描和攻擊,找出潛在的威脅。

      性能優(yōu)化

      默認(rèn)安裝的操作系統(tǒng)不能充分發(fā)揮Nginx的性能。step-by-step install Nginx反向代理服務(wù)器給出對(duì)操作系統(tǒng)的優(yōu)化建議。

      conntrack優(yōu)化:對(duì)于Nginx服務(wù)器,因?yàn)橛写罅康亩踢B接,最好不啟用conntrack連接跟蹤功能。如果因設(shè)置需要啟用連接跟蹤功能,需要在加載nf_conntrack內(nèi)核模塊時(shí)增加一個(gè)較大的hashsize參數(shù),該參數(shù)*8即是內(nèi)核可以記錄的最多連接數(shù),建議hashsize設(shè)置為50000。啟用連接跟蹤功能時(shí),還應(yīng)調(diào)整連接跟蹤的超時(shí)時(shí)間,讓異常狀態(tài)的連接及早超時(shí)刪除,減少需要跟蹤的連接數(shù)量。

      單進(jìn)程和系統(tǒng)打開的最多文件數(shù),建議增加到655360。

      應(yīng)用案例

      中國科學(xué)技術(shù)大學(xué)從2011年開始使用Nginx反向代理服務(wù)器。目前Nginx反向代理服務(wù)運(yùn)行在一個(gè)2G內(nèi)存/4個(gè)CPU的虛擬機(jī)中,集中對(duì)650個(gè)網(wǎng)站提供IPv4/IPv6、HTTPS服務(wù)。該虛擬機(jī)有中國教育和科研計(jì)算機(jī)網(wǎng)、中國科技網(wǎng)、中國電信、中國聯(lián)通和中國移動(dòng)五個(gè)IPv4入口,并有CNGI-CERNET2 IPv6入口。DNS服務(wù)器上設(shè)置若干DNS view,將用戶的解析分配到對(duì)應(yīng)的IP地址,引導(dǎo)用戶的就近訪問。

      中國科學(xué)技術(shù)大學(xué)使用Let’s Encrypt免費(fèi)提供的自動(dòng)簽發(fā)服務(wù)器證書。由于Let’s Encrypt有每7天50個(gè)證書簽發(fā)速率限制,對(duì)于其中563個(gè)形如*.ustc.edu.cn域名,在DNS服務(wù)器上使用DNS驗(yàn)證方式申請(qǐng)*.ustc.edu.cn證書,利用git傳遞到Nginx反向代理服務(wù)器上;而其他87個(gè)獨(dú)立域名,則在Nginx反向代理服務(wù)器上使用HTTP驗(yàn)證方式分批申請(qǐng)證書。有了這些證書,Nginx中增加https配置,即可對(duì)外提供HTTPS及HTTP/2服務(wù)。Let’s Encrypt簽發(fā)的證書有效期為90天,服務(wù)器上每天凌晨運(yùn)行一個(gè)腳本,申請(qǐng)更新60天前簽發(fā)的證書,更新成功后重啟Nginx進(jìn)程以使用新證書,實(shí)現(xiàn)證書的自動(dòng)更新。

      對(duì)Nginx反向代理服務(wù)器上的日志文件統(tǒng)計(jì)可以掌握用戶的訪問情況。

      圖2 學(xué)校主頁訪問統(tǒng)計(jì)

      圖2是學(xué)校主頁http://www.ustc.edu.cn的訪問統(tǒng)計(jì),約80%使用HTTPS方式,約60%使用HTTP/2協(xié)議,約10%使用IPv6協(xié)議。網(wǎng)站的訪問統(tǒng)計(jì)對(duì)比可以說明高校用戶在IPv6協(xié)議使用率和新版本瀏覽器(更好支持HTTPS及HTTP/2)普及率方面比普通網(wǎng)民要高。

      猜你喜歡
      代理服務(wù)器IP地址日志
      一名老黨員的工作日志
      扶貧日志
      心聲歌刊(2020年4期)2020-09-07 06:37:14
      鐵路遠(yuǎn)動(dòng)系統(tǒng)幾種組網(wǎng)方式IP地址的申請(qǐng)和設(shè)置
      地鐵信號(hào)系統(tǒng)中代理服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn)
      IP地址隱藏器
      游學(xué)日志
      基于SNMP的IP地址管理系統(tǒng)開發(fā)與應(yīng)用
      黑龍江電力(2017年1期)2017-05-17 04:25:16
      一種基于粗集和SVM的Web日志挖掘模型
      一種容侵系統(tǒng)的設(shè)計(jì)
      代理服務(wù)器全問答
      新野县| 胶州市| 荔浦县| 乌兰浩特市| 科技| 巴彦淖尔市| 都昌县| 新晃| 阿勒泰市| 耿马| 云龙县| 神池县| 大名县| 车险| 大厂| 屏南县| 确山县| 宝丰县| 满洲里市| 原平市| 长海县| 靖安县| 邹城市| 孟津县| 弥勒县| 紫云| 延安市| 隆昌县| 民权县| 营山县| 含山县| 抚松县| 永济市| 眉山市| 巴东县| 临潭县| 苍山县| 香格里拉县| 株洲县| 奉化市| 奇台县|