国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

IPv6環(huán)境下反向代理IPv4網(wǎng)站及安全防護(hù)的研究與實(shí)現(xiàn)

2019-03-07 06:31吳金堂耿方方
中小企業(yè)管理與科技 2019年3期
關(guān)鍵詞:代理服務(wù)代理服務(wù)器日志

吳金堂,耿方方

(河南中醫(yī)藥大學(xué) 信息化辦公室,鄭州 450046)

1 引言

IPv6作為下一代互聯(lián)網(wǎng)關(guān)鍵技術(shù),是網(wǎng)絡(luò)信息技術(shù)發(fā)展和互聯(lián)網(wǎng)演化升級(jí)的必然趨勢(shì)。2018年9月教育部發(fā)布《推進(jìn)IPv6規(guī)模部署行動(dòng)計(jì)劃》,主要目標(biāo)是要求到2020年底,教育系統(tǒng)的各類(lèi)網(wǎng)絡(luò)、門(mén)戶網(wǎng)站和重要應(yīng)用系統(tǒng)完成升級(jí)改造,支持IPv6訪問(wèn)。為了降低各類(lèi)網(wǎng)站及業(yè)務(wù)應(yīng)用向IPv6升級(jí)轉(zhuǎn)換的難度,實(shí)現(xiàn)現(xiàn)有Web應(yīng)用的IPv6訪問(wèn),本文提出基于Nginx的反向代理實(shí)現(xiàn)IPv4網(wǎng)站應(yīng)用的轉(zhuǎn)換及網(wǎng)站的安全防御。

2 現(xiàn)有網(wǎng)站應(yīng)用部署現(xiàn)狀

現(xiàn)階段由于網(wǎng)站規(guī)劃、應(yīng)用開(kāi)發(fā)均基于IPv4網(wǎng)絡(luò),將業(yè)務(wù)直接由IPv4部署到IPv6中,可能會(huì)出現(xiàn)網(wǎng)站、應(yīng)用無(wú)法訪問(wèn)或出現(xiàn)錯(cuò)誤的情況。IPv4到IPv6環(huán)境的轉(zhuǎn)換,需要經(jīng)歷網(wǎng)絡(luò)改造、軟硬件更新以及對(duì)業(yè)務(wù)系統(tǒng)內(nèi)核的重構(gòu)、測(cè)試及重新編譯上線。如果想在短時(shí)間內(nèi)基于IPv6對(duì)網(wǎng)站、應(yīng)用系統(tǒng)進(jìn)行重新開(kāi)發(fā)部署,對(duì)于普通內(nèi)容類(lèi)網(wǎng)站較為容易實(shí)現(xiàn),但對(duì)于一些業(yè)務(wù)應(yīng)用系統(tǒng),如財(cái)務(wù)、教務(wù)等系統(tǒng)則需要較長(zhǎng)的時(shí)間。

目前,正處于IPv4向IPv6過(guò)渡階段,網(wǎng)站及業(yè)務(wù)應(yīng)用系統(tǒng)需同時(shí)滿足IPv4/IPv6用戶訪問(wèn)IPv4/IPv6網(wǎng)站應(yīng)用服務(wù)的需求,這就需要從應(yīng)用服務(wù)端實(shí)現(xiàn)IPv4和IPv6用戶的訪問(wèn)。現(xiàn)在已經(jīng)實(shí)現(xiàn)IPv6部署的網(wǎng)站應(yīng)用,其服務(wù)器通常是基于原生IPv4/IPv6雙棧提供Web服務(wù),它可避免因轉(zhuǎn)換導(dǎo)致的復(fù)雜性。但是,基于IPv6的應(yīng)用安全防御設(shè)備不夠成熟,這就增加了IPv6環(huán)境下的網(wǎng)站應(yīng)用服務(wù)的安全風(fēng)險(xiǎn)。

3 反向代理技術(shù)

