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

?

基于PKI的網(wǎng)絡(luò)安全站點(diǎn)通信設(shè)計(jì)與實(shí)現(xiàn)

2022-05-30 00:18:02朱建彬
電腦知識與技術(shù) 2022年16期
關(guān)鍵詞:網(wǎng)絡(luò)安全

朱建彬

摘要:PKI體系結(jié)構(gòu)作為當(dāng)下廣泛采用的安全解決方案,主要用于互聯(lián)網(wǎng)的安全認(rèn)證。該文介紹如何在centos8系統(tǒng)環(huán)境下,通過在校園內(nèi)網(wǎng)架設(shè)CA和WEB兩臺服務(wù)器,有效地實(shí)現(xiàn)基于PKI的網(wǎng)絡(luò)安全站點(diǎn)通信,并利用CA數(shù)字證書實(shí)現(xiàn)網(wǎng)站HTTPS的設(shè)計(jì)與實(shí)現(xiàn),并在Windows客戶端上訪問WEB服務(wù)測試成功。

關(guān)鍵詞:PKI;網(wǎng)絡(luò)安全;HTTPS

中圖分類號:TP393? ? ? ? 文獻(xiàn)標(biāo)識碼:A

文章編號:1009-3044(2022)16-0043-03

為解決互聯(lián)網(wǎng)的安全問題,世界各國經(jīng)過多年的研究,初步形成了一套完整的Internet安全解決方案,即目前被廣泛采用的PKI(Public Key Infrastructure)體系結(jié)構(gòu),PKI體系結(jié)構(gòu)采用證書管理公鑰,通過第三方的可信機(jī)構(gòu)CA,把用戶的公鑰和用戶的其他標(biāo)識信息(如名稱、e-mail、身份證號等)捆綁在一起,在Internet網(wǎng)上驗(yàn)證用戶的身份,PKI體系結(jié)構(gòu)把公鑰密碼和對稱密碼結(jié)合起來,在Internet網(wǎng)上實(shí)現(xiàn)密鑰的自動管理,保證網(wǎng)上數(shù)據(jù)的機(jī)密性、完整性。

PKI,即Public Key Infrastructure,名為公鑰基礎(chǔ)設(shè)施。PKI是一種遵循標(biāo)準(zhǔn)的利用公鑰加密技術(shù)為電子商務(wù)的開展提供一套安全基礎(chǔ)平臺的技術(shù)和規(guī)范。PKI主要由以下幾部分組成:證書頒發(fā)機(jī)構(gòu)CA,負(fù)責(zé)頒發(fā)證書。證書注冊機(jī)構(gòu)RA,可以接受用戶的證書注冊申請。證書吊銷列表CRL,用于存放作廢的證書。證書存取庫,用于存放證書,供用戶獲取[1]。

PKI體系中,包含憑證簽發(fā)請求文件 (Certificate Signing Request - CSR)是一種包含憑證簽發(fā)時所需的公鑰、組織信息、個人信息(域名)等信息的(.csr)文件,不含私鑰信息。證書頒發(fā)機(jī)構(gòu) (certification authority - CA)是指互聯(lián)網(wǎng)上信任的證書頒發(fā)機(jī)構(gòu),CA通過線上、線下等多種手段驗(yàn)證申請者提供信息的真實(shí)性,如組織是否存在、企業(yè)是否合法,是否擁有域名的所有權(quán)等,確認(rèn)申請用戶的身份之后再簽發(fā)證書[2]。同時CA會在線提供其所簽發(fā)證書的最新吊銷信息,這樣信賴方就可以驗(yàn)證證書是否仍然有效。證書(certificate)包含以下信息:申請者公鑰、申請者的組織信息和個人信息、簽發(fā)機(jī)構(gòu)CA的信息、有效時間、證書序列號等信息的明文,同時包含一個簽名(使用散列函數(shù)計(jì)算公開的明文信息的信息摘要,然后采用CA的私鑰對信息摘要進(jìn)行加密,此密文即簽名)[3]。證書=公鑰+申請者與頒發(fā)者信息+簽名。

