【WP引越し】サーバーSSL設定のWeb認証・DNS認証方法

この記事では、WordPressサイトの引っ越し(サーバー移行)の際、移行先のサーバーでネームサーバーの変更前にSSL設定を行う方法を説明します。

こんな時におすすめ
  • SSL化(https化)されたWordPressサイトを移行する
  • SSL化の状態を維持したまま移行したい(移行に伴い一時的にSSLが無効になるのを避けたい)
SSL化されたサイトを移行する場合、基本的にはサーバーの切り替えに伴い、一時的にSSLが無効になる時間が発生します。

一部のレンタルサーバーでは、SSL証明書を事前に移行先サーバーへインストール・有効化することができるため、これによって一時的にSSLが無効化されることなくサイトを移行することができます。

SSLの一時無効化を避けられるレンタルサーバー
  • Xserver(エックスサーバー)
  • wpX Speed
  • ColorfulBox
  • さくらのレンタルサーバ
  • mixhost

Xserver/wpX Speedの設定手順

  XserverまたはwpX Speedの場合、下記のマニュアルの方法で移行先サーバーに事前にSSLを設定することができます。

作業の流れは次のようになります。

STEP.1
必要なファイル等のダウンロード

SSL設定には、「外部サーバーでのWeb認証」と「外部ネームサーバーでのDNS設定」2通りの方法があります。お好きな方法を選び、各手順の1~3までを行います。

注意
STEP.2(Xserverマニュアルの手順4)の作業が完了するまでは、Xserverマニュアル手順3の画面から他のページへ遷移しないようにしてください。
STEP.2
ファイルを移行元サーバーへ設置、またはDNSレコードを追加

Xserverマニュアルの手順4は、それぞれ下記を参考に行ってください。

STEP.4
移行先での設定を完了する

移行元での作業を終えたことを確認出来たら、Xserverマニュアルの手順5以降へ進みます。

『独自SSL設定を追加しました。』の画面まで進めば設定完了です。

ColorfulBox/さくらのレンタルサーバ/mixhostの設定手順

これらのレンタルサーバーに移行する場合、次のような手順で移行時に一時的にSSLが無効になるのを避けることができます。

    1. 仮のSSL証明書を作成(無料)し、サーバーへ設定する
    2. サイトデータの設置を行う※1の前に済ませておいてもOK
    3. ネームサーバーの変更(移行元→移行先への切り替え)
    4. レンタルサーバーが提供する無料SSLへと設定を切り替える

ここからは具体的に証明書の作成~サーバーへの設定までの手順を紹介していきます。

STEP.1
SSLなう!を使ってLet's Encryptに登録

SSLなう!(無料でSSL証明書を発行できるWebサービス)を使ってLet’s Encryptに登録します。

参考:無料SSL証明書のLet’s Encryptとは? | さくらのSSL

メールアドレス入力>利用規約同意にチェック>登録をクリック

しばらく待ってこのような画面になれば登録完了です。OKを押して次へ進みます。

STEP.2
チャレンジトークンの取得

移行先のドメイン名を入力し、「トークンを取得」をクリックします。

しばらく待ってこの画面になれば、取得完了です。OKを押して次へ進みます。

STEP.3
ドメイン名の所有確認

次にドメインの所有確認を行います。

注意
ファイルの設置作業が終わるまで、SSLなう!のページを閉じたり、別ページに遷移しないようにしてください。

メモ帳などを用いて、以下のようなファイルを作成します。

  • URL欄内「http://ドメイン/.well-known/acme-challenge/文字列」の文字列部分をファイル名にし、「.txt」などの拡張子を付けずに保存する。
  • 中身に「ファイル内容」の文を貼り付け

作成したファイル(トークンファイル)とURLを使って、Web認証を行います。

Web認証の方法(トークンファイルとURLを使用)

  • ホスト名…「FQDN」の内容
  • 種別…TXT
  • 内容…「TXTレコード(1行です)」の内容

上記のDNSレコード情報を使って認証を行います。

DNS認証の方法(DNSレコード情報を使用)

 

設置完了の確認が取れたら、SSLなう!のページで確認ボタンを押します。

上記のように出たら、OKを押して次へ進みます。

STEP.4
証明書発行申請

次に証明書の発行申請を行います。

「生成」をクリックして秘密鍵を生成します。

上記のように出たらOKを押します。

次に、「証明書発行申請」をクリックします。

証明書の発行が完了しました。

この後は、サーバーへSSL証明書をインストールします。

ColorfulBoxのサーバーにSSL証明書を登録する方法を紹介します。

