내 목표는 내 nginx에 연결하는 클라이언트를 위해 적절한 보안을 유지하는 것입니다. nginx 설치에서 TLS를 올바르게 구성하기 위해 Mozilla 가이드를 따르고 있지만 실제로 사용되는 실제 프로토콜 / 암호 슈트에 대한 개요는 없습니다.
내가 지금 가진 것 :
server {
listen 443;
ssl on;
ssl_certificate /path/to/signed_cert_plus_intermediates;
ssl_certificate_key /path/to/private_key;
ssl_dhparam /path/to/dhparam.pem;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'the_long_ciphersuite_listed_there';
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:50m;
}
이를 통해 연결에 사용 된 SSL 프로토콜과 클라이언트 / 서버가 협상 한 후 선택된 암호 그룹을 기록하고 싶습니다. 예 :
10.1.2.3 - - [13/Aug/2014:12:34:56 +0200] "GET / HTTP/1.1" 200 1234 "-" "User agent bla"
에
10.1.2.3 - - [13/Aug/2014:12:34:56 +0200] ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 "GET / HTTP/1.1" 200 1234 "-" "User agent bla"
이 방법으로 PFS 또는 기타 관련 보안 활성화 기술을 지원하지 않는 오래된 브라우저 나 자동화 된 시스템을 사용하는 클라이언트를 신속하게 식별 할 수 있습니다.
이 정보를 기록하도록 nginx를 어떻게 구성합니까?