日本少妇寂寞少妇aaa,国产婷婷色一区二区三区,JK浴室自慰到不停喷水尿失禁,一本一道波多野结衣av黑人

歡迎您光臨深圳塔燈網(wǎng)絡(luò)科技有限公司!
電話圖標(biāo) 余先生:13699882642

網(wǎng)站百科

為您解碼網(wǎng)站建設(shè)的點(diǎn)點(diǎn)滴滴

SSL和 HTTPS

發(fā)表日期:2017-06 文章編輯:小燈 瀏覽次數(shù):4289

SSL是什么?

SSL的全稱(chēng)是Secure Sockets Layer,是網(wǎng)景公司創(chuàng)造的一種協(xié)議。它在TCP協(xié)議之上,應(yīng)用層之下運(yùn)作,是用來(lái)傳輸敏感信息的,比如在網(wǎng)上傳輸信用卡的一些細(xì)節(jié)。SSL通過(guò)使用一個(gè)私鑰來(lái)加密信息,加密后的信息會(huì)在一個(gè)激活了SSL功能的連接中進(jìn)行傳輸,從而阻止了對(duì)信息的竊取。

最流行的SSL的使用方法是,與瀏覽器結(jié)合(使用HTTP協(xié)議),但事實(shí)上很多網(wǎng)絡(luò)的應(yīng)用都可以從使用SSL中受益。按照約定,使用SSL連接的URL地址以https開(kāi)頭,而不是http。

SSL可以做什么?

1. 可以讓服務(wù)器證明自己的身份

2. 可以讓用戶(hù)證明自己的身份(可選擇的)

3.可以建立加密的連接

SSL協(xié)議

目的:

為兩個(gè)交互的應(yīng)用提供可靠性和私密性

組成:

SSL協(xié)議由兩層組成,分別是SSL記錄層和SSL握手層。記錄層用來(lái)傳輸大量數(shù)據(jù),而握手層是為數(shù)據(jù)傳輸建立安全的連接。

握手的流程:

1. 對(duì)“ciper suite”進(jìn)行協(xié)商

2.驗(yàn)證服務(wù)器

3.驗(yàn)證客戶(hù)端(可選擇)

4.生成 session keys

5.建立一個(gè)安全連接

兩個(gè)有用的術(shù)語(yǔ)

1. 證書(shū)

包含的內(nèi)容:證書(shū)發(fā)布者的名稱(chēng),證書(shū)發(fā)布的對(duì)象,公鑰,時(shí)間戳

2.電子簽名

是從上一個(gè)消息中制造出的一種消息產(chǎn)物,消息產(chǎn)物有以下重要的特性:1. 這種制造是很難被反向恢復(fù)的 2. 很難用一條不同的消息,卻計(jì)算出具有相同的值的消息產(chǎn)物

SSL證書(shū)

在服務(wù)器端使用的SSL證書(shū)

只要你已經(jīng)正確地生成一個(gè)滿(mǎn)足X.509的SSL證書(shū),你可以通過(guò)生成一個(gè)CA(證書(shū)機(jī)構(gòu)),從而自簽名,也可以讓一個(gè)具有全球認(rèn)可度的證書(shū)機(jī)構(gòu)來(lái)對(duì)此證書(shū)進(jìn)行簽名。

在這個(gè)證書(shū)簽名的過(guò)程中,它就已經(jīng)使用了OpenSSL的工具集,或是用來(lái)觸發(fā)LDAP或是HTTP協(xié)議的服務(wù)器SSL連接的庫(kù)。

生成和對(duì)自簽名的證書(shū)進(jìn)行簽名

自簽名的證書(shū)有一個(gè)最大的優(yōu)勢(shì),那就是它完全是免費(fèi)的,并且它可能完全符合需要。自簽名的證書(shū)在封閉的實(shí)驗(yàn)室環(huán)境中,或是用作測(cè)試需要是極好的。

自簽名證書(shū)的一個(gè)缺點(diǎn)是,當(dāng)訪問(wèn)一個(gè)使用自簽名證書(shū)的服務(wù)器時(shí),用戶(hù)的瀏覽器或是其他應(yīng)用程序會(huì)有警告產(chǎn)生。通過(guò)將服務(wù)器端的證書(shū)移植到客戶(hù)端應(yīng)用中,警告可能可以被消除。在一個(gè)面向公眾和生產(chǎn)額環(huán)境中,不建議使用自簽名證書(shū),因?yàn)橛捎谶@些警告帶來(lái)的不信任問(wèn)題和對(duì)用戶(hù)造成的可能的困惑情緒。

