點對點傳輸協議虛擬專用網在大數據中的應用

2021-10-09 07:31劉邦桂
軟件工程 2021年10期
關鍵詞:大數據

摘? 要:網絡空間安全博弈日益激烈,先進的網絡安全技術已成為主動應對安全威脅、及時打破安全攻防不對稱局面的關鍵因素。針對復雜的網絡環境和多樣的網絡應用需求,分析對比了多種虛擬專用網技術,設計了基于點對點傳輸協議的虛擬專用網方案。方案選用MS CHAP(微軟質詢握手身份驗證協議)來驗證客戶端身份,采用MPPE(點對點加密算法)對公網地址封裝私網地址后的IP數據包進行加密,確保了數據的機密性、完整性和可靠性。最后,利用免費的開源代碼在Linux平臺進行了驗證。實驗證明,該方案實現了大數據處理過程中數據從采集、傳輸、應用到存儲和分析的安全保證,部署靈活,應用范圍廣,為大數據中心與數據源采集點,以及各企事業單位跨地區之間搭建專用網提供了參考。

關鍵詞:網絡空間安全;大數據;點對點傳輸協議;虛擬專用網

中圖分類號:TP393.2? ? ?文獻標識碼:A

Application of Virtual Private Network based on Point-to-Point

Tunneling Protocol in Big Data

LIU Banggui

(School of Artificial Intelligence, The Open University of Guangdong, Guangzhou 510091, China)

liubanggui@qq.com

Abstract: With the increasingly fierce security game in cyberspace, advanced network security technology has become a key factor in actively responding to security threats and breaking the asymmetry of security offense and defense in time. Aiming at the complex network environment and diverse network application requirements, this paper proposes to design a virtual private network solution based on point-to-point tunneling protocol by comparing a variety of virtual private network technologies. MS CHAP (Microsoft Challenge Handshake Authentication Protocol) is used to verify clients' identity, and MPPE (Point-to-Point Encryption Algorithm) is used to encrypt the IP data packets after the public network address encapsulates the private network address, so to ensure the confidentiality, integrity and reliability of the data. Finally, free open source code is used to verify the proposed solution on Linux platform. Experiments have proved that the security guarantee is realized from data collection, transmission, application to storage and analysis in the process of big data processing. The solution is flexible in deployment and has a wide range of application, providing a reference for building a private network between the big data center and data source collection points, as well as various cross-regional enterprises and institutions.

Keywords: cyberspace security; big data; point-to-point tunneling protocol; virtual private network

1? ?引言(Introduction)

隨著全球信息化建設的快速發展,網絡應用不斷深入,網絡規模逐漸變大,網絡結構日趨復雜,加上網絡空間具有開放性、虛擬性、資源豐富性與時空壓縮化等優勢[1],對網絡基礎設施的功能和可延伸性提出了新的要求。例如,一些跨地區組織的各分支機構之間需要進行遠距離互聯;一些單位員工需要遠程接入內部網絡進行移動辦公。為了解決各分支機構局域網之間的互聯問題,早期只能直接鋪設網絡線路或租用運營商的專線,不但成本高,而且實現困難。對于移動辦公用戶,一般采用撥號方式接入內部網絡,在需要支付較高的網絡流量通信費用的同時[2],卻無法保證數據的機密性、完整性和可靠性。

大數據處理過程中從采集點獲取數據時,除了必要的身份認證以外,還需要對數據進行網絡安全保護,對機密等級較高的數據使用加密算法進行加密處理,以確保數據不被篡改或非法獲取,提高數據的正確性和完整性,減少冗余干擾信息,提升數據采集質量。為此在數據安全傳輸過程中,虛擬專用網技術拓寬了網絡環境的應用,大數據傳輸可以采用虛擬專用網技術來建立安全通道,為數據中心和采集點之間遠程連接提供廉價的方式,將需要保護的數據樣本通過加密和封裝處理后作為載荷嵌套在其他協議數據報文中傳輸[3]。本文在Linux平臺中使用PPTP(點對點傳輸協議)實現虛擬專用網來滿足安全需求。

2? ?VPN與隧道(VPN and tunneling)

2.1? ?VPN基本概念

