LoginSignup
43

More than 5 years have passed since last update.

NginxにSSL証明書をインストールする手順

Posted at

年に一度しかやらないと忘れるので、来年の自分に向けてメモ。

1.csrを作る

% openssl req -new -newkey rsa:2048 -nodes -keyout mydomain.key -out mydomain.csr

2.mydomain.csrを業者に送って証明書を発行してもらう

大抵2、3日かかる。

3.中間証明書をダウンロードする

bundle.crtとかそんな感じの名前が多い。

4.発行された証明書(mydomain.crt)と中間証明書を連結する

と言っても繋げるだけ。

% cat mydomain.crt bundle.crt > mydomain-join.crt

もちろんエディタでやっても可。

5.証明書と鍵をnginxから見えるディレクトリに置く

% cp mydomain.key /etc/nginx/ssl/
% cp mydomain-join.crt /etc/nginx/ssl/

6.nginxにSSLの設定を追加

server {
        listen 443 default ssl;
        ssl on;
        ssl_certificate /etc/nginx/ssl/mydomain-join.crt;
        ssl_certificate_key /etc/nginx/ssl/mydomain.key;
        server_name mydomain.com;
        root /var/www/mydomain;
        error_log /var/log/www/mydomain.log;
        # 以下略
}

7.nginxを再起動*

% /etc/init.d/nginx restart

なお、ワイルドカード証明書などを使って複数のバーチャルホストでSSLを有効にする場合、default sslが複数あるとエラーになって起動しないので注意。2つめ以降はlisten 443だけにする。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
43