注意:如果你想要成立一個(gè)商業(yè)網(wǎng)站,那么你必須要獲得一個(gè)被認(rèn)可的CA簽名的證書(shū)。


SSL是如何工作的?

進(jìn)行驗(yàn)證:這個(gè)網(wǎng)站必須有一個(gè)證書(shū),服務(wù)器必須要向CA提交證書(shū)申請(qǐng)。

連接建立過(guò)程

進(jìn)行加密:必須分享keys

證書(shū)獲取流程

X.509是什么?

X.509是ITU-T(國(guó)際電信委員會(huì))發(fā)布的電子證書(shū)的一個(gè)具體化。它將驗(yàn)證用戶(hù)或電腦系統(tǒng)所需要的信息和屬性具體化,從而被廣泛地用于安全控制和在網(wǎng)上進(jìn)行電子簽名證書(shū)的分發(fā)。OpenSSL經(jīng)常使用X.509證書(shū)

OpenSSL

什么是OpenSSL?

OpenSSL課題致力于開(kāi)發(fā)一個(gè)強(qiáng)健的、商業(yè)檔次、功能健全的開(kāi)源工具集,實(shí)現(xiàn)的是第二版和第三版SSL協(xié)議規(guī)范,和第一版的TLS協(xié)議規(guī)范,并且也是一個(gè)功能全大的通用密碼庫(kù)。

OpenSSL課題由一個(gè)全球性的公益組織管理,利用網(wǎng)絡(luò)來(lái)交流、計(jì)劃和開(kāi)發(fā)這個(gè)工具及其文檔。OpenSSL基于一個(gè)由 Eric A. Young和Tim J.Hudon開(kāi)發(fā)的SSLeay庫(kù)。

特點(diǎn):

1. 開(kāi)源

2. 全功能的實(shí)現(xiàn)

3. 跨平臺(tái)(Windows和Unix)

4. 命令行界面

5. 應(yīng)用編程界面(針對(duì)C/C++, Perl, PHP, Python)

功能:

1. 創(chuàng)造出RSA, DSA和DH的秘鑰對(duì)

2. 創(chuàng)造出X509的證書(shū),CSRs和CRLs

3. 計(jì)算出消息產(chǎn)物

4. 利用密碼進(jìn)行編碼和解碼工作

5. 對(duì)?SSL/TLS客戶(hù)端和服務(wù)器進(jìn)行測(cè)試

6. 處理S/MIME簽名和加密過(guò)的郵件

利用OpenSSL進(jìn)行實(shí)驗(yàn)

建立CA

為了實(shí)現(xiàn)自簽名的證書(shū),你必須首先建立一個(gè)CA,步驟如下:

1. 建立一個(gè)初始的工作環(huán)境

比如在你的主目錄下,在命令行中敲以下的代碼:

cd && mkdir -p myCA/signedcerts && mkdir myCA/private && cd myCA

這行代碼會(huì)在你的主目錄下建立一個(gè)名叫myCA的新的子目錄,并且在myCA的文件夾中有兩個(gè)叫做“signedcerts”和“private”的子目錄。

myCA中包含CA證書(shū),證書(shū)數(shù)據(jù)庫(kù),生成的證書(shū),鑰匙和請(qǐng)求。

myCA/signedcerts中包含被簽名的證書(shū)的拷貝。

myCA/private中包含私鑰。

2. 建立初始證書(shū)數(shù)據(jù)庫(kù)

在myCA的子目錄下建立初始證書(shū)數(shù)據(jù)庫(kù)。在命令行中敲下如下命令:

echo '01' > serial? && touch index.txt

3. 建立初始caconfig.cnf文件

為創(chuàng)建CA證書(shū)而創(chuàng)建一個(gè)初始的caconfig.cnf文件。使用你所喜愛(ài)的文本編輯器,編輯caconfig.cnf文件,將以下的內(nèi)容插入文件:

caconfig.cnf內(nèi)容

注意:確保把此文件中特定的信息進(jìn)行了修改,比如在[ local_ca ]和[ req ]里的/home/<username>,同時(shí)在[root_ca_distinguished_name]中的commonName, stateOrProvinceName, countryName也需要改動(dòng)。

