ssl協議,openssl,建立私有CA

2021-08-11 04:20:51 字數 2000 閱讀 6346

ssl是security socket layer;安全的套接字層

他介於http和tcp協議層之間

ssl是netscape公司開發的,屬於個人

tls是標準委員會制定的

openssl是ssl的開源實現

ca:證書頒發機構:certification authority

兩台主機要通訊,他們需要先建立鏈結,建立鏈結的時候又需要保證這個鏈結是安全的,那麼如何保證安全呢?

這裡就需要用到ssl來保證傳輸的安全性,ssl可以生成一對秘鑰對,在建立安全鏈結的時候,客戶端發出請求到伺服器端,伺服器端收到請求,把自己的公鑰通過網路傳給客戶端,然後安全鏈結就建立了,之後發出的包都是通過這個安全鏈結來傳送的,這個安全鏈結是虛擬的,只是每乙個資料報的首部都增加了乙個對應的ssl頭部的字段,經過解密以後才能得到http包的內容,客戶端收到包後,需要使用服務端給傳送過來的公鑰來進行相應欄位段的解密,解密成功以後,才可以得到對應的http包。

這裡就需要用到ca來保證這個服務商發布的軟體是安全的,ca會給這個服務商頒發乙個數字證書,這個證書就可以證明這個軟體是安全的,我們可以放心使用。那麼,這個證書頒發機構肯定是權威的,不然出了問題找誰去呢,對吧。比如我們新建了乙個**,這個**沒有經過ca認證,沒有給你頒發證書,那你的**到底安全不安全呢,這時候如果有客戶訪問我們的**,就會彈出來乙個框告訴我們這個**不一定安全,出了什麼事你自己兜著。這時候膽子小點的,或者擔心中招的朋友肯定就不會接著訪問了,然後我們的**慢慢就沒人訪問了,那這時候你就需要去權威機構買乙個證書來證明你的**是安全的。所以ca就擔任了這個作用了,這裡只說了道理,具體的可以上 和 這看看。

接下來是具體的命令:

//自定義自己的ca來給自己頒發證書

openssl req -new -x509 -key server1024.key -out server.crt -days 365

//顯示自定義的ca的具體資訊

openssl x509 -text -in server.crt

//修改ca的配置檔案(/etc/pki/tls/openssl.cnf)

把dir改為絕對路徑

//到/etc/pki/ca/生成對應的私鑰

(umask 077; openssl genrsa -out private/cakey.pem 2048)

//根據私鑰生成對應的自簽證書

openssl req -new -x509 -key private/cakey.pem -out cacert.pem

//在/etc/pki/ca/下生成對應的其他檔案

mkdir certs newcerts private

touch index.txt

touch serial

echo 01 > serial

實驗:給自己的httpd伺服器簽發證書(rhel系列)

1. 到/etc/httpd/目錄下建立乙個ssl目錄

2. 為httpd伺服器生成私鑰

3. 為httpd伺服器生成申請

之後填寫申請表

4. 填完之後,就可以拿著申請去簽名了,下面是簽名命令

5. 截止此處證書簽發完畢

6. 作為ca,怎麼檢視自己簽發過的申請呢?

cd /etc/pki/ca

cat index.txt   中存放的是簽發過的ca證書資訊

cat serial    //下個ca證書的序列號

7. 生成測試用的證書,僅在rhel系列

此方法僅用在測試中,因為私鑰也在證書中

Openssl建立SSL雙向認證連線原始碼

include stdio.h include string.h include openssl ssl.h include openssl bio.h include openssl err.h pragma comment lib,ws2 32.lib pragma comment lib,li...

Openssl建立SSL雙向認證連線原始碼

include stdio.h include string.h include openssl ssl.h include openssl bio.h include openssl err.h pragma comment lib,ws2 32.lib pragma comment lib,li...

加密傳輸SSL協議1 OpenSSL的安裝

終於在自己不斷的奮鬥之後,來到科大的一波考試過去了,但是為了不使自己過於放鬆,回顧一下之前的東西,做一下筆記。所以新開乙個專題筆記 當然支援ssl協議的軟體庫很多,但是推薦一款開源的openssl,因為安全軟體嘛,你的安全要放在桌面上,讓大家看的見,不能有隱藏的漏洞。正式開始 講解實驗的環境 vmw...