真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

通過Wireshark分析Apache服務(wù)器的SSL協(xié)議工作過程-創(chuàng)新互聯(lián)

文章目錄
  • 一、實驗環(huán)境
  • 二、為Apache服務(wù)器啟用SSL
    • 1.獲取SSL證書
    • 2.修改httpd.conf配置文件
    • 3.修改httpd-ssl.conf配置文件
    • 4.啟動Apache服務(wù)
  • 三、SSL/TLS工作過程分析

站在用戶的角度思考問題,與客戶深入溝通,找到寒亭網(wǎng)站設(shè)計與寒亭網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站制作、網(wǎng)站設(shè)計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋寒亭地區(qū)。一、實驗環(huán)境

操作系統(tǒng):macOS Ventura 13.0.1
Apache:Apache/2.4.54 (Unix),此版本為mac系統(tǒng)默認(rèn)自帶的Apache服務(wù)器版本
Wireshark:Wireshark 4.0.2

二、為Apache服務(wù)器啟用SSL 1.獲取SSL證書

SSL證書可以通過阿里云SSL證書服務(wù)免費購買,但購買后的證書還沒有提交到CA中心,需要填寫域名、申請人等信息后提交CA中心,待驗證通過后簽發(fā)證書,簽發(fā)過程大概幾分鐘就能完成。

證書簽發(fā)完成后按Apache支持的crt格式下載即可,解壓后的文件夾中有3個文件:

  1. 證書文件:以.crt為后綴或文件類型。
  2. 證書鏈文件:以.crt為后綴或文件類型。
  3. 密鑰文件:以.key為后綴或文件類型。

在這里插入圖片描述

當(dāng)然也可以借助于openssl工具在本地生成自簽名的SSL證書,但過程較為繁瑣而且容易出現(xiàn)問題。

2.修改httpd.conf配置文件

在Apache配置文件目錄/private/etc/apache2下,打開httpd.conf文件,進(jìn)行如下修改:

# LoadModule ssl_module modules/mod_ssl.so  # 刪除行首的配置語句注釋符號“#”加載mod_ssl.so模塊啟用SSL服務(wù),Apache默認(rèn)不啟用該模塊。
# Include conf/extra/httpd-ssl.conf  # 刪除行首的配置語句注釋符號“#”。
3.修改httpd-ssl.conf配置文件

在/private/etc/apache2/extra/目錄下,打開httpd-ssl.conf文件,在文件中添加以下內(nèi)容,并按照下文中注釋內(nèi)容進(jìn)行配置。

ServerName # 修改為申請證書時綁定的域名。
    DocumentRoot "/Library/WebServer/Documents"
    SSLEngine on
    SSLProtocol all -SSLv2 -SSLv3 # 添加SSL協(xié)議支持協(xié)議,去掉不安全的協(xié)議。
    SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
    SSLHonorCipherOrder on
    SSLCertificateFile /private/etc/apache2/ssl/9042749_www.atreus.ink_public.crt # 替換成證書文件名。
    SSLCertificateKeyFile /private/etc/apache2/ssl/9042749_www.atreus.ink.key # 替換成證書的密鑰文件名。
    SSLCertificateChainFile /private/etc/apache2/ssl/9042749_www.atreus.ink_chain.crt # 替換成證書鏈文件名
4.啟動Apache服務(wù)

通過命令sudo apachectl start即可啟動Apache服務(wù),通過https:// + IP即可以SSL訪問主頁,默認(rèn)主頁位于/Library/WebServer/Documents路徑下,可自行修改。

在這里插入圖片描述

如果啟動失敗或頁面無法訪問,可以查看/private/var/log/apache2/error_log路徑下的錯誤日志進(jìn)行排查。

三、SSL/TLS工作過程分析

在這里插入圖片描述

上圖為通過Wireshark抓包的數(shù)據(jù),客戶端與服務(wù)器兩臺主機(jī)位于同一局域網(wǎng)中,其中192.168.0.36:53249為客戶端套接字,192.168.0.7:443為服務(wù)器套接字。

最開始的三條數(shù)據(jù)包實現(xiàn)了TCP的三次握手,這表明TLS以TCP作為基礎(chǔ)。其中Seq為序號,Ack為確認(rèn)號,Win為窗口大小(現(xiàn)在允許對方發(fā)送的數(shù)據(jù)量),Len為TCP數(shù)據(jù)部分長度,MSS為大報文段長度,WS表示窗口的放大倍數(shù),SACK_PERM表示通信雙方均支持SACK機(jī)制。

