Word Press SSL証明書の取得とサイト設定

このエントリーをはてなブックマークに追加

サーバーの設定、必要アプリケーションのインストール、Word Pressのインストールと、サーバー関連の設定が完了し、ドメインの取得とDNSの設定までを実施しました。

ここまで来ると、自分が取得したドメインをアドレスバーに打ち込むと、ブラウザ上にWord Pressの画面が表示されるようになるかと思います。

ただ最近では、Google社がweb上でのSSL暗号化の必須を提案しており、サイトのSSL化が必須の動きが出てきています。
2020年7月現在では、SSL化が行われていないサイトに接続した場合、アドレスバーの左側に警告メッセージが表示されるようになっています。このままいくと、いずれは画面全体に警告メッセージが表示されるようになるかもしれません。

世の中の流れがSSL化に傾いているため、これは従うしかありません。

しかし、お金は極力かけたくない!

SSL証明書も、認証機関によって金額はバラバラです。ECサイトならともかく、個人が運営するブログサイトで高い証明書を使う必要は無いかと思います。そもそも安い証明書でも使用するブラウザがChrome、Firefox、Safariに寄っているところもありますので、なるべく安いものにしました。

本ブログサイトで使用しているのは、Core SSLです。ネットオウルのSSL BOXから購入できます。
一番安いCore SSLは、1年契約で2,000円もかからない金額で利用できます。

ただ、一つだけ問題点があって、契約の際に送信される確認メールがあるのですが、そのメールを受け取るアドレスが、契約するドメインのアドレスである必要があります。
且つ、admin等、決められたパターンのみしか選択できません。

そのため、利用する際には、必然的にメールボックスが必要となります。メールボックスサービスについては、別の記事で解説していきます。

それでは、サイトのSSL化に関する手順を説明していきます。
SSL化を行うには、認証局に証明書を発行してもらう必要があります。そのために必要となるのが署名ファイル、署名ファイルを作成するのに鍵ファイルが必要となります。

まずは、鍵ファイルを作成するために、opensslをインストールします。

#Open SSLのインストール
yum -y install openssl


次に、それぞれのファイルを作成するため、格納用のディレクトリを作成します。

#格納するためのディレクトリに移動
cd /etc/httpd/conf/

#ディレクトリ作成
mkdir ./ssl.key
mkdir ./ssl.csr
mkdir ./ssl.crt


ディレクトリを作成したら、鍵ファイルを作成します。

#暗号鍵ファイルを作成する(kagi_name.keyには管理しやすい名前をつける)
openssl genrsa -out ./kagi_name.key 2048

続いて署名ファイルを作成します。

#作成した鍵ファイルを使用して署名ファイルを作成する (syomei.csrには管理しやすい名前を付ける )
openssl req -new -sha256 -key ./kagi_name.key -out ./ssl.csr/syomei.csr

#実行すると、サイト名や住所等を聞かれるので、入力する
Country Name : JP
State or Province Name : Tokyo
Locality Name : Edogawa-ku
Organization Name : Kanrisha
Organizational Unit Name : Kanri GROUP
Common Name : domainmei.com
Email Address []:
A challenge password []:
An optional company name []:

#Common Nameには、証明書を取得するドメイン名を記入
#A Challenge passwordを入力すると、パスフレーズを登録できるが、Apacheを再起動するたびにパスフレーズ入力を求められる。
#パスフレーズは無しでも登録できるため、今回は設定しない。


作成した署名ファイルを取得します。
コンソールから実行している場合は、catで読み込んで、出力内容をコピーしてもできます。

#ファイルを標準出力上に呼び出す
cat ./ssl.csr/syomei.csr

#BEGIN CERTIFICATE REQUESTからEND CERTIFICATE REQUESTまでをコピー
-----BEGIN CERTIFICATE REQUEST-----
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-----END CERTIFICATE REQUEST-----


続いてSSL管理会社の管理画面に入ります。
当ブログでは、Core SSLを使用しているので、ネットオウルのSSL BOXにログインします。

ログインしたら、SSLボックス管理の新規取得を選択します。
サーバーはGMO ConoHaを使用していますので、他社サーバーで利用するを選択します。

取得する証明書を選択する画面になります。
無料の証明書もありますが、更新作業を3ヶ月に1回実施しなければならないため、一番値段の安いCore SSLを選択しています。

証明書を選択し、支払い方法を入力して、規約に同意することで、証明書の発行依頼をかけることができます。

続いて、CSRを確認されるので、先程の手順で作成したCSRの内容を貼り付けます。
貼り付けると、作成時に入力した内容が表示されますので、内容に誤りがないかを確認して下さい。

登録が完了すると、Core SSLから確認のメールが届きます。
メール内に記載されたリンクより認証画面に移り、メールに記載されたパスコードを入力して下さい。

これを忘れると、いつまでたっても証明書が発行されません(笑)

発行が完了すると、登録済の一覧から証明書、中間証明書をダウンロードできます。

管理画面を開き、証明書、中間証明書をダウンロードします。

コンソールに戻り、証明書、中間証明書をアップロードするか、証明書の内容をコピーします。
めんどくさがりな自分は、viエディタを開いて、ファイルの内容をコピーしてしまいます。

#ディレクトリの移動
cd /etc/httpd/conf/ssl.crt/.

#証明書ファイルをコピー
vi ./syoumei.crt
#エディタが立ち上がったら、ダウンロードした証明書の内容を貼り付け

#中間証明書ファイルをコピー
vi ./chukan.crt
#エディタが立ち上がったら、ダウンロードした中間証明書の内容を貼り付け


最後にssl.confファイルの内容を編集します。
ディレクトリを移動し、ファイルのバックアップを作成します。

#ディレクトリを移動します。
cd /etc/httpd/conf.d

#コンフィグファイルのバックアップを作成
cp -p ./ssl.conf ./ssl.conf_bak

## コンフィグファイル修正
vi ./ssl.conf


それぞれの箇所を作成したファイルの名前に変更します。
【SSLCertificateFile】証明書ファイルの場所
SSLCertificateFile /etc/httpd/conf/ssl.crt/syoumei.crt

【SSLCertificateKeyFile】鍵ファイルの場所
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/kagi_name.key

【SSLCACertificateFile】中間証明書の場所
SSLCACertificateFile /etc/httpd/conf/ssl.crt/chukan.crt

編集が完了したら、Apacheの再起動を行います。

#httpdの再起動
systemctl restart httpd


再起動が成功すれば、https経由での表示が可能となります。
http経由で接続したものを、httpsにリダイレクトしたい場合は、ドキュメントルートに配置している.htaccessファイルに、以下の記述を追記します。

<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteCond %{HTTPS} !=on [NC]
  RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>


以上が、SSL化の手順になります。
証明書の更新は、取得してから1年後となるので、その頃には手順を忘れてしまっている事が多いです。
実行する内容は、手順書を作成してまとめておくと、次回の実行時に役立ちます。

このエントリーをはてなブックマークに追加

スポンサードリンク