SSL化パート1

SSLってなに?

わかりやすいのはSSL/TLS総合解説サイト

さて、これをどうやって実現するか、しかも費用もかけずに

archwikiには次のように記載されている。

Let’s Encrypt は無料の、自動化されたオープンな証明局です。letsencrypt-nginx をインストールすることで nginx プラグインを利用してコマンドラインから直接 SSL 証明書を作成して自動で設定することができます。←見つからなかった。
自己署名証明書を作成してください (キーのサイズや効力の日数は変更できます):
# cd /etc/nginx/
# openssl genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out cert.key
# chmod 600 cert.key
# openssl req -new -key cert.key -out cert.csr
# openssl x509 -req -days 365 -in cert.csr -signkey cert.key -out cert.crt

そのうえで、nginxの設定ファイル(/etc/nginx/nginx.conf)にはこのように設定しろとなっている。

http {
ssl_ciphers “EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH”;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
add_header Strict-Transport-Security “max-age=63072000; includeSubdomains; preload”;
add_header X-Frame-Options DENY;
add_header X-Content-Type-Options nosniff;
ssl_session_tickets off;
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 8.8.4.4 valid=300s; # Google DNS Servers
resolver_timeout 5s;
}←ここでhttpブロックを閉じてしまうのは誤り。だから}を削除

server {
#listen 80; # Uncomment to also listen for HTTP requests
listen 443 ssl;
server_name localhost;

ssl_certificate ssl/server.crt;←認証キーは/etc/nignxに作成したのでディレクトリ表示は誤りのため削除
ssl_certificate_key ssl/server.key;←同上

root /usr/share/nginx/html;
location / {
index index.html index.htmt;←wordpressのためにindex.php;に変更
}
}

}←ここで httpブロックを閉じるために}を加筆

これでnginxを再起動すると、

[warn] 534#534: “ssl_stapling” ignored, issuer certificate not found
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successfulとなって、一応SSLとはなるが「オレオレ認証」の状態なので、中途半端。

この警告表示をなくすためにどうするか→パート2に続く。

カテゴリー: ssl パーマリンク

SSL化パート1 への2件のフィードバック

  1. ピンバック: SSL化パート2 | 分家蔵風人

  2. ピンバック: SSL化パート2 | 分家蔵風人

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です