Help us understand the problem. What is going on with this article?

Let’s Encrypt+NginxでSSLの評価をA+にしたい!

More than 3 years have passed since last update.

Let’s Encryptが開始され、SSLの導入のハードルがぐんと下がりました。
その分、SSLの設定も見直す必要性も出てきます。
SSLの評価を行うことのできるサービス、SSL Server Testを使ってSSLの評価を行ってみましょう。もしFだったら要注意です。

Let’s Encryptの導入

Let’s EncryptのSSL証明書で、安全なウェブサイトを公開
さくらインターネットが公開している上記の記事が参考になります。
しかし、上記設定だと自分の設定(CentOS6.8、nginx1.1.3)だとBだったので諸々調整しました。

調整内容

server {
        listen 443 ssl http2;
        server_name ドメイン名;
        root /usr/share/nginx/html/ドメインで使うディレクトリ;
        index index.php index.html index.htm;

        ssl_certificate         /etc/letsencrypt/live/ドメイン名/fullchain.pem;
        ssl_certificate_key     /etc/letsencrypt/live/ドメイン名/privkey.pem;
        ssl_trusted_certificate /etc/letsencrypt/live/ドメイン名/fullchain.pem;

        ssl_dhparam /etc/ssl/private/dhparam.pem;

        ssl_stapling on;
        ssl_stapling_verify on;
        resolver 8.8.4.4 8.8.8.8 valid=300s;
        resolver_timeout 10s;

        ssl_session_timeout 1d;
        ssl_session_cache shared:SSL:50m;

        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:AES256:AES:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK";
        ssl_prefer_server_ciphers  on;

        add_header Strict-Transport-Security max-age=15768000;
}

ssl_certificateをcern.pemからfullchain.pemに変更するだけでAになりました。

ssl_dhparamは

sudo openssl dhparam 2048 -out /パス/dhparam.pem

で作成します。
ディレクトリは/etc/ssl/private/を作成しましたが必要に応じて変更してください。

上記設定などは、以下のサイトなどが参考になります。
https://blog.kksg.net/posts/nginx-secure-ssl

上記設定をすることによりA+になりました。
SSL_Server_Test__ftype_net__Powered_by_Qualys_SSL_Labs__🔊.jpg

おわりに

もし評価がFだったら脆弱性などがあるかもしれませんので早急に対応しましょう。
新しい脆弱性は次々に出てきますので、何ヶ月か一度評価をしてみて、もし評価が下がっているようでしたら対応することをおすすめします。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away