PKI所能提供的三大功能:加密、簽名、認(rèn)證。PKI中最基本的元素是數(shù)字證書,安全操作主要通過證書來實(shí)現(xiàn)。PKI中最重要的設(shè)備是CA,負(fù)責(zé)頒發(fā)并管理證書。PKI的核心技術(shù)是非對稱式加密技術(shù)。PKI安全策略建立和定義了一個組織信息安全方面的指導(dǎo)方針,同時也定義了密碼系統(tǒng)使用的處理方法和原則。它包括一個組織怎樣處理密鑰和有價值的信息,根據(jù)風(fēng)險(xiǎn)的級別定義安全控制的級別。一般情況下,在PKI中有兩種類型的策略:一是證書策略,用于管理證書的使用,比如,可以確認(rèn)某一CA是在Internet上的公有CA,還是某一企業(yè)內(nèi)部的私有CA;另外一個就是CPS(Certificate Practice Statement)。一些由商業(yè)證書發(fā)放機(jī)構(gòu)(CCA)或者可信的第三方操作的PKI系統(tǒng)需要CPS。這是一個包含如何在實(shí)踐中增強(qiáng)和支持安全策略的一些操作過程的詳細(xì)文檔[4]。它包括CA是如何建立和運(yùn)作的,證書是如何發(fā)行、接收和廢除的,密鑰是如何產(chǎn)生、注冊的,以及密鑰是如何存儲的,用戶是如何得到它等。證書機(jī)構(gòu)CA是PKI的信任基礎(chǔ),它管理公鑰的整個生命周期,其作用包括:發(fā)放證書、規(guī)定證書的有效期和通過發(fā)布證書廢除列表(CRL)確保必要時可以廢除證書[5]。

注冊機(jī)構(gòu)RA提供用戶和CA之間的一個接口,它獲取并認(rèn)證用戶的身份,向CA提出證書請求。它主要完成收集用戶信息和確認(rèn)用戶身份的功能。這里指的用戶,是指將要向認(rèn)證中心(即CA)申請數(shù)字證書的客戶,可以是個人,也可以是集團(tuán)或團(tuán)體、某政府機(jī)構(gòu)等。注冊管理一般由一個獨(dú)立的注冊機(jī)構(gòu)(即RA)來承擔(dān)。它接受用戶的注冊申請,審查用戶的申請資格,并決定是否同意CA給其簽發(fā)數(shù)字證書。注冊機(jī)構(gòu)并不給用戶簽發(fā)證書,而只是對用戶進(jìn)行資格審查[6]。因此,RA可以設(shè)置在直接面對客戶的業(yè)務(wù)部門,如銀行的營業(yè)部、機(jī)構(gòu)認(rèn)識部門等。當(dāng)然,對于一個規(guī)模較小的PKI應(yīng)用系統(tǒng)來說,可把注冊管理的職能由認(rèn)證中心CA來完成,而不設(shè)立獨(dú)立運(yùn)行的RA。但這并不是取消了PKI的注冊功能,而只是將其作為CA的一項(xiàng)功能而已。PKI國際標(biāo)準(zhǔn)推薦由一個獨(dú)立的RA來完成注冊管理的任務(wù),可以增強(qiáng)應(yīng)用系統(tǒng)的安全。證書發(fā)布系統(tǒng)負(fù)責(zé)證書的發(fā)放,如可以通過用戶自己,或是通過目錄服務(wù)。目錄服務(wù)器可以是一個組織中現(xiàn)存的,也可以是PKI方案中提供的。在互聯(lián)網(wǎng)中,PKI的應(yīng)用非常廣泛,包括在Web服務(wù)器和瀏覽器之間的通訊、電子郵件、電子數(shù)據(jù)交換(EDI)、在Internet上的信用卡交易和虛擬私有網(wǎng)(VPN)等。

為了保證網(wǎng)站傳輸數(shù)據(jù)的安全性,網(wǎng)絡(luò)傳輸通常啟用HTTPS加密訪問策略,將HTTP協(xié)議與TSL協(xié)議(SSL3.1版本,即安全套接字協(xié)議)結(jié)合在一起,形成了HTTP的安全傳輸,TSL協(xié)議的思路是采用公鑰加密方式,客戶端先向服務(wù)器申請公鑰,然后用公鑰加密信息,服務(wù)器在收到密文以后,再用自己的私鑰解密[7]。這樣可以保證所有的信息都是通過加密傳輸,無法被竊取。在實(shí)際生活中,通過在校園內(nèi)網(wǎng)架設(shè)CA和Web兩臺服務(wù)器,可以有效地實(shí)現(xiàn)基于PKI的網(wǎng)絡(luò)安全站點(diǎn)通信。網(wǎng)絡(luò)服務(wù)需要兩臺Linux(centos8)分別作為CA證書服務(wù)(192.168.80.132)和Web服務(wù)(192.168.80.134),Windows作為客戶端用于測試,如圖1所示。

1 CA證書服務(wù)器的部署

校園網(wǎng)內(nèi)利用一臺Centos8作為服務(wù)器,用于生成私有CA證書頒發(fā)機(jī)構(gòu),這里主要利用OpenSSL開源軟件,需要用到一個私鑰文件和一個證書文件,證書文件是由本CA證書頒發(fā)機(jī)構(gòu)所簽發(fā)的。在OpenSSL的配置文件中,“dir = /etc/pki/CA”指定了CA的默認(rèn)工作目錄;“certs = $dir/certs”指定了已經(jīng)頒發(fā)證書的存放目錄;“database = $dir/index.txt”指定用于存放已頒發(fā)證書索引的文件index.txt;“serial = $dir/serial”指定了用于標(biāo)識證書序列號的文件serial;“private_key = $dir/private/cakey.pem”指定CA私鑰的存放路徑。