反向代理是指某臺(tái)服務(wù)器用來(lái)接受網(wǎng)絡(luò)上用戶的連接請(qǐng)求,然后將請(qǐng)求轉(zhuǎn)發(fā)給網(wǎng)絡(luò)上對(duì)應(yīng)的應(yīng)用服務(wù),并將從應(yīng)用服務(wù)上得到的結(jié)果返回給網(wǎng)絡(luò)上請(qǐng)求的用戶客戶端,此時(shí)這臺(tái)服務(wù)器對(duì)外表現(xiàn)即為一個(gè)反向代理服務(wù)器[1]。用戶通過(guò)代理服務(wù)器訪問(wèn)網(wǎng)站應(yīng)用時(shí),并不需要更改任何配置,正常訪問(wèn)網(wǎng)站即可。常見(jiàn)的反向代理工具有HAProxy、Fikker、Squid、Nginx等。

本文主要以Nginx為反向代理工具進(jìn)行研究,實(shí)現(xiàn)在不更改原有網(wǎng)站應(yīng)用系統(tǒng)的前提下,網(wǎng)站應(yīng)用能夠在IPv6下的訪問(wèn)。

4 反向代理配置

4.1 反向代理服務(wù)器的網(wǎng)絡(luò)配置

反向代理服務(wù)器需要支持用戶能夠同時(shí)訪問(wèn)IPv4地址與IPv6地址,因此,在反向代理服務(wù)器上需配置IPv4地址與IPv6地址。IPv4地址除了為用戶提供IPv4的服務(wù)外,主要是讓代理服務(wù)器將請(qǐng)求的IPv4應(yīng)用系統(tǒng)轉(zhuǎn)換為IPv6服務(wù)。反向代理服務(wù)可以同時(shí)為多個(gè)應(yīng)用系統(tǒng)提供代理服務(wù),因此,可以在代理服務(wù)器上配置多個(gè)IPv4或IPv6地址,方便不同業(yè)務(wù)使用不同的IP地址進(jìn)行訪問(wèn)。

反向代理服務(wù)器只需部署在用戶可以訪問(wèn)到的網(wǎng)絡(luò)下即可,不需要改造網(wǎng)絡(luò)結(jié)構(gòu)。如果內(nèi)部網(wǎng)絡(luò)暫時(shí)沒(méi)有IPv6網(wǎng)絡(luò),可以把代理服務(wù)器部署在其他支持IPv4與IPv6的網(wǎng)絡(luò)機(jī)房,從而實(shí)現(xiàn)IPv4與IPv6的同時(shí)訪問(wèn)。

4.2 反向代理Web應(yīng)用域名解析配置

Web應(yīng)用支持IPv6網(wǎng)絡(luò)訪問(wèn)時(shí),需要網(wǎng)站具有相對(duì)應(yīng)的DNS解析,即AAAA記錄。當(dāng)網(wǎng)站支持IPv4與IPv6同時(shí)訪問(wèn)時(shí),需要有對(duì)應(yīng)的A記錄和AAAA記錄。域名的解析地址為反向代理服務(wù)器上配置的IPv4與IPv6地址。當(dāng)IPv4用戶訪問(wèn)域名時(shí),用戶自動(dòng)解析并訪問(wèn)反向代理服務(wù)器的IPv4地址;當(dāng)IPv6用戶訪問(wèn)域名時(shí),用戶自動(dòng)解析并訪問(wèn)反向代理服務(wù)器的IPv6地址。

4.3 反向代理文件配置

基于Nginx反向代理技術(shù)的服務(wù)器配置較為簡(jiǎn)單靈活,可以同時(shí)代理多個(gè)后端Web應(yīng)用。例如,反向代理后端IPv4網(wǎng)站應(yīng)用,在代理服務(wù)器中配置對(duì)應(yīng)的IPv4請(qǐng)求源地址,并配置監(jiān)聽(tīng)對(duì)應(yīng)Web應(yīng)用的IPv6地址端口即可。