VPN(Virtual Private Network),中文名稱為虛擬專用網絡[4]。虛擬專用網絡是一種虛擬通道,是一組通信協議,并不是一種獨立的組網技術,目的是在公共網絡基礎設施上,通過隧道技術提供兩個節點之間進行安全傳輸的專用通道。這條隧道可以有選擇地對數據進行必要加密和認證,從而保證傳輸數據的機密性和完整性,只有通過了接入認證并且獲得服務端授權的用戶才能使用隧道。虛擬專用網技術通過建立可信的安全連接,運用在公司外出員工、合作伙伴、公司分支機構等有內部網訪問需求的任何環境。這條承載在公用網絡上的私有信息隧道在客戶端看來,與在局域網內互訪沒有太大區別,加上配備有永久和臨時隧道的不同特點,成為多種網絡應用的優選“承載協議”。

VPN包含認證、授權和加密。認證是鑒定用戶的真偽和通信數據的不可抵賴;授權是檢查客戶端撥入后可以訪問哪些資源;加密是訪問資源過程中對通信數據采用加密算法進行處理,以此來保證數據的機密性、完整性、可靠性和不可抵賴性。

VPN服務安全通道有主動和被動連接兩種。主動連接一般首先需要客戶端主動請求撥入VPN服務器,經過VPN服務器與認證中心對客戶端進行身份驗證并得到授權后,VPN服務器與客戶端建立連接才開始傳送數據,適合在少量或者單個用戶不定時不固定位置與VPN服務連接的情況。被動連接主要是在連接兩個遠程局域網的網關位置進行,內網客戶端無須配置便可與對端內網用戶通信,適合在大量用戶固定或者暫時固定的場合使用。

2.2? ?隧道協議

VPN采用隧道技術進行通信。待轉發的數據經過源局域網與公網的接口時,用設定的隧道協議將數據包作為有效載荷封裝進行封裝,封裝后的數據包經過公網路由轉發到達目的局域網與公網接口時,由同樣的隧道協議解封裝,再取出載荷中的源局域網中傳輸的數據包轉發到目的主機。被封裝數據包在公網上傳輸時經過的邏輯路徑稱為“隧道”。

常用隧道協議有PPTP、L2TP、GRE、IPSec等。其中PPTP、L2TP是網絡參考模型第二層的隧道協議,GRE、IPSec是第三層的隧道協議。

(1)PPTP(Point-to-Point Tunneling Protocol)點對點傳輸協議[5],實現的前提是通信雙方有連通且可用的IP網絡,服務器監聽端口號為1723,有認證、加密等功能。

(2)L2TP(Layer 2 Tunneling Protocol)第二層隧道協議,使用UDP協議封裝,協議端口號為1701,默認無加密算法,若想使用加密算法,可結合IPsec。

(3)GRE(Generic Routing Encapsulation)通用路由封裝協議是由思科公司提出的,目前版本是GREv2,可以應用于多種承載和載荷協議,為解決IPv4和IPv6技術孤島提供了解決方案,提供了對建立隧道雙方用戶的認證,沒有對數據的加密功能。

(4)IPsec(Internet Protocol Security)Internet協議安全[6],其基本思想是把與密碼學相關的安全機制引入IP協議,通過現代密碼學所創立的方法來支持保密和驗證服務,使用戶可以有選擇地使用所提供的功能,并得到所要求的安全服務。原本IPv6的制定才產生了安全性較高的IPsec,但目前IPv4協議還在廣泛應用,所以在IPsec標準制定過程中也增加了對IPv4的支持,引入了IKE等密鑰交換協議,工作模式有多種,數據加密和驗證算法多樣,能嵌套在GRE、l2tp中,滿足大部分使用的場景,為此部署也相對復雜,對設備的要求也較高,一般在路由器和防火墻設備上實現。

除此之外,還有多種VPN實現技術,比如OpenVPN。它是一種基于OpenSSL庫和SSL/TSL協議的應用層VPN,屬于免費開源軟件,加密強度高,信息的機密性和完整性保護效果好,還可以配置在任意端口運行,具有NAT穿越等功能,但安裝和配置過程復雜,連接速度和傳輸效率相對較低。

3? 點對點傳輸協議(Point-to-point tunneling protocol)

PPTP協議是常用的一種協議,是在PPP協議和TCP/IP協議上開發的二層隧道協議,通過加密、認證、壓縮算法增強了安全性和可靠性。PPTP將PPP幀封裝成IP數據包,在互聯網上進行傳輸。PPTP運用TCP通過三次握手實現隧道創建、維護與終止,使用GRE(通用路由封裝)封裝隧道數據的PPP幀。PPTP通信與FTP類似,需要建立控制連接和數據連接。控制連接主要進行連接的維護,數據連接主要負責數據的通信。