首先,對自己的私有CA機(jī)構(gòu)進(jìn)行認(rèn)證,簽發(fā)自證書。在自簽名 CA 中,證書中的公鑰和用于驗(yàn)證證書的密鑰是相同的。自簽名證書本身作為根證書。需要完成三個步驟:首先,生成私鑰文件。用于簽發(fā)證書時,為證書進(jìn)行數(shù)字簽名。其次,生成自簽名證書。最后,為CA提供所需要的目錄及文件。具體過程如下:

openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048#利用rsa非對稱算法生成一個私鑰文件Cakey,如圖2所示。

openssl? req? -new -x509 –key? /etc/pki/CA/private/cakey.pem? -out? /etc/pki/CA/cacert.pem? ? # 利用私鑰基于X509標(biāo)準(zhǔn)生成自簽名證書cacert,其中需要輸入相關(guān)信息,包括國家、省份、城市、組織機(jī)構(gòu)、網(wǎng)站域名、管理員郵箱,如圖3所示。

為CA提供必需的目錄和文件,創(chuàng)建索引文件touch /etc/pki/CA/index.txt;創(chuàng)建序列號文件,序列號(serial number),是每個CA用來唯一標(biāo)識其所簽發(fā)的證書,可以指定初始序列號:echo 01 > /etc/pki/CA/serial。至此,便完成了校園網(wǎng)內(nèi)部私有CA的架設(shè)。

2 Web服務(wù)器的部署

在校園網(wǎng)內(nèi)部Web服務(wù)器上,我們使用當(dāng)前流行的Apache軟件作為Web服務(wù)器應(yīng)用端。首先安裝Apache軟件:yuminstall? –y? httpd ; 接著,為Web服務(wù)器向CA服務(wù)器申請證書,其方法和CA自簽發(fā)證書相類似,首先生成私鑰文件,然后利用私鑰文件,向CA服務(wù)器生成證書申請,要求其為自己簽發(fā)證書。生成私鑰,如圖4所示。

mkdir /etc/httpd/ssl? ?#創(chuàng)建證書的存放目錄

openssl? genrsa? -out? /etc/httpd/ssl/httpd.key? 2048? #采用RSA2048位生成http.key私鑰。

生成證書請求:

openssl req -new-key /etc/httpd/ssl/httpd.key -out /etc/httpd/ssl/httpd.csr -days 365#利用私鑰文件,生成證書請求,有效期為365天,其中國家、省、城市、公司名稱必須和CA默認(rèn)一致。如有不一致的情況,需要修改對應(yīng)策略,主機(jī)名部分必須是客戶端在訪問Web服務(wù)器時在瀏覽器中所輸入的網(wǎng)址。

將證書請求文件httpd.csr發(fā)送到CA服務(wù)器的/tmp目錄下:

scp? /etc/httpd/ssl/httpd.csr? ?root@192.168.80.132:/tmp/

3 CA上為Web簽發(fā)證書

在CA服務(wù)器上,為Web服務(wù)器簽發(fā)證書,使用以下命令:

openssl ca -in /tmp/httpd.csr -out /etc/pki/CA/certs/httpd.crt -days 365,其中-in選項(xiàng),指定證書請求文件的路徑;-out選項(xiàng),指定生成的證書文件httpd.crt的路徑;-days選項(xiàng),指定有效期為365天。注意:證書文件必須存放在指定的/etc/pki/CA/certs目錄中,如圖5所示。

在簽發(fā)成功后,再次利用scp將簽發(fā)的證書傳給Web服務(wù)器。

scp? /etc/pki/CA/certs/httpd.crt? ?root@192.168.80.134: /etc/httpd/ssl/httpd.crt

4 在Web服務(wù)器上安裝證書

為了使用證書服務(wù),我們需要為Apache服務(wù)器添加安全SSL模塊,使用yum命令安裝:yum install –y mod_ssl,然后修改SSL的配置文件/etc/httpd/conf.d/ssl.conf,在配置文件中添加以下幾個設(shè)置項(xiàng):DocumentRoot "/var/www/html"#指定服務(wù)器主目錄;ServerName *:443#開啟HTTPS安全的443端口;SSLCertificateFile /etc/httpd/ssl/httpd.crt#指定簽發(fā)證書文件的保存位置;SSLCertificateKeyFile /etc/httpd/ssl/httpd.key#指定Web服務(wù)器自己的私鑰文件保存位置。

5 在Windows客戶端上訪問Web服務(wù)測試

