溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Ceph OpenSSL的示例分析

發(fā)布時(shí)間:2021-12-17 09:45:47 來源:億速云 閱讀:121 作者:小新 欄目:云計(jì)算

這篇文章主要為大家展示了“Ceph OpenSSL的示例分析”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Ceph OpenSSL的示例分析”這篇文章吧。

Ceph OpenSSL


1. SSL介紹

SSL(Secure Sockets Layer 安全套接層),及其繼任者傳輸層安全(Transport Layer Security,TLS)是為網(wǎng)絡(luò)通信提供安全及數(shù)據(jù)完整性的一種安全協(xié)議。TLS與SSL在傳輸層對網(wǎng)絡(luò)連接進(jìn)行加密。Secure Socket Layer,為Netscape所研發(fā),用以保障在Internet上數(shù)據(jù)傳輸之安全,利用數(shù)據(jù)加密(Encryption)技術(shù),可確保數(shù)據(jù)在網(wǎng)絡(luò)上之傳輸過程中不會被截取及竊聽。一般通用之規(guī)格為40 bit之安全標(biāo)準(zhǔn),美國則已推出128 bit之更高安全標(biāo)準(zhǔn),但限制出境。只要3.0版本以上之I.E.或Netscape瀏覽器即可支持SSL。

SSL協(xié)議提供的安全通道有以下三個(gè)特性:

  • 機(jī)密性:SSL協(xié)議使用密鑰加密通信數(shù)據(jù)。

  • 可靠性:服務(wù)器和客戶都會被認(rèn)證,客戶的認(rèn)證是可選的。

  • 完整性:SSL協(xié)議會對傳送的數(shù)據(jù)進(jìn)行完整性檢查。

1.1 ssl證書分類

SSL證書依據(jù)功能和品牌不同分類有所不同,但SSL證書作為國際通用的產(chǎn)品,最為重要的便是產(chǎn)品兼容性(即證書根預(yù)埋技術(shù)),因?yàn)樗鉀Q了網(wǎng)民登錄網(wǎng)站的信任問題,網(wǎng)民可以通過SSL證書輕松識別網(wǎng)站的真實(shí)身份。SSL證書分為如下種類:

  • 擴(kuò)展驗(yàn)證型(EV)SSL證書

  • 組織驗(yàn)證型(OV)SSL證書

  • 域名驗(yàn)證型(DV)SSL證書

上述三種證書存在一些差別,這里進(jìn)行簡單敘述:

  • DV和OV型證書最大的差別是:DV型證書不包含企業(yè)名稱信息;而OV型證書包含企業(yè)名稱信息。

  • OV型和EV型證書,都包含了企業(yè)名稱等信息,但EV證書因?yàn)槠洳捎昧烁訃?yán)格的認(rèn)證標(biāo)準(zhǔn),瀏覽器對EV證書更加“信任”,當(dāng)瀏覽器訪問到EV證書時(shí),可以在地址欄顯示出公司名稱,并將地址欄變成綠色。

  • 三種SSL證書的價(jià)格一般按照EV,OV,DV逐個(gè)遞減。

2. HTTPS介紹

HTTPS(Hypertext Transfer Protocol Secure)安全超文本傳輸協(xié)議。它是由Netscape開發(fā)并內(nèi)置于其瀏覽器中,用于對數(shù)據(jù)進(jìn)行壓縮和解壓操作,并返回網(wǎng)絡(luò)上傳送回的結(jié)果。HTTPS實(shí)際上應(yīng)用了Netscape的完全套接字層(SSL)作為HTTP應(yīng)用層的子層。(HTTPS使用端口443,而不是象HTTP那樣使用端口80來和TCP/IP進(jìn)行通信。)SSL使用40 位關(guān)鍵字作為RC4流加密算法,這對于商業(yè)信息的加密是合適的。https是以安全為目標(biāo)的HTTP通道,簡單講是HTTP的安全版。即HTTP下加入SSL層,https的安全基礎(chǔ)是SSL。

3. Civetweb配置SSL

3.1 前提

