インターネット上で安全な通信を実現するために、SSL/TLS証明書の導入は欠かせません。そして、その証明書を取得するために必要なのがCSR(Certificate Signing Request:証明書署名要求)です。
CSRは、SSL証明書を発行する認証局(CA)に対して、サーバーの情報を提供するためのリクエストファイルです。適切にCSRを作成し、CAに提出することで、正式なSSL証明書を取得できます。
本記事では、CSRとは何かをわかりやすく解説し、OpenSSLを使用した具体的な作成手順を紹介します。
これからSSL証明書を導入しようと考えている方や、CSRの作成手順を知りたい方は、ぜひ最後までご覧ください。
CSRとは?
CSR(Certificate Signing Request、証明書署名要求)とは、SSL/TLS証明書を取得する際に必要となるリクエストファイルのことです。サーバーが自身の情報を認証局(CA: Certificate Authority)に提供し、正式な証明書を発行してもらうために作成されます。
CSRに含まれる情報
CSRには、以下のような情報が含まれます。
- Common Name(CN)
証明書を適用するドメイン名(例:www.example.com
) - Organization(O)
組織名(法人の場合は正式名称、個人なら省略可) - Organizational Unit(OU)
部署名(任意) - Country(C)
国コード(例:日本ならJP
) - State(ST)
都道府県名(例:Tokyo) - Locality(L)
市区町村名(例:Shibuya)
また、CSRを作成する際には、秘密鍵(Private Key)が同時に生成されます。この秘密鍵は、証明書のインストールやサーバーのセキュリティ設定に必要となるため、安全に保管することが重要です。
CSRと秘密鍵の関係
CSRは公開鍵暗唱方式というものを利用しており、秘密鍵とセットで機能します。
- 秘密鍵(Private Key) は、CSRの作成時に同時に生成されるファイルで、サーバー側で保持します。
- CSR は、秘密鍵と紐づく形で認証局に提出し、SSL証明書を発行してもらいます。
- 認証局がCSRを検証し、証明書を発行すると、サーバーにインストールできます。
CSRの内容に間違いがあると、正しい証明書が発行されません。特に「Common Name(CN)」には、SSL証明書を適用するドメイン名を正確に記入することが重要です。
CSRの作成手順
ここからは、実際にCSRを作成する手順を解説します。
OpenSSLを使用する方法(Windows/Linux/Mac)
OpenSSLを利用すると、コマンドラインから簡単にCSRを作成できます。以下の手順で進めていきましょう。
1. OpenSSLのインストールを確認
ほとんどのLinux/MacにはOpenSSLが標準でインストールされていますが、Windowsでは事前にインストールが必要です。以下のコマンドでインストール状況を確認できます。
openssl version
もしインストールされていない場合は、OpenSSLの公式サイトからダウンロードしてください。
2. 秘密鍵の生成
CSRを作成する前に、秘密鍵を生成します。RSA方式(推奨)を使用する場合、以下のコマンドを実行してください。
openssl genpkey -algorithm RSA -out private.key
private.key
はサーバーの秘密鍵です。絶対に外部に漏れないように注意しましょう。
3. CSRの生成
秘密鍵を使ってCSRを作成します。以下のコマンドを実行してください。
openssl req -new -key private.key -out request.csr
実行すると、以下のような情報入力を求められます。適切な内容を入力してください。
項目 | 説明 | 例 |
---|---|---|
Country Name (C) | 国コード(2文字) | JP |
State or Province Name (ST) | 都道府県名 | Tokyo |
Locality Name (L) | 市区町村名 | Shibuya |
Organization Name (O) | 会社名 | Example Inc. |
Organizational Unit Name (OU) | 部署名(任意) | IT Department |
Common Name (CN) | ドメイン名 | www.example.com |
Email Address | メールアドレス(任意) | admin@example.com |
ポイント
- Common Name(CN) は証明書を適用するドメイン名を正確に記入してください(例:
www.example.com
)。 - ワイルドカード証明書を申請する場合は
*.example.com
のように入力します。
4. CSRの確認
作成したCSRの内容を確認するには、以下のコマンドを実行します。
openssl req -text -noout -verify -in request.csr
出力結果に入力した情報が正しく反映されているか確認しましょう。
これでCSRの作成は完了です!次のステップでは、作成したCSRを認証局(CA)に提出し、SSL証明書を取得する手順について説明します。
CSRの提出と証明書の取得
CSRが作成できたら、次のステップは認証局(CA: Certificate Authority)に提出し、SSL証明書を取得することです。このセクションでは、CSRの提出方法と証明書発行後の手順を解説します。
CSRの提出方法
CSRファイル(request.csr
)は、テキストファイルとして保存されています。このファイルの内容をコピーし、SSL証明書を発行する認証局の申し込みページに貼り付けて提出します。
提出手順の一般的な流れ
- SSL証明書の購入
- SSL証明書を提供する認証局で希望の証明書を選択し、購入または申請を行います。
- CSRの提出
- 認証局の申し込みフォームにCSRの内容を貼り付けます。CSRの中身は、テキストエディタで開いてコピーできます。
- ドメイン所有権の確認(DV証明書の場合)
- 認証局がCSRの情報を確認し、ドメイン所有者であることを証明するための手続きを求められます。
- よくある確認方法:
- メール認証:ドメインの管理者メールに届くメールで承認
- DNS認証:指定されたCNAMEレコードをDNSに追加
- ファイル認証:認証局から指定されたファイルをWebサーバーにアップロード
SSL証明書の発行と取得
認証局による審査が完了すると、SSL証明書(.crt
ファイル)が発行されます。発行までの時間は、証明書の種類によって異なります。

証明書が発行されたら、ダウンロードし、サーバーにインストールします。
まとめ
本記事では、CSR(Certificate Signing Request)の作成方法について詳しく解説しました。CSRは、SSL/TLS証明書を取得するための重要なリクエストファイルであり、安全なWebサイト運営には欠かせません。
次のステップ
CSRの作成が完了し、SSL証明書を取得したら、次は 適切なインストールと運用 が重要になります。
- サーバーに証明書を正しくインストールし、HTTPSを有効化する
- 証明書の有効期限を定期的に確認し、期限切れを防ぐ
- Let’s Encryptなどの無料証明書を利用する場合は、自動更新の設定を行う
SSL証明書の導入によって、サイトのセキュリティが向上し、ユーザーの信頼性も高まります。
安全なWeb環境を構築するために、ぜひ今回の手順を参考にしてください!
コメント