nginx를 사용하고 있으며 SSL 세션 재개를 구현하려고합니다. 작동하는지 어떻게 테스트해야합니까?
이 설정을 활성화했습니다 :
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
답변
로컬 테스트 방법은 확실하지 않지만 사이트가 공개 된 경우 ssllabs는 훌륭한 테스트 도구를 제공합니다.
답변
openssl을 사용하여 로컬에서 테스트 할 수 있습니다.
openssl s_client -connect example.com:443 -reconnect -no_ticket
또는 :
openssl s_client -connect example.com:443 -no_ticket -sess_out /tmp/ssl_s
openssl s_client -connect example.com:443 -no_ticket -sess_in /tmp/ssl_s
합니다 ( -no_ticket
옵션은 비활성화에 필요한 클라이언트 측 TLS 세션 티켓 또한 세션 재개를 허용되지만 다른 설정 에서이 nginx
, 그리고에 테스트 제한 캐싱 서버 측 SSL 세션 영업 이익의 구성을 제어합니다.)
첫 번째 명령의 경우 다음과 같이 출력됩니다.
drop connection and then reconnect
CONNECTED(00000003)
---
Reused, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES128-GCM-SHA256
마지막으로 세션 재개시 다음과 같은 결과가 나타납니다.
SSL handshake has read 142 bytes and written 583 bytes
---
Reused, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES128-GCM-SHA256
또는 실패한 경우 :
SSL handshake has read 5855 bytes and written 722 bytes
---
New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-GCM-SHA384
새로운 핸드 셰이크가 더 큰 것을 볼 수 있습니다.