3.1? ?PPTP工作過程

對于基于PPTP的VPN,由于客戶端通過撥號方式接入VPN服務器,因此該VPN服務器也稱為VPDN虛擬專用撥號網(Virtual Private Dial-Up Network)服務器。其實現過程如下:

(1)發送建立連接請求。在VPDN服務器為PPTP客戶端預先建立好用戶賬戶(包括登錄賬號和密碼)。PPTP客戶端利用VPN連接軟件(Windows操作系統自帶)向VPDN服務器發起連接請求。在客戶端輸入VPDN服務器對外公開的IP地址后,首先將分配的用戶賬號和密碼發送到服務器進行認證和授權。PPTP對用戶進行認證的方法有:密碼身份驗證協議PAP(Password Authentication Protocol)、質詢握手身份驗證協議CHAP(Challenge Handshake Authentication Protocol)、微軟質詢握手身份驗證協議MS CHAP(Microsoft Challenge Handshake Authentication Protocol)等。

(2)如果用戶認證通過,正式建立VPN連接,返回連接完成信息。

(3)VPN安全隧道建立后,將進行正常數據傳輸。為保證數據傳輸的機密性,可以選用數據加密算法DES(Data Encryption Standard)、點對點加密算法MPPE(Microsoft Point-to-Point Encryption)對IP數據進行加密。如果我們的客戶端是Windows操作系統,默認使用MPPE。

(4)數據傳輸至目的地。VPDN服務器收到發往內網的PPTP數據包后,將按流程對其進行解封裝,解封裝后從PPTP數據包中取出目的地址為本地內網主機的網絡地址,然后按照原先設定的私網路由進行轉發,完成傳輸。

3.2? ?數據封裝與解封裝過程

PPTP協議數據采用多層封裝的方式。具體封裝和解封裝的過程如圖1所示。

封裝過程:(1)初始應用層數據封裝成IP數據包;(2)利用內網私有路由將數據包發送到VPN虛擬接口;(3)在虛擬接口中使用設置的安全協議,對其壓縮和加密,添加PPP頭部信息,封裝成PPP幀后發送給PPTP協議;(4)為PPTP幀添加GRE頭部信息后提交給TCP/IP協議;(5)TCP/IP協議為GRE報頭添加公網源IP地址和目的IP地址;(6)為IP數據包進行數據鏈路層封裝后通過物理層與普通數據包一樣選擇合適路由進行轉發。

解封裝過程:(1)物理層收到數據包;(2)鏈路層剝掉外層幀后交給TCP/IP協議;(3)TCP/IP協議剝掉IP頭;(4)IP協議剝掉GRE頭后通過內網私有路由,將PPP幀發給VPN虛擬接口;(5)VPN虛擬接口剝掉PPP頭對有效載荷進行解壓縮或解密后提交給上層應用;(6)對數據進行普通處理。

4? ?方案設計(Solution design)

4.1? ?方案背景

為了數據采集點能在外網環境下通過公網訪問內部數據中心,需要內網VPN服務網關給采集點提供一個內網IP地址,通過訪問側和公網側的網關對數據進行封裝和解封裝,以實現數據通信,為此整個過程均需要對應的公網和私網路由。對于采集點較多,而且需要同一時間訪問內部服務的公司來說,需要購置一臺專門支持PPTP VPN的路由器或者防火墻,資金允許的情況下還可以購置專門用于用戶認證的服務器。對于采集點訪問量不是很大的情況,可以使用Windows或者Linux服務器操作系統來實現,既節約成本又方便管理。本文用一臺安裝有Red Hat Linux 7.4的服務器來開展研究。

4.2? ?方案需求分析

為了保證采集點和數據中心實現安全數據傳輸,加上數據交換不是很多,在不增加購買設備的情況下,利用公司企業內網配置一臺雙網卡的Linux服務器來做VPN服務器,由于經過解包、配置、編譯和安裝四個步驟就能進行配置和使用,開源軟件pptpd源碼包成為方案的首選。方案網絡拓撲圖如圖2所示。

此方案需要內網配置有數據中心,通過圖2中的通用交換機互聯,VPN配置在安裝有Linux 7.4的軟網關上,該網卡上的IP地址也是處在外網的采集點,包括員工、辦事處和合作企業,均采用通過撥號獲得網關分配的內網地址后連入內外的唯一可識別公網地址,內網數據中心的地址全部不對外公開,方案驗證之前需要確保內網到VPN內外地址、外網到VPN網關外網地址的路由連通性。

5? ?方案驗證(Solution verification)

5.1? ?VPN服務器端的配置

VPN服務器安裝在Linux 7.4中,在系統中配置VPN服務,基于PPTP的VPN服務名稱是pptpd。pptpd是PPTP的守護進程,用來管理基于PPTP隧道協議的VPN連接。當pptpd接收到用戶的VPN接入請求后,會自動調用PPP協議的pptpd程序來完整驗證,然后建立VPN連接,需要安裝ppp和pptpd兩個軟件包。

(1)安裝ppp和pptpd。

ppp安裝ppp服務:

[root@vpnserver/]# yum install

解壓縮pptpd源碼文件:

[root@vpnserver vpn]# tar zxfv pptpd-1.4.0.tar.gz

使用源碼目錄中的configure腳本將程序安裝到指定目錄:

[root@vpnserver pptpd-1.4.0]#./configure--prefix=/usr/local/pptpd

使用make命令將源代碼文件變為二進制的可執行程序:

[root@vpnserver pptpd-1.4.0]#make

將上一步編譯好的程序文件復制到系統中:

[root@vpnserver pptpd-1.4.0]#make install

(2)基于pptpd協議的VPN服務主配置文件是/etc/pptpd.conf。使用模板生成主配置文件,主要配置分配給內網的地址。

[root@vpnserver etc]# vi pptpd.conf

設置pppd程序的位置:

ppp/usr/sbin/pppd

設置options文件的位置:

option/etc/ppp/options.pptpd

局域網分配給客戶機的網關地址:

localip 192.168.1.1

局域網分配給客戶機的IP地址:

remoteip 192.168.1.7-177

(3)由于pptpd在接收到用戶VPN接入請求后,會自動調用ppp服務來完成驗證過程,以建立VPN連接,因此,要使pptpd服務正常工作,還必須在ppp配置文件中對VPN連接驗證服務等進行相關的配置。ppp選項文件由pptpd.conf文件中的option參數指定默認為/etc/ppp/options.pptpd,文件中可以設置身份驗證方式、加密長度,以及為VPN客戶端指定的DNS服務器和WINS服務器的IP地址。

[root@vpnserver ppp]# vi options.pptpd

設置DNS服務器地址:

ms-dns 8.8.8.8

默認使用/etc/ppp/chap-secrets文件來進行VPN用戶身份驗證:

auth

(4)在ppp選項文件中,已通過auth選項指定默認使用/etc/ppp/chap-secrets安全驗證文件進行身份驗證,所以創建VPN用戶和密碼可以通過直接編輯該文件來完成。

[root@vpnserver ppp]#vi/etc/ppp/chap-secrets

#client? ? server? secret? ? ?IP addresses

wgsu1? ? ? ? ?pptpd? ? 123456

啟動PPTP對應的服務:

[root@vpnserver~]#/usr/local/pptpd/sbin/pptpd

[root@vpnserver~]#systemctl stop firewalld

5.2? ?客戶端連接

客戶端通過新建網絡連接,輸入服務器地址和登錄用的賬號和密碼,登錄成功后可以查看客戶端獲取了服務器分配的內網地址,同時查看服務端的日志發現客戶端詳細信息。客戶端通過分配的內網地址成功訪問內網服務群中的數據中心,查看連接情況可以了解使用的身份驗證和數據加密算法,如圖3和圖4所示。

6? ?結論(Conclusion)

安全與應用相伴而生,隨著大數據應用不斷發展,安全問題也隨之出現。該方案在Linux平臺上建立了PPTP VPN,實現了外網對內網的私有訪問,并對客戶端進行了MS CHAP認證,采用MPPE對數據加密,保證了PPTP客戶端與服務器之間的安全通信。客戶端無須下載任何軟件便可連接,能夠滿足安全等級中等的適用場合,也可以推廣運用于大部分中小企事業單位。由于組網技術的原因,PPTP VPN 無法穿越NAT[7],如果服務器的網關在防火墻內部,客戶端將無法建立VPN連接,為此需要結合第三層的IPsec VPN來混合使用[8],通過防火墻來增強VPN系統的安全性和實用性。

參考文獻(References)

[1] 岳少博,王清河,王曉春,等.基于虛擬專用技術的網絡空間防御方法仿真[J].計算機仿真,2020,37(5):273-277.

[2] 陳良臣,高曙,劉寶旭,等.網絡流量異常檢測中的維數約簡研究[J].計算機工程,2020,46(2):11-20.