53294 ->443 [SYN] Seq=0 Win=64240 Len=0 MSS=1460 WS=256 SACK_PERM
443 ->53294 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0 MSS=1460 WS=64 SACK_PERM
53294 ->443 [ACK] Seq=1 Ack=1 Win=131328 Len=0

TLS握手與通信階段報文如下所示,總體上可以分為七步。

192.168.0.36 ->192.168.0.7    TLSv1.2    Client Hello
192.168.0.7 ->192.168.0.36    TLSv1.2    Server Hello
192.168.0.7 ->192.168.0.36    TLSv1.2    Certificate
192.168.0.7 ->192.168.0.36    TLSv1.2    Server Key Exchange, Server Hello Done
192.168.0.36 ->192.168.0.7    TLSv1.2    Client Key Exchange, Change Cipher Spec, Encrypted Handshake Message
192.168.0.7 ->192.168.0.36    TLSv1.2    New Session Ticket, Change Cipher Spec, Encrypted Handshake Message
192.168.0.36 ->192.168.0.7    TLSv1.2    Application Data

第一步,Client Hello。瀏覽器給出協(xié)議版本號、客戶端生成的隨機(jī)數(shù)、客戶端支持的加密套件和客戶端支持的壓縮算法。這一步客戶端有可能連續(xù)發(fā)送多個除了端口號和隨機(jī)數(shù)其他信息均一致的Client Hello包,目的是避免超時重傳影響用戶體驗。

在這里插入圖片描述

第二步,Server Hello。服務(wù)器會確認(rèn)雙方最終使用的TLS版本號、加密套件以及其它一些必要信息,同時還會發(fā)送一個服務(wù)器生成的隨機(jī)數(shù),這個隨機(jī)數(shù)稍后會用于生成對話密鑰。其中TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256表明采用了TLS協(xié)議和ECDHE交換算法,并且是RSA公鑰加密。

在這里插入圖片描述

第三步,Certificate。服務(wù)器發(fā)送證書給客戶端,該證書用于向客戶端確認(rèn)服務(wù)器的身份??梢钥吹?,我這里證書申請時用的是域名為www.atreus.ink,和服務(wù)器實際域名并不匹配。

在這里插入圖片描述

第四步,Server Key Exchange, Server Hello Done。服務(wù)器會發(fā)送給客戶端Diffie-Hellman算法相關(guān)參數(shù),如下圖中的pubkey參數(shù),這個參數(shù)需要通過網(wǎng)絡(luò)傳給瀏覽器,但即使它被截取也不會影響安全性。通過這些參數(shù)后期客戶端可以算出會話密鑰,傳遞完參數(shù)之后,服務(wù)器會告訴客戶端Server Hello結(jié)束了。

在這里插入圖片描述

第五步,Client Key Exchange, Change Cipher Spec, Encrypted Handshake Message。瀏覽器收到服務(wù)器發(fā)來的Certificate包之后,運(yùn)行Diffie-Hellman算法生成一個pubkey,這個pubkey也被稱為預(yù)備-主密鑰,然后這個pubkey會被發(fā)送給服務(wù)器,服務(wù)器結(jié)合自己的私鑰解出這個預(yù)備-主密鑰的信息,得到第三個隨機(jī)數(shù)?;谶@三個隨機(jī)數(shù),服務(wù)器和客戶算就可以生成一個一樣的會話密鑰用于通信。

在這里插入圖片描述

第六步,New Session Ticket, Change Cipher Spec, Encrypted Handshake Message。前五步完成后基本上可以說TLS的握手階段已經(jīng)完成了,但是服務(wù)器還會發(fā)送一個Session Ticket給瀏覽器,這個Session Ticket包含了它的生命周期(7200s)以及它的id等信息,有了這個Session Ticket之后,如果出于某種原因?qū)υ捴袛啵托枰匦挛帐?,而此時客戶端只需發(fā)送一個服務(wù)器在上一次對話中發(fā)送過來的Session Ticket就可以繼續(xù)使用上一次連接了。這個Session Ticket是加密的,只有服務(wù)器才能解密,其中包括本次對話的對話密鑰和加密方法等信息。

在這里插入圖片描述

第七步,Application Data。在TLS握手成功且Session Ticket傳遞完畢后服務(wù)器與客戶端就可以進(jìn)行通信了。

在這里插入圖片描述

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧


本文名稱:通過Wireshark分析Apache服務(wù)器的SSL協(xié)議工作過程-創(chuàng)新互聯(lián)
文章鏈接:http://weahome.cn/article/gpigh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部