當(dāng)此文件編輯完畢后,將其保存為caconfig.cnf

4. 生成CA根證書(shū)和秘鑰

通過(guò)以下的命令生成CA根證書(shū)和秘鑰。

1.?export OPENSSL_CONF=~/myCA/caconfig.cnf

這條命令設(shè)置了一個(gè)環(huán)境變量,OPENSSL_CONF,這個(gè)變量會(huì)強(qiáng)制openssl工具去你指定的目錄中尋找配置文件。

2. openssl req -x509 -newkey rsa:2048 -out cacert.pem -outform PEM -days 1825

通過(guò)這條命令來(lái)CA證書(shū)和秘鑰。輸入以上命令后,得到的結(jié)果如下:

生成CA后的反饋

你會(huì)被強(qiáng)制要求輸入一個(gè)密碼。請(qǐng)記住這個(gè)密碼,因?yàn)橐院竺恳淮文阆胍眠@個(gè)CA為新的服務(wù)器或者客戶(hù)端證書(shū)簽名時(shí)都需要用到。

以上的命令會(huì)生成一個(gè)使用PEM格式和RSA公/私鑰密碼自簽名的證書(shū)。這個(gè)證書(shū)的有效期為1825天。

生成的文件存放的位置,以及內(nèi)容如下:

~/myCA/cacert.pem: CA的公證書(shū)

~/myCA/private/cakey.pem: CA的私鑰

創(chuàng)建一個(gè)自簽名的服務(wù)器證書(shū)

我們現(xiàn)在已經(jīng)配置好CA的證書(shū),我們可以用它來(lái)為自簽名的證書(shū)簽名。在開(kāi)始下面的步驟之前,你可能希望能為證書(shū)的私鑰加密。為私鑰加密的好處是,可以防止它被竊取。

這個(gè)開(kāi)啟SSL功能的應(yīng)用每一次啟動(dòng),都需要輸入密碼,否則這個(gè)證書(shū)就沒(méi)有辦法被使用。在這樣的情況下,雖然非常安全,但也可能帶來(lái)一些問(wèn)題,比如如果電腦重啟,服務(wù)必須開(kāi)啟但是知道密碼的人又不在場(chǎng)。

一種解決這個(gè)問(wèn)題的辦法是需要用一些安全的代價(jià)來(lái)交換。密碼可以被解析,這樣啟用了SSL的應(yīng)用就可以自動(dòng)啟動(dòng),而不用必須輸入密碼。

想要生成一個(gè)啟用SSL服務(wù)的自簽名證書(shū),遵循如下幾步:

1. 創(chuàng)建一個(gè)服務(wù)器配置文件

使用你喜愛(ài)的編輯器,在myCA文件下新建一個(gè)exampleserver.cnf文件,內(nèi)容如下:

注意:

1. 確保要將server_distinguished_name中的commonName的值改為與CA配置文件中的值相一致,否則會(huì)出現(xiàn)不匹配的錯(cuò)誤。

2. 將[ server_distinguished_name]下的commonName改為localhost,同時(shí)將[ alt_name ]下的DNS.0和DNS.1都改成localhost。

編輯完畢之后,將文件保存。

2. 生成服務(wù)器證書(shū)和秘鑰

首先輸入以下命令:

export OPENSSL_CONF=~/myCA/exampleserver.cnf

與之前生成CA中的一樣,這行命令也是通過(guò)設(shè)置環(huán)境變量OPENSSL_CONF的值,強(qiáng)制openssl到我們指定的地方尋找配置文件。

接著通過(guò)下面的代碼生成服務(wù)器證書(shū)和秘鑰:

openssl req -newkey rsa:1024 -keyout tempkey.pem -keyform PEM -out tempreq.pem -outform PEM

我們會(huì)看到反饋結(jié)果如下:

生成服務(wù)器證書(shū)和秘鑰的反饋信息

我們也會(huì)被要求輸入密碼。請(qǐng)記住這個(gè)密碼。

將私鑰轉(zhuǎn)換成不加密的形式

使用如下的命令將私鑰轉(zhuǎn)換成不加密的形式:

openssl rsa < tempkey.pem > server_key.pem

我們會(huì)被要求輸入密碼,反饋結(jié)果如下:

秘鑰轉(zhuǎn)換的反饋結(jié)果

如果你希望保持秘鑰為加密狀態(tài)的話,輸入以下的命令,而不要進(jìn)行上面的步驟:

mv tempkey.pem server_key.pem

使用CA的秘鑰對(duì)服務(wù)器證書(shū)進(jìn)行簽名

使用如下的命令:

export OPENSSL_CONF=~/myCA/caconfig.cnf

這條命令將OpenSSL的配置文件位置又重新變回CA的配置文件位置。

使用如下命令對(duì)證書(shū)進(jìn)行簽名:

openssl ca -in tempreq.pem -out server_crt.pem

你會(huì)被要求輸入我們?cè)趧?chuàng)立CA時(shí)設(shè)置的密碼。在命令行中輸入密碼,你會(huì)被要求確認(rèn)服務(wù)器證書(shū)的信息,最后確認(rèn)是否對(duì)該證書(shū)進(jìn)行簽名。命令行的反饋結(jié)果如下:

對(duì)服務(wù)器證書(shū)進(jìn)行簽名過(guò)程中的反饋信息

使用以下的命令行移除這個(gè)暫時(shí)的證書(shū),以及秘鑰文件:

rm -f tempkey.pem && rm -f tempreq.pem

恭喜你!到目前為止,你已經(jīng)擁有了一個(gè)自簽名的服務(wù)器證書(shū)和秘鑰對(duì):

server_crt.pem:服務(wù)器應(yīng)用證書(shū)文件

server_key.pem:服務(wù)器應(yīng)用秘鑰文件

你可以在你需要的服務(wù)器應(yīng)用軟件上使用這個(gè)證書(shū)和秘鑰。

瀏覽器配置

使用PEM證書(shū)進(jìn)行SSL連接,需要將CA證書(shū)引入到火狐web瀏覽器中。

將該服務(wù)器的根證書(shū)引入到瀏覽器中可以保證客戶(hù)端可以與該服務(wù)器端建立一個(gè)安全的SSL連接,而不會(huì)被警告自簽名的問(wèn)題。

將證書(shū)引入火狐瀏覽器

在火狐瀏覽器中選擇首選項(xiàng)

在左側(cè)欄目中選擇高級(jí) - > 證書(shū) - > 查看證書(shū)

在火狐瀏覽器中導(dǎo)入證書(shū)

選擇證書(shū)機(jī)構(gòu) - > 導(dǎo)入?

選擇之前生成的cacert.pem文件導(dǎo)入

修改Apache文件里的內(nèi)容

修改/etc/apache2/sites-available中default-ssl文件的SSLCertificateFile以及

SSLCertificateKeyFile,前者改為給服務(wù)器頒發(fā)的證書(shū)文件,server_crt.pem或

01.pem都可,后者是服務(wù)器私鑰server_key.pem,不是CA的私鑰cacert.pem。

修改Apache的配置文件

開(kāi)啟SSL服務(wù)

執(zhí)行a2enmod ssl和a2ensite default-ssl啟動(dòng)SSL模塊,

執(zhí)行service apache2 restart重啟服務(wù)器

啟動(dòng)SSL模塊

最終的結(jié)果

我們?cè)赨RL欄目中輸入http://localhost,顯示出如下頁(yè)面,并且地址欄前面出現(xiàn)一鎖的形狀,將鼠標(biāo)浮在鎖上可以看到我們之前編輯CA配置文件中指定的機(jī)構(gòu)名稱(chēng)。

https實(shí)驗(yàn)結(jié)果截圖
本頁(yè)內(nèi)容由塔燈網(wǎng)絡(luò)科技有限公司通過(guò)網(wǎng)絡(luò)收集編輯所得,所有資料僅供用戶(hù)學(xué)習(xí)參考,本站不擁有所有權(quán),如您認(rèn)為本網(wǎng)頁(yè)中由涉嫌抄襲的內(nèi)容,請(qǐng)及時(shí)與我們聯(lián)系,并提供相關(guān)證據(jù),工作人員會(huì)在5工作日內(nèi)聯(lián)系您,一經(jīng)查實(shí),本站立刻刪除侵權(quán)內(nèi)容。本文鏈接:http://www.cokiv.cn/20532.html
相關(guān)開(kāi)發(fā)語(yǔ)言