読者です 読者をやめる 読者になる 読者になる

まちいろエンジニアブログ

南池袋のWebサービス開発会社、株式会社まちいろのエンジニアブログです。

SSLサーバー証明書を更新する手順

SSL

こんにちは、まちいろの井上です。

まちいろでは様々なお客様のサイトを管理しており、日々の運用の中でSSLサーバー証明書の更新作業を行うことがあります。

つい最近も、お客様のサイトのSSLサーバー証明書の更新を行いました。

そこで今日は、XAMPP for Linux 環境でのSSLサーバー証明書の更新手順についてご紹介したいと思います。

SSLサーバー証明書発行の事前準備>CSRの発行

SSLサーバー証明書を発行する前に、CSRの発行が必要となります。

CSRとは、SSLサーバー証明書を発行するための署名要求(Certificate Signing Request)と呼ばれるもので、このCSRを元に認証機関により SSLサーバー証明書の発行が行われます。

それでは、まずはじめにCSR発行の手順についてご紹介します。

Opensslインストール確認

サーバーにSSH接続を行い、サーバーにOpensslがインストールされていることを確認します。

$ openssl version

秘密鍵を生成する

秘密鍵の作成を行うフォルダに移動後、秘密鍵を生成します。

秘密鍵の生成にはgenrsaコマンドを使用します。

$ openssl genrsa -des3 -out ./ssl.key/[秘密鍵名].key 2048

この時、2回パスフレーズを聞かれるので必ず覚えておきましょう。

作成した秘密鍵をもとにCSRを発行する

$ openssl req -new -key ./ssl.key/[秘密鍵名].key -out ./ssl.csr/[CSRファイル名].csr

このコマンドを実行すると下記項目の入力を求められますので、前回CSR発行した際の内容を設定していきます。

項目 説明
Country Name ISO規格の国コード JP
State or Province Name 組織が置かれている都道府県 Tokyo
Locality Name 組織が置かれている市区町村 Toshima-ku
Organization Name 組織の名称 Machiiro.inc
Organization Unit Name 組織での部署名 -
Common Name ウェブサーバのFQDN machiiro.co.jp
Email Address メールアドレス 入力不要
A challenge password パスワード 入力不要
An optional company name 組織名(補助) 入力不要

「Email Address」以降は設定不要なので、何も入力せずEnterを押してください。

万が一、前回の設定内容を忘れてしまった!という方は、下記サイトをご覧ください。

前回のCSR情報を入力することで、設定内容を確認することができます。

https://sstool.cybertrust.ne.jp/support_tool/index02.php

発行したCSRファイルをもとに、SSLサーバー証明書の発行を依頼する

SSL発行会社に依頼して、発行したCSRをもとにSSLサーバー証明書(crtファイル)、中間ファイル(cerファイル)を発行してもらいます。

SSLサーバー証明書の更新

発行されたSSLサーバー証明書(crtファイル)・中間ファイル(cerファイル)を受け取ったら、続いてSSLサーバー証明書SSL設定ファイルの更新を行っていきます。

SSLサーバー証明書をサーバーに配置する

発行されたSSLサーバー証明書(crtファイル)・中間ファイル(cerファイル)をサーバーに配置します。

今回は、例として下記のようなフォルダ構成で行います。

ファイル種別保存先フォルダファイル名
秘密鍵/opt/lampp/etc/ssl.keysample.key
SSLサーバー証明書/opt/lampp/etc/ssl.crtssl.sample.crt
中間ファイル/opt/lampp/etc/ssl.crtssl.sample.cer
SSL設定ファイル/opt/lampp/etc/ssl.confssl.conf

SSL設定ファイルを修正する

SSL設定ファイルのバックアップを取得後、下記のように設定ファイルの設定値を書き換えます。

項目 設定値
SSLCertificateFile /opt/lampp/etc/ssl.crt/ssl.sample.crt
SSLCertificateKeyFile /opt/lampp/etc/ssl.key/sample.key
SSLCertificateChainFile /opt/lampp/etc/ssl.crt/ssl.sample.cer

※必ずバックアップを取得してから、SSL設定ファイルの修正を行ってください。

※1台のサーバーで複数ドメインの利用をしている場合は、設定ファイルの中でそれぞれのドメインごとの設定があるので、変更漏れが無いように注意しましょう。

Apacheの再起動を行う

以下のコマンドを実行し、Apacheの再起動を行います。

$ /opt/lampp/lampp stopapache
$ /opt/lampp/lampp startapache

パスフレーズの入力なしでApacheを起動する場合は、下記のパスフレーズの解除を行った後にApacheを再起動してください。

  • keyファイルのパスフレーズを解除する(事前に必ず、keyファイルのバックアップを取得しておいてください。)

    $ openssl rsa -in [秘密鍵名].key -out [秘密鍵名].key

  • Apacheを再起動する

    $ /opt/lampp/lampp stopapache

    $ /opt/lampp/lampp startapache

まとめ

以上で、SSLサーバー証明書の更新作業は完了です。

SSLサーバー証明書には有効期限がありますので、早めに更新の準備を行いましょう。