在Windows 10 客戶端上,通過使用安全的HTTPS協(xié)議訪問https://192.168.80.134服務(wù)器(如需用域名訪問,還需另外架設(shè)DNS服務(wù)),結(jié)果如圖6所示,利用HTTPS協(xié)議訪問了測試網(wǎng)站,顯示網(wǎng)頁頁面。

6 結(jié)束語

在PKI安全體系下,Web服務(wù)器啟用了SSL功能之后,在瀏覽器與服務(wù)器之間傳輸數(shù)據(jù)之前必須要先建立安全通信信道,安全信道的建立過程:1)客戶端向服務(wù)器發(fā)出連接請求,服務(wù)器把它的數(shù)字證書發(fā)給客戶端,客戶端會驗(yàn)證頒發(fā)證書的CA是否可信任;2)客戶端生成會話密鑰(對稱式加密),并用從服務(wù)器得到的公鑰對它進(jìn)行加密,然后通過網(wǎng)絡(luò)傳送給服務(wù)器;3)服務(wù)器使用私鑰解密得到會話密鑰,這樣客戶端和服務(wù)器端就建立了安全通道[8]。

PKI應(yīng)用范圍非常廣,不僅局限于本文涉及的網(wǎng)絡(luò)安全通信,還包括完整的安全策略和安全應(yīng)用。因此,PKI的開發(fā)也從傳統(tǒng)的身份認(rèn)證到各種與應(yīng)用相關(guān)的安全場合,在校園網(wǎng)上信息發(fā)布、辦公自動化、網(wǎng)上辦公、信息資源共享等,PKI可以解決身份認(rèn)證、數(shù)據(jù)完整性、數(shù)據(jù)保密性和不可抵賴性等問題。

參考文獻(xiàn):

[1] 喬明秋,趙振洲.數(shù)據(jù)加密與PKI技術(shù)混合式教學(xué)設(shè)計(jì)——以數(shù)字證書實(shí)現(xiàn)網(wǎng)站HTTPS訪問為例[J].信息與電腦(理論版),2021,33(16):210-212.

[2] 李艷.基于PKI技術(shù)的安全接入平臺中接入認(rèn)證的研究[J].科技傳播,2020,12(22):131-133.

[3] 董志剛.基于PKI實(shí)現(xiàn)網(wǎng)絡(luò)通信安全性的研究[J].電子技術(shù)與軟件工程,2021(20):241-242.

[4] 鄧偉偉.基于PKI實(shí)現(xiàn)網(wǎng)絡(luò)通信安全性的研究[J].中國新通信,2019,21(6):19.

[5] 祁凌.基于PKI技術(shù)下的電子商務(wù)信息安全研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2020(12):127-129.

[6] 李艷.基于PKI技術(shù)的安全接入平臺中接入認(rèn)證的研究[J].科技傳播,2020,12(22):131-133.

[7] 王晨,馬旭.基于公鑰基礎(chǔ)設(shè)施的數(shù)字認(rèn)證體系虛擬仿真實(shí)驗(yàn)設(shè)計(jì)[J].曲阜師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2019,45(4):49-53.

[8] 郭建偉,燕娜,陳佳宇.基于安全證書的PKI解決方案[J].天津科技,2019,46(1):55-58.

【通聯(lián)編輯:朱寶貴】

猜你喜歡
網(wǎng)絡(luò)安全
網(wǎng)絡(luò)安全知多少?
工會博覽(2023年27期)2023-10-24 11:51:28
新形勢下的特種設(shè)備網(wǎng)絡(luò)安全防護(hù)探討
新量子通信線路保障網(wǎng)絡(luò)安全
網(wǎng)絡(luò)安全
網(wǎng)絡(luò)安全人才培養(yǎng)應(yīng)“實(shí)戰(zhàn)化”
上網(wǎng)時如何注意網(wǎng)絡(luò)安全?
網(wǎng)絡(luò)安全與執(zhí)法專業(yè)人才培養(yǎng)探索與思考
設(shè)立網(wǎng)絡(luò)安全專項(xiàng)基金 促進(jìn)人才培養(yǎng)
網(wǎng)絡(luò)安全監(jiān)測數(shù)據(jù)分析——2015年12月
網(wǎng)絡(luò)安全監(jiān)測數(shù)據(jù)分析——2015年11月
海南省| 准格尔旗| 修文县| 桑日县| 灌阳县| 湖口县| 阜南县| 天津市| 渑池县| 桑日县| 保德县| 松阳县| 桂阳县| 吉木乃县| 睢宁县| 潼关县| 阿克苏市| 凤城市| 武城县| 韶山市| 布拖县| 松溪县| 梨树县| 敖汉旗| 米泉市| 龙山县| 嘉善县| 股票| 沿河| 博罗县| 梅河口市| 本溪市| 比如县| 江华| 南乐县| 库尔勒市| 孝感市| 丘北县| 元阳县| 嘉禾县| 无棣县|