執行 openssl s_client 指令連線到遠端主機後。終端機上顯示以下輸出。有人可以幫我理解start time
這個日誌中的內容嗎?它代表什麼以及它的格式是什麼?
我相信它應該是掛鐘時間,以微秒為單位。但是我一直無法找到與之相關的文檔。
---
SSL handshake has read 3876 bytes and written 319 bytes
---
New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-SHA
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : TLSv1
Cipher : DHE-RSA-AES256-SHA
Session-ID: 3F4EE3992B46727BE2C7C3E76A9A6A8D64D66EE843CB1BB17A76AE2E030C7161
Session-ID-ctx:
Master-Key: 016209E50432EFE2359DB73AB527AF718152BFE6F88215A9CE40604E8FF2E2A3AC97A175F46DF737596866A8BC8E3F7F
Key-Arg : None
Start Time: 1397678467
Timeout : 300 (sec)
Verify return code: 19 (self signed certificate in certificate chain)
---
DONE
還有什麼方法可以使用 openssl s_client 或 s_time 來測量握手時間和完成請求的時間(tls 的記錄階段)。
s_time 表示握手所花費的總時間和從伺服器取得資源的時間。
使用curl,可能有一種方法可以得到time_appconnect 時間這是握手時間,總時間然後將兩者相減以獲得記錄階段的大致時間。 (忽略查找、請求等所需的時間,因為它們實際上可以忽略不計)。
我正在嘗試測量使用某些防火牆規則和不使用某些防火牆規則建立 TLS 連線所需的時間。
答案1
關於開始時間,它是一個時間戳,您可以透過日期獲取它或透過它進行轉換。
#!/bin/bash
NOW=$(date "+%s") #timestamp
starttime="1397678467"
convert=$(date --date="@$starttime" "+%Y-%m-%d %H:%M:%S")
echo $convert
所以你的時間戳轉換後你會得到這個日期 2014-04-16 23:01:07
您也可以使用 date 命令來幫助您轉換和計算來自 curl -w 輸出的 time_appconnect 和 time_total
嘗試除以 time_appconnect 或 time_total / 60 = 分鐘。因為 time_total 或 time_appconnect 將以秒為單位列印