STEP.1
SSL/TLSメニューを開く

cPanelにログインし、「SSL/TLS」メニューを開きます。

STEP.2
SSLサイトの管理

「サイトのSSLのインストールおよび管理(HTTPS)」から、「SSLサイトを管理します。」リンクをクリックします。

STEP.3
SSLインストール先のドメインを選択

画面下方「SSLWebサイトをインストールします」部分で、移行先ドメインを選択します。

STEP.4
cert.pem(サーバ証明書)を証明書(CRT)へ貼り付け

SSLなう!で発行した証明書のうち「cert.pem(サーバ証明書)」欄の文字列をcPanelの「証明書(CRT)」欄に貼り付けます。

STEP.5
サーバで使用するSSL秘密鍵を秘密キー(KEY)へ貼り付け

SSLなう!で生成した「サーバで使用するSSL秘密鍵」をcPanelの「秘密キー(KEY)」に貼り付けます。

STEP.6
chain.pem(中間証明書)を証明機関バンドル(CABUNDLE)へ貼り付け

最後に、SSLなう!で発行した証明書のうち「chain.pem(中間証明書)」をcPanelの「証明機関バンドル(CABUNDLE)」に貼り付けます。

MEMO

発行した証明書「fullchain.pem (サーバ証明書 + 中間証明書)」は使用しません。

「証明書のインストール」をクリックします。

「SSL証明書が正常に更新されました」との案内が出れば、証明書の設定は完了です。

続いて、さくらのレンタルサーバーに証明書を登録します。

STEP.1
ドメイン/SSLメニュー

管理パネルのメニューから「ドメイン/SSL」をクリック>当該ドメインの「SSL」をクリックします。

STEP.2
SSL登録設定を始める

「登録設定を始める」をクリック>独自SSLの「利用する」をクリックします。

STEP.3
秘密鍵の登録

「秘密鍵の登録」をクリックします。

秘密鍵をアップロードするために、ここでSSLなう!のページに戻り、「サーバで使用する SSL 秘密鍵」の文字列をメモ帳にコピーし保存します(ファイル名は任意。画像例では”key.txt”と保存)。

さくらのレンタルサーバーにもどり、「右側の秘密鍵のアップロード」の「ファイルを選択」から先ほどのファイルを選択後、プレビューが表示されます。「秘密鍵のアップロード」をクリックしてください。

秘密鍵のアップロードがうまくいかない場合

左側の「秘密鍵を生成」から秘密鍵をダウンロードし、SSLなう!の証明書発行申請に戻ります。生成した秘密鍵の文字列をSSLなう!の秘密鍵の欄にペースト後、「証明書発行申請」をクリック>以降同じ手順で進みます。

STEP.4
証明書のインストール

秘密鍵の登録が終了するとStep3,4に進めます。「3. CSRの作成」は任意です。次の「4. SSL証明書インストール」をクリックしてください。

SSLなう!に戻り、STEP.4 証明書発行申請で発行した証明書のうち「cert.pem(サーバ証明書)」欄の文字列をさくらのレンタルサーバ「証明書のインストール」に貼り付けし、「作成」に進んでください。

STEP.5
中間証明書インストール

 

次に、中間証明書のインストールに進み、SSLなう!で発行した証明書のうち「chain.pem(中間証明書)」欄の文字列をさくらのレンタルサーバの「中間証明書インストール」に貼り付けて、「作成」をクリックします。

MEMO

発行した証明書「fullchain.pem (サーバ証明書 + 中間証明書)」は使用しません。

STEP.6
SNI SSLを利用する

この時点でSSL証明の設定は「設定中:SNI  SSL」となっています。

ドメイン設定に戻り、SSLの利用で「SNI SSLを利用する」を選択し、「保存する」と進んでください。

ドメインのSSL設定にもどると「利用中:SNI SSL」と表示されます。これで仮のSSL証明書の登録は完了です。

続いて、mixhostのサーバーに証明書を登録します。

STEP.1
SSL/TLSメニューを開く

cPanelにログインし、「SSL/TLS」メニューを開きます。

STEP.2
SSLサイトの管理

「サイトのSSLのインストールおよび管理(HTTPS)」から、「SSLサイトを管理します。」リンクをクリックします。

STEP.3
SSLインストール先のドメインを選択

画面下方「SSLWebサイトをインストールします」部分で、移行先ドメインを選択します。

STEP.4
cert.pem(サーバ証明書)を証明書(CRT)へ貼り付け

SSLなう!で発行した証明書のうち「cert.pem(サーバ証明書)」欄の文字列をcPanelの「証明書(CRT)」欄に貼り付けます。

