Bagaimana saya bisa memverifikasi jika TLS 1.2 didukung pada server web jarak jauh dari shell RHEL / CentOS?

102

Saya menggunakan CentOS 5.9.

Saya ingin menentukan dari shell linux apakah server web jarak jauh secara khusus mendukung TLS 1.2 (berbeda dengan TLS 1.0). Apakah ada cara mudah untuk memeriksanya?

Saya tidak melihat opsi terkait openssltetapi mungkin saya mengabaikan sesuatu.

Mike B
sumber

Jawaban:

161

Anda harus menggunakan openssl s_client, dan opsi yang Anda cari adalah -tls1_2.

Contoh perintahnya adalah:

openssl s_client -connect google.com:443 -tls1_2

Jika Anda mendapatkan rantai sertifikat dan jabat tangan, Anda tahu sistem yang dimaksud mendukung TLS 1.2. Jika Anda melihat tidak melihat rantai sertifikat, dan sesuatu yang mirip dengan "kesalahan jabat tangan", Anda tahu itu tidak mendukung TLS 1.2. Anda juga dapat menguji TLS 1 atau TLS 1.1 dengan masing-masing -tls1 atau tls1_1.

Yakub
sumber
8
Dan perlu diingat bahwa Anda harus menggunakan versi OpenSSL yang melakukan TLS 1.2, dan itu berarti CentOS 5 benar-benar keluar.
Michael Hampton
14
Tidak berfungsi di Mac OS X 10.11
Quanlong
Michael Hampton, hanya setup OOB: [me @ server] [~] cat / etc / redhat-release rilis CentOS 5.11 (Final) [me @ server] [~] membuka versi OpenSSL 1.0.2d 9 Jul 2015;)
Kevin_Kinsey
12
@Quanlong homebrew memiliki openssl v1.0.2. Instal kemudian jalankan dengan/usr/local/Cellar/openssl/1.0.2d_1/bin/openssl s_client -connect google.com:443 -tls1_2
Xiao
6
Ini berfungsi dengan baik setelahbrew upgrade openssl
Quanlong
87

Anda juga dapat membuat daftar semua sandi yang didukung menggunakan:

nmap --script ssl-enum-ciphers -p 443 www.example.com

Dan kemudian periksa hasilnya. Jika didukung Anda akan mendapatkan sesuatu seperti ini:

|   TLSv1.2: 
|     ciphers: 
|       TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA - strong
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA - strong
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 - strong
|       TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 - strong
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA - strong
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 - strong
|       TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 - strong
|       TLS_ECDHE_RSA_WITH_RC4_128_SHA - strong
|       TLS_RSA_WITH_3DES_EDE_CBC_SHA - strong
|       TLS_RSA_WITH_AES_128_CBC_SHA - strong
|       TLS_RSA_WITH_AES_128_CBC_SHA256 - strong
|       TLS_RSA_WITH_AES_128_GCM_SHA256 - strong
|       TLS_RSA_WITH_AES_256_CBC_SHA - strong
|       TLS_RSA_WITH_AES_256_CBC_SHA256 - strong
|       TLS_RSA_WITH_AES_256_GCM_SHA384 - strong
|       TLS_RSA_WITH_RC4_128_MD5 - strong
|       TLS_RSA_WITH_RC4_128_SHA - strong
|     compressors: 
|       NULL
Glueon
sumber
4
Sangat sulit berusaha membuat skrip pihak ketiga ini berfungsi. Tuliskan milik saya untuk orang yang tertarik: di sini .
Xavier Lucas
2
Ini bekerja sangat baik untuk saya.
colefner