本文へスキップ
重要 SSL/TLS証明書 47日間ルール正式決定 — ACME自動更新の導入を推奨しております。 Phase 2(100日へ短縮)まで 306日
300,000枚 累計発行
17,206社 利用中
19年 運営
24時間365日 自動発行
AApache + OpenSSL

Apache 環境での CSR 作成手順

OpenSSL コマンドを使った 2048bit RSA / ECC P-256 の CSR 作成方法を、2026年版の推奨設定でご案内します。

📋 対応バージョン Apache 2.4 系 / OpenSSL 1.1.1 以降(推奨: OpenSSL 3.0 以降)。Linux(RHEL / Ubuntu / Debian / Alma / Rocky など)・macOS で動作します。

⚠️ 必ずお読みください

免責事項 本文書の内容によって生じた結果の影響について、弊社では一切の責任を負いかねますことをあらかじめご了承ください。本文書は基本的な構成を想定しています。お客様のシステム環境や構成、設定状況などにより、手順や画面表示が変わることがあります。

🛠️ 事前準備

  • サーバに OpenSSL がインストールされていること(バージョン確認: openssl version
  • 作業用ディレクトリへの書き込み権限があること
  • 運営組織情報を準備(OV/EV の場合のみ)
💡 ヒント:パスフレーズなし秘密鍵が推奨 かつてはパスフレーズ付き秘密鍵が一般的でしたが、現代ではパスフレーズなしが推奨されます。Apache 自動起動・再起動時にパスフレーズ入力が不要になり、運用が楽になります。秘密鍵ファイルのパーミッション管理(chmod 600)で十分なセキュリティが担保されます。

📋 手順

  1. OpenSSL のバージョン確認

    まず OpenSSL のバージョンを確認します。

    $ openssl version
    OpenSSL 3.0.13 30 Jan 2024
  2. 秘密鍵(Private Key)の生成

    2048bit RSA 鍵を作成します(パスフレーズなしが現代の標準)。

    RSA 2048bit(推奨)
    $ openssl genrsa -out example.com.key 2048

    より高速な ECC(楕円曲線暗号)も推奨されます。

    ECC P-256(高速・軽量)
    $ openssl ecparam -genkey -name prime256v1 -out example.com.key
  3. 秘密鍵のパーミッション設定

    $ chmod 600 example.com.key
    $ ls -l example.com.key
    -rw------- 1 root root 1675 May 12 14:00 example.com.key
    🔒 重要:秘密鍵の取り扱い 秘密鍵は絶対に外部に漏らさないでください。Gitリポジトリへのコミット・メール送信・第三者への共有は厳禁です。漏洩時は速やかに証明書の再発行が必要です。
  4. CSR(証明書署名要求)の生成

    対話形式で組織情報を入力します。

    $ openssl req -new -key example.com.key -out example.com.csr -sha256
    Country Name (2 letter code) [AU]:JP
    State or Province Name (full name) []:Tokyo
    Locality Name (eg, city) []:Shibuya-ku
    Organization Name (eg, company) []:NIJIMO, INC.
    Organizational Unit Name (eg, section) []:
    Common Name (eg, server FQDN or YOUR name) []:example.com
    Email Address []:
    A challenge password []:
    An optional company name []:

    各項目の入力ルール:

    項目入力例備考
    Country NameJP2文字の国コード
    State or ProvinceTokyo都道府県(ローマ字)
    Locality NameShibuya-ku市区町村(ローマ字)
    Organization NameNIJIMO, INC.OV/EVは第三者DBと一致必須
    Common Nameexample.comFQDN。ワイルドカードは *.example.com
    その他項目空欄空欄推奨
  5. CSR の内容確認

    $ cat example.com.csr
    -----BEGIN CERTIFICATE REQUEST-----
    MIIChzCCAW8CAQAwQjELMAkGA1UEBhMCSlAxDjAMBgNVBAgMBVRva3lvMRMwEQYD
    ...(省略)...
    -----END CERTIFICATE REQUEST-----
  6. CSR を SSL ストアの管理画面に貼り付け

    生成された CSR の中身を SSL ストアの管理画面の「CSR」欄に貼り付けます。サーバソフトウェアは「Apache」または「Apache以外」を選択。

📦 ワンライナー(コピペで使える)

RSA 2048bit ワンライナー(非対話)
openssl req -new -newkey rsa:2048 -nodes -sha256 \
  -keyout example.com.key \
  -out example.com.csr \
  -subj "/C=JP/ST=Tokyo/L=Shibuya-ku/O=NIJIMO, INC./CN=example.com"
ECC P-256 ワンライナー(非対話)
openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:P-256 -nodes -sha256 \
  -keyout example.com.key \
  -out example.com.csr \
  -subj "/C=JP/ST=Tokyo/L=Shibuya-ku/O=NIJIMO, INC./CN=example.com"

⚡ ACME 自動更新を使うなら CSR 作成不要

certbot / acme.sh は CSR を自動生成します ACME クライアントを使えば、CSR の手動生成・管理画面への貼り付け・証明書ファイルのアップロードなどがすべて自動化されます。47日ルール時代の運用には ACME がほぼ必須です。

❓ よくあるご質問

Q. パスフレーズ付き秘密鍵を使うべきですか?

現代ではパスフレーズなしが推奨されます。Apache 自動起動・再起動時にパスフレーズ入力プロンプトが出てしまい、無人運用ができなくなるためです。秘密鍵のパーミッションを 600 に設定すれば十分です。

Q. RSA と ECC、どちらを選ぶべき?

互換性最優先なら RSA 2048bit、性能優先なら ECC P-256。ECC は鍵長が短く、ハンドシェイクが軽量です。

Q. ワイルドカード証明書の CSR はどう作成しますか?

Common Name に *.example.com のように先頭にアスタリスクを付けて入力します。

Q. 秘密鍵を紛失してしまいました

新しい CSR を作成して再発行を申請してください。当店で販売している証明書は、同一コモンネームであれば無料・回数無制限で再発行可能です。詳しくは 再発行の手続き をご参照ください。