Nginx反向代理配置如下:

以上示例配置中,同時(shí)配置了兩個(gè)反向代理域名,分別對(duì)應(yīng)后端IPv4應(yīng)用地址,當(dāng)IPv6用戶訪問(wèn)www域名時(shí),通過(guò)DNS解析出域名IPv6地址為反向代理服務(wù)器地址,用戶請(qǐng)求到反向代理服務(wù)器,服務(wù)器會(huì)根據(jù)用戶請(qǐng)求的域名自動(dòng)轉(zhuǎn)發(fā)請(qǐng)求到其對(duì)應(yīng)的211.66.66.66(www網(wǎng)站)服務(wù)器,并將請(qǐng)求結(jié)果返回給用戶。

4.4 反向代理注意事項(xiàng)

針對(duì)一些特殊應(yīng)用,使用非80端口,如8080等,只需要在反向代理服務(wù)中配置對(duì)應(yīng)回源端口,并在服務(wù)器中監(jiān)聽(tīng)相應(yīng)端口即可實(shí)現(xiàn)端口轉(zhuǎn)發(fā)功能。當(dāng)某業(yè)務(wù)需要使用HTTPS安全連接,且源Web應(yīng)用不支持修改啟用HTTPS時(shí),同樣可以通過(guò)反向代理服務(wù)器把對(duì)應(yīng)服務(wù)轉(zhuǎn)換為HTTPS安全連接,在反向代理服務(wù)器中配置安全證書(shū),并監(jiān)聽(tīng)443端口,用戶可以直接訪問(wèn)HTTPS的安全連接,回源請(qǐng)求還是Web應(yīng)用80端口,不需要源服務(wù)做任何改變。

在使用反向代理服務(wù)器轉(zhuǎn)換IPv6時(shí)需要注意,代理內(nèi)容中有跨協(xié)議資源時(shí),非對(duì)應(yīng)協(xié)議用戶會(huì)出現(xiàn)無(wú)法訪問(wèn)的情況。例如,只有IPv6網(wǎng)絡(luò)的用戶訪問(wèn)轉(zhuǎn)換后的網(wǎng)站時(shí),網(wǎng)站內(nèi)容包含有鏈接為IPv4的資源,此時(shí)IPv6訪問(wèn)用戶就不能加載相應(yīng)資源,這就需要在做轉(zhuǎn)換時(shí)一定要進(jìn)行嚴(yán)格的訪問(wèn)測(cè)試,保證數(shù)據(jù)調(diào)用協(xié)議一致性。我們可以利用Nginx中的subs_filter內(nèi)容過(guò)濾模塊,把單協(xié)議資源轉(zhuǎn)換為雙協(xié)議資源或替換為本地資源[2]。

當(dāng)用戶訪問(wèn)代理服務(wù)時(shí),代理服務(wù)器就必須開(kāi)啟兩個(gè)連接,一個(gè)為訪問(wèn)用戶的連接,一個(gè)為對(duì)后端Web應(yīng)用的連接,因此,對(duì)于連接請(qǐng)求數(shù)量非常大的時(shí)候,代理服務(wù)器的負(fù)載也就非常高。在實(shí)際應(yīng)用中,如果代理業(yè)務(wù)過(guò)多,可以部署多臺(tái)反向代理服務(wù)器,配合DNS服務(wù),把需要做代理轉(zhuǎn)換的服務(wù)域名同時(shí)解析到多臺(tái)代理服務(wù)器IP,實(shí)現(xiàn)反向代理前端負(fù)載均衡,分散多個(gè)業(yè)務(wù)的請(qǐng)求,這個(gè)過(guò)程其實(shí)已經(jīng)實(shí)現(xiàn)了內(nèi)容分發(fā)網(wǎng)絡(luò)功能(CDN)。我們可以把代理服務(wù)器部署在不同運(yùn)營(yíng)商的線路中,并結(jié)合反向代理的內(nèi)容緩存功能,配合智能DNS服務(wù),以實(shí)現(xiàn)網(wǎng)站業(yè)務(wù)的IPv6轉(zhuǎn)換、內(nèi)容分發(fā)與快速訪問(wèn)。

