채택완료

Nginx http2 적용 안되는 문제

2018-01-03 (수) 16:43:11 3,949

안녕하세요. 개인서버로 사용하는 노트북이 있는데요.

1. OS는 Centos 6.9 32bit 입니다.

238468649_1514964824.977.jpg

2. Nginx 버전 최신버전으로 업데이트

238468649_1514964891.3631.jpg

4. openssl 버전

238468649_1514964990.9881.jpg

3. server.conf

server {
    listen 443 ssl http2;
    server_name  도메인.kr;
    root   /var/www/도메인;
    index  index.html index.php;
...

...

이렇게 되어있습니다.

conf에서 http2 적어줬는데 아래처럼 프로토콜에 http 1.1로 나오네요.

크롬에 HTTP/2 and SPDY indicator 확장 프로그램도 설치했는데 안뜨더라고요.

238468649_1514965379.5181.jpg

더 해줘야 하는 것이 있나요..??

ALPN / NPN Support 지원하는지 안하는지 잘 모르겠네요..

|

답변 3개 / 댓글 3개

채택된 답변
+20 포인트

Open SSL 은 1.0.2 버전부터 ALPN 를 지원하며, 1.0.1 및 이전 버전은 ALPN 을 지원하지 않는다고 합니다. 

답변에 대한 댓글 2개

아 그렇네요.. 설치된 openssl은 1.0.1에서 1.0.2l로 업데이트 했는데 Nginx 빌드된 게 1.0.1 이네요... 안그래도 초보자라 nginx 빌드하는 방법을 모르는데 답변 감사합니다.

설정은 보기에 문제가 없어보이는데.. 웹서버 로그나 에러로그 보시면 혹시나 설정에 무슨 문제가 있어서 안되는 거라면 에러나 워닝같은게 있지 않을까 싶습니다.

http2는 https기반인거는 아시죠? 인증서랑 키 세팅은 하셨을거고..

그리고 tls1.2도 지원해야 합니다. 설정을 확인해 보셔야 할 거 같아요.

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

ssl_prefer_server_ciphers on;

ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:...' 

이런 설정도 확인해 보셔야 해요.

답변에 대한 댓글 1개

ssl on;
ssl_certificate /etc/letsencrypt/live/도메인/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/도메인/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/도메인/fullchain.pem; #Nginx 1.8 이상
ssl_stapling on;
ssl_stapling_verify on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';

ssl_dhparam /etc/nginx/ssl/도메인.pem;
ssl_prefer_server_ciphers on;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:10m;

이렇게 되어있습니다.

답변을 작성하려면 로그인이 필요합니다.