エックスサーバーでは 無料独自SSL といって、無料でSSL証明書を発行する機能がついています。
この機能では、Let’s Encrypt というSSL証明書を自動で生成するツールを使っているのですが、このツールで生成する証明書の期限は 90日間までと決まっています(参考:証明書の有効期間が90日間な理由 – Let’s Encrypt 総合ポータル)。ですので、定期的に更新作業が必要となります。
エックスサーバーの無料独自SSLでは、一度この機能を設定してしまえば、有効期限から30日前・25日前・20日前にそれぞれ自動更新を行い、有効期限が延長されるようになっています。
但し、時々この更新処理が失敗する時があります。
そのような場合は、エックスサーバーからメールで通知が来ます。
会員ID : pXX99999999
メールアドレス : foo@example.com平素は当サービスをご利用いただき誠にありがとうございます。
エックスサーバー カスタマーサポートでございます。サーバーID「xxxxx」で利用中の下記SSLサーバー証明書に関し、
当サポートで有効期限の延長をするための更新作業を行いましたが、
正常に完了することができませんでした。
このような場合は、サーバーパネルから自分で更新作業を試してみましょう。
手動でSSL証明書を更新する手順
(1) サーバーパネルにログインします。
(2) [SSL設定]メニューを開きます。
(3) 目的のドメインを選択します。
(4) 無料独自SSLが一覧表示されますが、以下の画面のように自動更新がエラーになった旨が表示されているはずです。
ここにある [更新]ボタンを押します。

(5) 更新を試す前に、いくつか確認します。
画面上に確認する項目が表示されますので、1つずつチェックします。

この中にある最初の四角内を抜き出してみます。SSL証明書の更新に成功するためには、以下に気をつけましょう。
- 該当ドメインが存在しない、もしくは有効期限切れなどによりドメインが有効ではない
- DNS参照先サーバーが当サーバーではない
- 「サイト転送」を設定している
- 「アクセス制限」を設定している
- SSLサーバー証明書の発行元によるメンテナンス作業中である
- 該当ドメインが存在しない、もしくは有効期限切れなどによりドメインが有効ではない
- ウェブブラウザでこのドメインにアクセスできれば問題ありません(
http://xxxx
でOK)。 - DNS参照先サーバーが当サーバーではない
- ネームサーバーのことだと思いますが、エックスサーバー以外のネームサーバーであっても、ちゃんと目的のドメインとIPアドレス(エックスサーバーで借りているサーバーのIPアドレス)が紐付けられていれば問題ないはずです。(補足1を参照して下さい)
- 「サイト転送」を設定している
- サーバーパネルで「サイト転送」の設定を行っている場合は、一時的に外しましょう。
- 「アクセス制限」を設定している
- サーバーパネルで「アクセス制限」の設定を行っている場合は、一時的に外しましょう。
- SSLサーバー証明書の発行元によるメンテナンス作業中である
- Let’s Encrypt が使っているサーバーがメンテナンス中ということもありえます。他に問題がないのに、SSL証明書の更新に失敗する場合は、これが原因かもしれません。Let’s Encrypt のサーバー稼働状況は、Let’s Encrypt Status でチェックすることができます。もしメンテナンス中であれば、しばらく待ってから再度チャレンジしましょう。
補足1: DNS参照先サーバーがエックスサーバーで借りたサーバーであるか確認する方法
ターミナルからコマンドを実行できる方は、dig
コマンドで確認できます。例えば、エックスサーバーのネームサーバー ns1.xserver.jp
を使っている場合に、rs.fitallright.com
に紐付けられているサーバーのIPアドレスを確認するには、以下のコマンドを実行します。
$ dig @ns1.xserver.jp rs.fitallright.com
出力結果にIPアドレスが含まれています。これが、エックスサーバーで借りているサーバーのIPアドレスになっているか確認します(IPアドレスはサーバーパネル内で調べることができます)。
(省略)
;; ANSWER SECTION:
rs.fitallright.com. 86400 IN A 183.xxx.xxx.xxx
(省略)
ターミナルが使えない場合は、例えば https://www.digwebinterface.com/ といったウェブのサービスで、dig
コマンドの結果を確認することができます。
※ このウェブサービスの出処に不安はありますが、ここで調べている内容は世界中に全て公開している情報なので特に問題はないと思います。
使い方を簡単に説明しますと、以下のようになります。
(1) 調べるドメイン(もしくはサブドメイン)を入力します。
(2) Type として A を選択します。
(3) Nameserver には、使用しているネームサーバー(の1つ)を指定します。
(4) [Dig] ボタンをクリックします。
(5) 結果が出力されます。ここに IPアドレスが表示されます。
(6) [更新]ボタンを押します。
(7) 成功しましたら、しばらく待ってからウェブブラウザで目的のドメインにアクセスし、SSL証明書の期限を確認しましょう。失敗した場合は、先程の項目をもう一度確認しましょう。
SSL証明書の期限を確認する
ここでは Chrome ブラウザで、目的のドメインにアクセスし、SSL証明書の期限を確認する手順を説明します。
(1) Chrome で目的のドメインにアクセスします。SSL証明書を見るため URLの頭は「https://
」としてアクセスします。
(2) アドレスバーのところにある「保護された通信」という部分をクリックします。

(3) 「証明書」をクリックします。

(4) 「全般」タブに 有効期限が表示されていますので、ここが延長されているか確認します。

おわりに
Let’s Encrypt のサーバーがたまたまアクセスできない状態になっていて自動更新が失敗したのであれば、手動ですんなり更新できるでしょう。そうでない場合は、ここに書いた項目を1つ1つチェックしていきましょう。