4.5 IPv6反向代理環(huán)境中的網(wǎng)站安全防御

現(xiàn)階段針對(duì)IPv6業(yè)務(wù)應(yīng)用層的安全設(shè)備相對(duì)不完善,業(yè)務(wù)系統(tǒng)接入IPv6后的安全風(fēng)險(xiǎn)增加,而通過(guò)反向代理服務(wù)后,所有的用戶請(qǐng)求都必須通過(guò)代理服務(wù)器訪問(wèn)后端服務(wù),因此,可在代理服務(wù)器上設(shè)置相關(guān)安全配置,過(guò)濾某些不安全信息,攔截惡意請(qǐng)求。

在搭建IPv6反向代理服務(wù)器時(shí),可以使用OpenResty做為反向代理服務(wù)工具,OpenResty是一個(gè)基于Nginx與Lua的高性能Web平臺(tái),可以方便地搭建能夠處理超高并發(fā)、擴(kuò)展性極高的動(dòng)態(tài)Web應(yīng)用、Web服務(wù)和動(dòng)態(tài)網(wǎng)關(guān)。

網(wǎng)站應(yīng)用層的安全防御主要依靠Web應(yīng)用防火墻(Web Application Firewall,WAF)來(lái)檢測(cè)攔截,通過(guò)開(kāi)源框架OpenResty和相應(yīng)Lua程序語(yǔ)言可以輕松構(gòu)建Web應(yīng)用防火墻,實(shí)現(xiàn)通過(guò)對(duì)HTTP(S)請(qǐng)求進(jìn)行檢測(cè),識(shí)別并阻斷SQL注入、跨站腳本攻擊(Cross Site Scripting xss)、網(wǎng)頁(yè)木馬上傳、命令/代碼注入、文件包含、敏感文件訪問(wèn)、第三方應(yīng)用漏洞攻擊、CC(挑戰(zhàn)黑洞)攻擊、惡意爬蟲(chóng)掃描、跨站請(qǐng)求偽造等攻擊,保護(hù)后端Web應(yīng)用安全穩(wěn)定。

相對(duì)于在原有IPv4/IPv6網(wǎng)站應(yīng)用系統(tǒng)中部署應(yīng)用防御,在中間代理轉(zhuǎn)換層做應(yīng)用安全防御更簡(jiǎn)單便捷,不用對(duì)原有系統(tǒng)做任何改變,也不會(huì)對(duì)原有業(yè)務(wù)系統(tǒng)產(chǎn)生影響。各業(yè)務(wù)系統(tǒng)的訪問(wèn)日志格式不統(tǒng)一,收集整理分析難度大,但通過(guò)中間的反向代理服務(wù)后,可以統(tǒng)一規(guī)范訪問(wèn)日志格式,做集中式日志管理系統(tǒng),以便對(duì)日志進(jìn)行分析,例如,結(jié)合ELK(Elasticsearch、Logstash、Kibana)日志系統(tǒng)可以對(duì)日志統(tǒng)一標(biāo)準(zhǔn)化收集傳輸、日志查詢分析并到最后實(shí)現(xiàn)日志的實(shí)時(shí)可視化。

5 反向代理案例

結(jié)合以上的理論知識(shí),在實(shí)際環(huán)境中構(gòu)建了一臺(tái)反向代理服務(wù)器,具體配置信息如下。

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