操作前需要創(chuàng)建桶bucket1,并將權(quán)限設(shè)置成公開訪問,為了驗(yàn)證的直觀性,建議同時(shí)上傳多個(gè)對象,如obj1,obj2...并且將對象的權(quán)限也設(shè)置成公開訪問,這樣便于后續(xù)采用瀏覽器進(jìn)行訪問。

3.2 創(chuàng)建一個(gè)自簽名的認(rèn)證

首先需要利用openssl生成根證書,以后的服務(wù)器端證書或者客戶端證書都用他來簽發(fā),可以建立多個(gè)根證書,就像對應(yīng)不同的公司一樣。

#生成根證書的私鑰,參數(shù)des3是加密算法
openssl genrsa -des3 -out server.key 1024
	
#生成服務(wù)器端證書簽名請求文件(csr文件),利用私鑰生成一個(gè)根證書的申請,一般證書的申請格式都是csr。所以私鑰和csr一般需要保存好
openssl req -new -key server.key -out server.csr	

cp server.key server.key.orig

#去除密鑰文件的保護(hù)密碼,每次讀取key文件時(shí)可以不需要口令
openssl rsa -in server.key.orig -out server.key	

#自簽名,有效期10年
openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt	

cp server.crt server.pem

cat server.key >> server.pem

注:在做第二步時(shí),存在common name(CN)選項(xiàng)的設(shè)置,為了與AWS S3的域名訪問規(guī)則一致,可以設(shè)置成*.exampletest.com,其他的選項(xiàng)可隨意。

3.3 使用如下軟連接

需要使用軟連接,否則會出錯(cuò),可在log文件中查看出錯(cuò)信息。

ln -s /lib64/libssl.so.1.0.1e /usr/lib64/libssl.so
ln -s /lib64/libcrypto.so.1.0.1e /usr/lib64/libcrypto.so

3.4 配置端口信息

這里需要在ceph.conf文件中配置rgw_dns_namergw_frontends兩個(gè)參數(shù)信息。

[client.rgw.rgw1]
host = ceph2
rgw_dns_name = exampletest.com

rgw_frontends = "civetweb port=443s ssl_certificate=/etc/ceph/private/server.pem"

注:在rgw_frontends參數(shù)中需要配置3.1節(jié)中生成的ssl證書server.pem的路徑。

3.5 加入域名

在rgw實(shí)例所在的主機(jī)的etc/hosts下加入以下域名映射:

192.168.141.142 bucket1.exampletest.com

4. 訪問驗(yàn)證

4.1 網(wǎng)頁通過https訪問域名

在用瀏覽器訪問的主機(jī)的hosts文件下添加:

192.168.141.142 bucket1.exampletest.com

下面對網(wǎng)站的訪問以IE瀏覽器為例

  1. 無證書訪問

    瀏覽器中直接輸入網(wǎng)址https://bucket1.exampletest.com,可以正確訪問,并且列出桶bucket1中內(nèi)容,但是地址欄會提示證書錯(cuò)誤的字樣,這是由于未導(dǎo)入證書所致。

  2. 有證書訪問

    首先導(dǎo)入證書。

    瀏覽器地址欄輸入網(wǎng)址https://bucket1.exampletest.com 時(shí)會出現(xiàn)鎖形標(biāo)志,表示安全訪問鏈接,并且能夠正確列出桶bucket1中的內(nèi)容。

4.2 通過sdk訪問

為方便測試,這里的證書是自簽名的,不是機(jī)構(gòu)頒發(fā)。所以在sdk中需要通過參數(shù)設(shè)置來繞過證書的檢查。這里以python為例,將與使用http訪問方式不同的兩處地方單獨(dú)做了說明,如下:

url = 'https://192.168.141.142' 

s3 = boto3.client('s3',
                  verify=False, #只需要將此參數(shù)設(shè)置成False
                  endpoint_url=url,
                  aws_access_key_id=access_key,
                  aws_secret_access_key=secret_key
                  )

通過上述修改后就可以正常操作。

以上是“Ceph OpenSSL的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI