보안을 위해 TLSv1.1 또는 TLS v1.2를 사용하여 nginx 서버를 설정해야 합니다. 기본적으로 nginx는 TLSv1을 구성합니다.
문서를 읽어보니 nginx가 다음 지시문을 설정해야 한다는 것을 알았습니다.
ssl_protocols TLSv1.1 TLSv1.2;
http://nginx.org/en/docs/http/configuring_https_servers.html
하지만 명령을 실행하면 다음과 같습니다.
# /etc/init.d/nginx configtest
다음 메시지가 나타납니다:
Testing nginx configuration: [warn]: invalid value "TLSv1.1" in /etc/nginx/nginx.conf: 175 configuration file /etc/nginx/nginx.conf test failed
문서는 거짓말인가?
플랫폼은 Debian Squeeze이고 nginx 버전은 0.7.67입니다.
감사해요
답변1
archive.org에 따르면 (http://web.archive.org/web/20120116033748/http://nginx.org/en/docs/http/configuring_https_servers.html) TLSv1.2 지원은 2012년 1월과 2월 사이에 추가되었습니다. Nginx 0.7.67은 2010년부터입니다.
nginx 1.2의 백포트를 사용하고 싶을 수도 있습니다(http://packages.debian.org/search?keywords=nginx) 그리고 당신은 거의 확실히 OS 업그레이드를 고려하고 싶어합니다 :P
답변2
openssl @ squeeze는 다음과 같습니다. OpenSSL 0.9.8o 01 Jun 2010
그러나 1.0.1x가 필요하므로 openssl-sources를 다운로드하고 사용할 버전을 nginx @ compile-time에 알려줍니다.
./configure ... --with-http_ssl_module \
--with-openssl=/path/to/openssl_source/ ...
나는 backports 등에서 시스템의 openssl 패키지를 업데이트하는 것을 권장하지 않습니다.