STEP.5
サーバで使用するSSL秘密鍵を秘密キー(KEY)へ貼り付け

SSLなう!で生成した「サーバで使用するSSL秘密鍵」をcPanelの「秘密キー(KEY)」に貼り付けます。

STEP.6
chain.pem(中間証明書)を証明機関バンドル(CABUNDLE)へ貼り付け

最後に、SSLなう!で発行した証明書のうち「chain.pem(中間証明書)」をcPanelの「証明機関バンドル(CABUNDLE)」に貼り付けます。

MEMO

SSLなう!で発行した証明書「fullchain.pem (サーバ証明書 + 中間証明書)」は使用しません。

貼り付けたら、「証明書のインストール」をクリックします。

「SSL証明書が正常に更新されました」との案内が出れば、証明書の設定は完了です。

Web認証の方法(トークンファイルとURLを使用)

以下二つを使ってSSL設定に必要なWeb認証を行う方法を説明します。

  • 設置URL
  • トークンファイル
STEP.1
トークンファイルを移行元サーバーにアップロード

多くのレンタルサーバーでは、Webからサーバー上のファイルを作成・編集できるファイルマネージャー機能を提供しているので、これを利用して移行元のサーバー上にトークンファイルをアップロードします。

注意
ファイルのアップロード先は移行元のサーバーです。移行先のサーバーではないのでご注意ください!

 

設置URL「https://ドメイン名/.well-known/acme-challenge/文字列…」にアクセスした際にファイルが表示されるように、ファイルをアップロードします。

 

アップロードする場所は、「WordPressを設置しているディレクトリ/public_html/ドメイン名/.well-known/acme-challenge」内です。

お使いのサーバーによってpublic_htmlとドメイン名が前後している、public_html以外のフォルダ名称(wwwなど)である場合があります。画像例では、「/public_html/ドメイン名/.well-known/acme-challenge/トークンファイル名」となるようにアップロードしています。

注意
  • お使いのファイルマネージャーによって、「.well-known」のように先頭に.(ドット)がついたファイルが非表示の設定になっている場合があります。
  • 「.well-known」や「acme-challenge」フォルダがあらかじめ存在しない場合は、自分で同じ名前のフォルダを作成する必要があります。
STEP.2
設置URLへアクセスして確認

ブラウザから設置URLにアクセスし、上記のようにトークンファイルの中身が表示されるか、アクセスした際にファイルがダウンロードされれば正しく設置できています。

表示されない場合は、ファイルの設置場所や、ファイル名がテキスト形式(.txt)になっていないかなどを確認してください。

ファイル名がテキスト形式になっている場合は、ファイルマネージャー上で直接ファイルの編集を行うか、.txt形式でない同じ内容のファイルを作成してアップロードしましょう。

設置URLにファイルが正しく反映されていることを確認したら、移行先サーバーでの設定作業に移りましょう。

DNS認証の方法(DNSレコード情報を使用)

以下のようなDNSレコード情報を使って、SSL設定に必要なDNS認証を行う方法を説明します。

  • ホスト名(例: _acme-challenge.sample.jp)
  • 種別(例: TXT)
  • 内容(例: hfkcUi61B8kIIGVvF0l3UimKOmrLeLVszm05xKzylSw)
STEP.1
サーバーでDNSレコードの追加設定を行う

移行元のレンタルサーバーでDNSレコードを追加します。 ここでは、Xserverでの設定を例に追加方法を解説します。 サーバーパネルから「DNSレコード設定」を選択>ドメイン一覧から対象ドメインを選択します。

STEP.2
DNSレコードの追加
「DNSレコードを追加」を選び、各欄にホスト名、種別、内容を入力し、「確認画面へ進む」をクリック 入力内容を確認して、「追加する」をクリックすると追加が完了します。 「DNSレコード一覧」を選択すると、レコードが追加されていることを確認できます。 各レンタルサーバーでの具体的な操作方法は下記をご参照ください。
STEP.3
DNSレコードが反映されているか確認

次に、レコードが反映されているかを確認する方法を紹介します。(反映には数時間~1日程度かかることもあります。) Googleが提供するDNSレコード検索ツール『Dig(DNS ルックアップ)』にアクセスし、入力フォームにレコード追加したホスト名を入力>「TXT」ボタンをクリックします。

ページ下部の検索結果に、設定したレコード内容が表示されていればDNSレコードが反映されていることを確認できます。

DNSレコードの追加が完了したら、移行先サーバーでの設定作業に移りましょう。