IT実践

常時SSL証明書の更新エラー対処法

  • このエントリーをはてなブックマークに追加
  • LINEで送る

上記のような画像がでてビックリされる方も多いと思います。当サイトでも数日の間、表示されてしまっていました。

パスワード、メッセージ、クレジットカード情報などを不正に取得しようとしている可能性があります。

してません…。

中にはそういったサイトもあると思いますが、SSL証明書を失効してしまっているサイトが大多数です。

常時SSLへの対応

Googleらが推し進めている常時SSL化がかなり浸透してきました。
常時SSL化とは、Webサイト全体をHTTPS化する(暗号化する)ことを言います。

以前は個人情報を送信するフォームを設置したページだけに使われるのが一般的でしたがここ数年で急速に常時SSL化が推し進められ、ブラウザによっては、SSL化されていないページは警告表示されるようにまでなってきました。
SSL化が進んだ背景についての詳細はこちらのサイトに詳しく書いてあります。

IISYSでは2017年よりLet’s Encryptを使った常時SSL試験運用をして参りましたが、証明書更新時にいくつかの問題に遭遇しましたので、レポートしておきます。

【現象】一部のドメインで自動更新が効かず、証明書の期限切れを起こしてしまう。

  • Webサーバーによるリダイレクト設定
  • well-knownディレクトリのパーミッション設定
  • WordPress等CMSを動かしている場合のHTTPステータスコードの問題

上記のような環境下でSSL証明書の更新がうまくいかずに期限切れを起こしてしまい、該当ドメインのサイトを開こうとするとブラウザ警告がでて表示されないという事象がネット上でも多く見受けられました。

該当ドメインの本来のルートディレクトリでは無く、認証専用のディレクトリを用意しておく方法で、多くの運用方法に対応することができます。

/usr/local/www/letsencrypt

バーチャルドメイン運用の場合、上記のようなディレクトリを作成しておき、それをwebrootに指定します。

# certbot certonly --webroot -w /usr/local/www/letsencrypt -d DOMAINNAME

証明書が無事に発行されたら、Webサーバーの設定をしておきます。

Nginxの設定例

webroot.conf

location ^~ /.well-known/ {
    root  /usr/local/www/letsencrypt;
}

virtualdomain.conf

include webroot.conf;

設定情報を読み込み直します。

nginx -s reload

何か手伝えることはありませんか?

「Web制作の人手が足りない」

「ネットショップの担当者が急に辞めた」

「サーバーの設定が苦手」

「九州のクライアントに対応できる業者を探している」

ご要望にお応えできるかもしれません。
零細ながらもデザイン・システム・サーバー運用全てを自社で15年以上行っているので柔軟な対応が可能です。

Web秘書に無料で聞いてみる

関連記事