[3] 張堯,劉笑凱.基于國密算法IPSec VPN設計與實現[J].信息技術與網絡安全,2020,39(6):49-52.

[4] 季征南,馬立國,吳英梁,等.計算機網絡信息安全中虛擬專用網絡技術的應用研究[J].冶金管理,2021(1):185-186.

[5] SAITO S, UEHARA T, IZUMI Y, et al. Implementation and performance evaluation of pass-through PPTP relay system with authentication at each gateway[J]. Electrical Engineering in Japan, 2010, 154(2):40-51.

[6] 段翠華.計算機網絡安全中虛擬網絡技術的應用[J].網絡安全技術與應用,2021(1):8-9.

[7] 倪潔,徐志偉,李鴻志.PPTP VPN與L2TP/IPSec VPN的實現與安全測試[J].電子技術與軟件工程,2019(12):192.

[8] 彭治湘.L2TP over IPSec VPN NAT穿越技術研究與實驗仿真[J].信息技術與信息化,2020,247(10):210-212.

作者簡介:

劉邦桂(1983-),男,碩士,講師.研究領域:服務器技術,網絡安全技術.

猜你喜歡
大數據
大數據背景下高職院校網絡輿情分析
大數據時代下智慧物流系統體系構建研究
互聯網金融背景下大連銀行“大數據”戰略研究
基于大數據的在線矛盾多元化解平臺
大數據時代高職院校思政課精準教學面臨的機遇與挑戰
淺析“大數據”時代下個人信息的保護
中國自然資源法制評價、完善與實施的大數據參與問題探究
大數據視野下檔案管理思維方式的轉變
移動網絡下電商精準營銷研究
基于大數據時代下企業財務管理的創新路徑
中文天堂最新版在线www-bt天堂网www天堂-电影天堂 宅男电影
许家印为恒大注入超70亿续命资金 速度与激情9 嘉南传 国际人士热议中共十九届六中全会 千与千寻 星际穿越 两个女人 男子写80页PPT拯救爱情却离婚 许家印为恒大注入超70亿续命资金 大连一密接者擅自点外卖聚餐被调查 许家印为恒大注入超70亿续命资金 中国共产党第三个历史决议全文发布 两个女人 我和我的家乡 男子体检血中抽出2升油浆 安娜贝尔 意大利错失直接晋级世界杯资格 国足战澳大利亚大名单:4归化在列 花木兰 林丹世界排名被正式移除 长津湖 意大利错失直接晋级世界杯资格 意大利错失直接晋级世界杯资格 大连现超级传播者26人在同一传播链 蜘蛛侠:英雄归来 俄方回应卫星碎片危及国际空间站 安娜贝尔 两个女人 24岁救人牺牲消防员获批为烈士 突围 怒火·重案 国足战澳大利亚大名单:4归化在列 大连一密接者擅自点外卖聚餐被调查 意大利错失直接晋级世界杯资格 加拿大一枝黄花到底是什么? 花木兰 你好李焕英 斛珠夫人 周冠宇成为中国首位F1车手 房价上涨城市创七年新低 拐点来了? 周冠宇成为中国首位F1车手 加拿大一枝黄花到底是什么? 男子体检血中抽出2升油浆 扬名立万 中国共产党第三个历史决议全文发布 长津湖 加拿大一枝黄花到底是什么? 逆局 峰爆 林丹世界排名被正式移除 北京冬奥火炬宣传片获金花环奖 24岁救人牺牲消防员获批为烈士 大连现超级传播者26人在同一传播链 长津湖 大连现超级传播者26人在同一传播链 速度与激情9 灵媒 国际人士热议中共十九届六中全会 中美元首会谈重点内容 大连一密接者擅自点外卖聚餐被调查 浦发银行回应近3亿存款莫名被质押 加拿大一枝黄花到底是什么? 扫黑风暴 十九届六中全会公报发布 #耿直真香哥黑化卖惨# 国际人士热议中共十九届六中全会 安娜贝尔 我和我的家乡 24岁救人牺牲消防员获批为烈士 国际人士热议中共十九届六中全会 灵媒
开江县| 沙湾县| 赤水市| 平谷区| 左贡县| 郧西县| 乐都县| 灵璧县| 民勤县| 武威市| 金塔县| 竹山县| 舟山市| 太湖县| 金门县| 龙井市| 宕昌县| 古田县| 通江县| 雷波县| 东方市| 隆德县| 河源市| 教育|