在VM虛擬化中開(kāi)設(shè)一臺(tái)服務(wù)器,4核,8G內(nèi)存。安裝Centos6操作系統(tǒng),使用OpenResty作為反向代理服務(wù)工具,使用Iptables和Ip6tables防火墻軟件。配置千兆網(wǎng)卡,設(shè)置IPv4與IPv6雙棧網(wǎng)絡(luò)。

OpenResty服務(wù)配置成反向代理模式,在配置中監(jiān)聽(tīng)指定業(yè)務(wù)域名并設(shè)置對(duì)應(yīng)業(yè)務(wù)回源請(qǐng)求地址,結(jié)合基于Lua語(yǔ)言的開(kāi)源OpenWAF模塊,實(shí)現(xiàn)Web應(yīng)用防火墻功能。

服務(wù)器配置syslog-ng日志收集傳輸工具,Nginx和OpenWAF模塊在產(chǎn)生日志的同時(shí)對(duì)日志進(jìn)行遠(yuǎn)程傳輸。

5.2 日志收集整理服務(wù)器

VM中開(kāi)設(shè)虛擬服務(wù)器,配置8核,16G內(nèi)存。安裝Centos6操作系統(tǒng),配置ELK日志服務(wù),通過(guò)收集反向代理服務(wù)器傳輸過(guò)來(lái)的日志,進(jìn)行分類(lèi)整理分析,并最終實(shí)現(xiàn)日志實(shí)時(shí)可視化。

5.3 原有后端IPv4網(wǎng)站應(yīng)用

本實(shí)例未對(duì)原有Web應(yīng)用做任何改動(dòng),實(shí)際應(yīng)用中,可以把后端業(yè)務(wù)放入內(nèi)部網(wǎng)絡(luò),并設(shè)置只允許反向代理服務(wù)器的請(qǐng)求通過(guò),以增加原應(yīng)用服務(wù)的安全性。

該系統(tǒng)部署在IPv4/IPv6雙棧環(huán)境下,反向代理并轉(zhuǎn)換原IPv4網(wǎng)絡(luò)下的學(xué)校門(mén)戶網(wǎng)站為IPv6服務(wù),已經(jīng)正常連續(xù)運(yùn)行一個(gè)月,通過(guò)日志分析系統(tǒng)可以看出IPv6用戶已經(jīng)增長(zhǎng)很快,每天有1千余用戶通過(guò)IPv6網(wǎng)絡(luò)訪問(wèn)網(wǎng)站,訪客來(lái)源于全國(guó)不同地方,如圖1所示。另外,根據(jù)Web防火墻日志可以看出,IPv6下的攻擊類(lèi)型多種多樣,惡意請(qǐng)求數(shù)量也在遞增,如圖2和圖3所示。

圖1 訪問(wèn)用戶

圖2 攻擊類(lèi)型

6 結(jié)論

反向代理技術(shù)可以實(shí)現(xiàn)IPv4到IPv6的Web應(yīng)用轉(zhuǎn)換,是IPv6過(guò)渡階段最方便快捷的業(yè)務(wù)向IPv6轉(zhuǎn)換的方法。同時(shí),通過(guò)反向代理服務(wù)后,用戶與應(yīng)用系統(tǒng)中間增加了一層防護(hù),提高了內(nèi)部系統(tǒng)的安全性。該方法的使用為IPv6在業(yè)務(wù)系統(tǒng)方面的推廣提供了解決方案,同時(shí)也為業(yè)務(wù)系統(tǒng)的信息安全提供了保障。

圖3 IPv6下的日志分析

猜你喜歡
代理服務(wù)代理服務(wù)器日志
一名老黨員的工作日志
扶貧日志
地鐵信號(hào)系統(tǒng)中代理服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn)
雅皮的心情日志
雅皮的心情日志
農(nóng)村“三資”代理服務(wù)淺析
網(wǎng)絡(luò)安全與防火墻技術(shù)
防火墻技術(shù)與校園網(wǎng)絡(luò)安全的研究
一種容侵系統(tǒng)的設(shè)計(jì)