CentOS 5.9에 있습니다.
원격 웹 서버가 TLS 1.2를 지원하는지 (TLS 1.0이 아닌) Linux 쉘에서 결정하고 싶습니다. 그것을 확인하는 쉬운 방법이 있습니까?
관련 옵션이 openssl
보이지 않지만 아마도 뭔가를 간과하고 있습니다.
답변
openssl s_client를 사용해야하며 찾고있는 옵션은 -tls1_2입니다.
명령 예는 다음과 같습니다.
openssl s_client -connect google.com:443 -tls1_2
인증서 체인과 핸드 셰이크를 받으면 해당 시스템이 TLS 1.2를 지원한다는 것을 알고 있습니다. 인증서 체인이 보이지 않고 “핸드 셰이크 오류”와 유사한 것이 표시되면 TLS 1.2를 지원하지 않는 것입니다. 각각 -tls1 또는 tls1_1을 사용하여 TLS 1 또는 TLS 1.1을 테스트 할 수도 있습니다.
답변
또한 다음을 사용하여 지원되는 모든 암호를 나열 할 수 있습니다.
nmap --script ssl-enum-ciphers -p 443 www.example.com
그런 다음 출력을 확인하십시오. 지원되는 경우 다음과 같은 것을 얻을 수 있습니다.
| 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