使用 Openssl 測試指定 SSL 加密法

  • Linux

有的時候只是想測試指定的加密法連線,運作是否正常。最簡單的方式使用Openssl 所提供的連線工具即可以測試。

Client 參數

-msg:用16進位顯示所有協議數據包含handshake
-cipher:指定 cipher 連線
-showcerts:顯示 chain
-curves:指定要用的橢圓算法,client hello的extension中的elliptic_curves
-sigalgs:指定交換key要用的簽名方式,client hello的extension 中的signature_algorithms
-debug 列印出所有是訊息


-ssl2, -ssl3, -tls1, -no_ssl2, -no_ssl3, -no_tls1
選擇用甚麼版本的協議,可以正向反向選取。不要的選no開頭。

# 最基本連線 
openssl s_client -connect [IP]:[port] 

# 看連線細節 
openssl s_client -msg -connect [IP]:[port] 

# 指定連線方式 
openssl s_client -connect [IP]:[port] -cipher ECDHE-RSA-AES128-SHA256 

# 限制只能用TLS1.2連線 
openssl s_client -no_tls1 -no_ssl3 -connect [IP]:[port]
或
openssl s_client -ssl2 -connect [IP]:[port]

Server 參數

-accept 聽的port
-key 使用的KEY
-cert 使用的憑證

openssl s_server -accept 5678 -key server.key -cert server.pem

參考來源

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *