
- はじめに
- 今回発生した問題
- SSL証明書の「更新」と「再発行」は違う
- SSL証明書の再発行
- CSRとは?
- SSL証明書と秘密鍵が合っているか確認する
- さくらインターネットでSSL証明書を再発行する
- STEP1 新しい秘密鍵とCSRを準備する
- STEP2 さくらインターネットへSSL証明書の再発行を依頼する
- STEP3 認証局によるドメイン認証を行う
- STEP4 再発行されたSSL証明書を取得する
- STEP5 Apacheへ新しいSSL証明書を設定する
- STEP6 Apacheの設定を確認する
- STEP7 SSL証明書が切り替わったか確認する
- SSL証明書を再発行すると有効期限も延長される?
- 今回の原因
- 今後は秘密鍵・CSR・SSL証明書をセットでバックアップする
- まとめ
はじめに
今回は、さくらインターネットで契約しているSSL証明書を再発行した際の手順について紹介します。
さくらインターネットのVPSを契約し、そのVPS上に自社サイトを構築してSSL証明書を設定していました。
SSL証明書の有効期限が近づいてきたため、少し早めに更新作業の準備を進めていたのですが、その途中で誤ってCSRを新しく作り直してしまいました。
その結果、
- 現在サーバーにある秘密鍵
- 新しく作成したCSR
- 以前発行されたSSL証明書
の組み合わせが合わない状態になってしまいました。
SSL証明書は、発行申請時に使用したCSRと、そのCSRを作成した際の秘密鍵がセットになっています。
そのため、CSRや秘密鍵を作り直してしまった場合、以前発行されたSSL証明書をそのまま利用できないことがあります。
今回は、実際に行ったさくらインターネットのSSL証明書再発行手続きについてまとめます。
今回発生した問題
今回の環境は次のような構成です。
- さくらインターネット VPS
- Rocky Linux
- Apache
- 独自ドメイン
- さくらインターネットで契約した有償SSL証明書
SSL証明書の更新時期が近づいてきたため、更新用のCSRを準備しようとしました。
ところが、ここで新しい秘密鍵とCSRを作成してしまったため、現在発行されているSSL証明書との組み合わせが変わってしまいました。
つまり、
以前の秘密鍵
↓
以前のCSR
↓
現在使用しているSSL証明書
という組み合わせだったものが、
新しい秘密鍵
↓
新しいCSR
に変わってしまった状態です。
この新しい秘密鍵に対して、以前のSSL証明書を設定することはできません。
さくらインターネットでも、SSL証明書申し込み後に秘密鍵やCSRを再作成した場合は、証明書の再発行対象になると案内されています。
SSL証明書の「更新」と「再発行」は違う
ここで注意したいのが、SSL証明書の更新と再発行は別の手続きという点です。
SSL証明書の更新
SSL証明書の有効期限を延長するための手続きです。
例えば、
SSL証明書の有効期限が近い
↓
更新手続き
↓
新しい有効期限のSSL証明書を取得
という流れになります。
SSL証明書の再発行
一方、再発行は、現在のSSL証明書の有効期限を延ばすものではありません。
例えば、
- 秘密鍵を削除してしまった
- CSRを再作成した
- SSL証明書発行後にCSR情報を変更した
- サーバーを移行した
- サーバーOSを再インストールした
といった場合に行う手続きです。
さくらインターネットでも、再発行は「有効期限内の発行済みSSL証明書に対する手続き」であり、証明書の有効期限を更新する手続きではないと説明されています。
今回のケースでは、
CSR・秘密鍵を作り直してしまった
という理由なので、更新ではなく再発行が必要になります。
CSRとは?
CSRは、
Certificate Signing Request
の略で、日本語では「証明書署名要求」と呼ばれます。
SSL証明書を認証局に発行してもらう際に提出するデータです。
一般的には、最初にサーバー上で秘密鍵を作成します。
秘密鍵
↓
CSR作成
↓
認証局へCSRを提出
↓
SSL証明書発行
という関係になります。
重要なのは、
SSL証明書と秘密鍵はセット
ということです。
そのため、秘密鍵を作り直した場合はCSRも変わり、以前のSSL証明書を利用できなくなります。
さくらインターネットでも、秘密鍵を紛失・削除した場合には同じ秘密鍵を再作成することはできず、新しい秘密鍵とCSRを作成したうえでSSL証明書を再発行する必要があると説明されています。
SSL証明書と秘密鍵が合っているか確認する
SSL証明書を再発行する前に、本当に秘密鍵と証明書が一致していないのか確認しておくと安心です。
OpenSSLを利用して確認できます。
RSA形式の秘密鍵であれば、例えば次のように確認できます。
openssl rsa -noout -modulus -in private.key | openssl md5
SSL証明書側は、
openssl x509 -noout -modulus -in certificate.crt | openssl md5
CSR側は、
openssl req -noout -modulus -in server.csr | openssl md5
とします。
例えば、
private.key MD5(stdin)= abc123456789...
server.csr MD5(stdin)= abc123456789...
certificate.crt MD5(stdin)= def987654321...
となった場合、
秘密鍵 = CSR
SSL証明書 ≠ 秘密鍵
です。
この状態では、現在の秘密鍵に以前のSSL証明書を設定することはできません。
さくらインターネットでSSL証明書を再発行する
ここから、実際に再発行手続きを行います。
さくらインターネットでは、SSL証明書の再発行はサポート窓口へメールで依頼する方式となっています。
手続きの大まかな流れは次の通りです。
新しい秘密鍵を作成
↓
新しいCSRを作成
↓
さくらインターネットへ再発行依頼
↓
さくらインターネットから認証局へ申請
↓
ドメイン認証
↓
SSL証明書再発行
↓
新しい証明書をVPSへ設置
STEP1 新しい秘密鍵とCSRを準備する
まず、新しい秘密鍵とCSRを準備します。
例えばOpenSSLを使用する場合です。
openssl genrsa -out private.key 2048
続いてCSRを作成します。
openssl req -new -key private.key -out server.csr
CSR作成時には、
Country Name
State or Province Name
Locality Name
Organization Name
Organizational Unit Name
Common Name
Email Address
などの入力を求められる場合があります。
特に重要なのが、
Common Name
です。
Webサイトが、
https://example.com/
であれば、契約内容に応じてCommon Nameを、
example.com
などとします。
CSRを作成したら内容を確認しておきます。
openssl req -in server.csr -noout -text
STEP2 さくらインターネットへSSL証明書の再発行を依頼する
CSRを準備したら、さくらインターネットへSSL証明書の再発行を依頼します。
さくらインターネットの公式サポートでは、再発行依頼用のフォーマットが用意されています。

必要になる主な情報は、
- 会員ID
- 契約者名
- サービスコード
- コモンネーム
- 再発行したいSSL証明書の種類
- 再発行理由
です。
今回であれば、再発行理由として、
SSL証明書更新準備中に秘密鍵およびCSRを再作成したため、
現在発行されているSSL証明書と秘密鍵が一致しなくなりました。
新しく作成したCSRにて証明書の再発行を希望します。
といった内容を記載しました。
公式案内では再発行依頼を、
support@sakura.ad.jp
宛てに送信する形になっています
STEP3 認証局によるドメイン認証を行う
再発行依頼をすると、さくらインターネット側から認証局へ再発行申請が行われます。
その後、必要に応じて認証局によるドメイン認証が行われます。
さくらインターネットの案内では、再発行時も基本的に初回申請時と同様に認証局による審査があり、メール認証が使用されます。企業認証型やEV証明書の場合には電話確認が行われる場合もあります。
認証メールが届いた場合は、メール内に記載されているURLへアクセスして認証を完了します。
認証が完了すると、認証局から新しいSSL証明書が発行されます。
STEP4 再発行されたSSL証明書を取得する
証明書の再発行が完了すると、さくらインターネットから連絡が届きます。
再発行されたSSL証明書を取得します。
ここで注意したいのが、
必ず今回作成した秘密鍵とセットで使用すること
です。
今回の構成は、
private.key
↓
server.csr
↓
再発行されたcertificate.crt
という組み合わせになります。
STEP5 Apacheへ新しいSSL証明書を設定する
Rocky Linux + Apache環境の場合、SSL証明書をサーバーへ配置します。
例えば、
/etc/pki/tls/private/private.key
/etc/pki/tls/certs/certificate.crt
/etc/pki/tls/certs/ca-bundle.crt
などです。
実際の保存場所はApacheの設定によって異なります。
ApacheのSSL設定を確認します。
sudo grep -R "SSLCertificate" /etc/httpd/
例えば、
SSLCertificateFile /etc/pki/tls/certs/certificate.crt
SSLCertificateKeyFile /etc/pki/tls/private/private.key
SSLCertificateChainFile /etc/pki/tls/certs/intermediate.crt
のようになっています。
SSL証明書ではサーバー証明書だけではなく、契約している証明書によっては中間CA証明書の設定も必要です。さくらインターネットも、発行された証明書と対応する中間CA証明書のインストールが必要と案内しています。
STEP6 Apacheの設定を確認する
証明書を入れ替えたら、いきなりApacheを再起動せず、設定ファイルをチェックします。
sudo apachectl configtest
または、
sudo httpd -t
問題がなければ、
Syntax OK
と表示されます。
その後Apacheを再起動します。
sudo systemctl restart httpd
状態を確認します。
sudo systemctl status httpd
STEP7 SSL証明書が切り替わったか確認する
最後に、新しいSSL証明書が正しく適用されているか確認します。
ブラウザから、
https://example.com/
へアクセスします。
ブラウザの証明書情報から、
- 証明書の発行先
- 発行者
- 有効期限
などを確認します。
コマンドでも確認できます。
openssl s_client -connect example.com:443 -servername example.com
証明書の有効期限だけ確認する場合は、
echo | openssl s_client \
-connect example.com:443 \
-servername example.com 2>/dev/null \
| openssl x509 -noout -dates
例えば、
notBefore=...
notAfter=...
と表示されます。
notAfterが証明書の有効期限です。
SSL証明書を再発行すると有効期限も延長される?
ここは間違えやすいところです。
基本的に、再発行はSSL証明書の更新ではありません。
そのため、
再発行した
=
SSL証明書の期限が1年間延びた
という意味ではありません。
さくらインターネットも、再発行は有効期限を更新する手続きではないと明記しています。
また、2026年2月18日以降には一部の1年証明書について再発行時の有効期間に関する変更も行われています。再発行時点の契約内容・残存期間によって扱いが変わる可能性があるため、再発行前に公式情報を確認しておくことをおすすめします。
今回の原因
今回の問題を整理すると、
SSL証明書の更新時期が近づく
↓
更新準備としてCSRを作成
↓
秘密鍵も新しく作成してしまう
↓
以前のSSL証明書と秘密鍵が一致しなくなる
↓
SSL証明書の再発行が必要になる
という流れでした。
SSL証明書を扱うときには、
秘密鍵
CSR
SSL証明書
中間CA証明書
それぞれの役割を理解しておく必要があります。
特に重要なのが秘密鍵のバックアップです。
秘密鍵が残っていれば、現在発行されているSSL証明書をそのまま利用できるケースがあります。さくらインターネットでも、秘密鍵のバックアップがある場合は、秘密鍵をアップロードして発行済み証明書をインストールできると案内されています。
今後は秘密鍵・CSR・SSL証明書をセットでバックアップする
今回の経験から、SSL証明書関連のファイルはまとめてバックアップしておいた方が安全だと感じました。
例えば、
ssl/
├── private.key
├── server.csr
├── certificate.crt
└── intermediate.crt
のように管理します。
ただし、private.keyは名前の通り秘密鍵なので、Web公開ディレクトリなど誰でもアクセスできる場所には絶対に保存しないようにします。
秘密鍵については、
chmod 600 private.key
など、適切なアクセス権限を設定しておくことも重要です。
まとめ
今回は、さくらインターネットで契約しているSSL証明書のCSRを作り直してしまい、既存のSSL証明書と秘密鍵が一致しなくなったため、SSL証明書を再発行した手順について紹介しました。
今回のポイントをまとめると、
- SSL証明書と秘密鍵はセットになっている
- CSRは秘密鍵から作成する
- 秘密鍵・CSRを再作成すると以前のSSL証明書が使えなくなる場合がある
- この場合はSSL証明書の「更新」ではなく「再発行」を行う
- さくらインターネットではサポートへ再発行依頼を行う
- 再発行時には認証局によるドメイン認証が行われる
- 発行されたSSL証明書を新しい秘密鍵と組み合わせてサーバーへ設定する
- 設定後はApacheの設定確認とSSL証明書の有効期限確認を行う
という点です。
SSL証明書の更新作業では、CSRを作成する前に、
現在使用している秘密鍵はどれか
現在のSSL証明書はどの秘密鍵から作られたCSRで発行されたのか
を確認しておくことをおすすめします。
特に本番環境では、既存の秘密鍵や証明書を削除・上書きする前に必ずバックアップを取得しておくと、今回のような再発行作業を避けられる可能性があります。


コメント