IIS 環境での CSR 作成手順
Windows Server 環境の Microsoft IIS(インターネット インフォメーション サービス)で SSL/TLS 証明書を導入するための CSR 作成方法。
📋 手順(GUI 操作)
-
IIS マネージャーを開く
サーバマネージャーから「ツール」→「インターネット インフォメーション サービス (IIS) マネージャー」を起動します。
または、Windowsキー + R で「ファイル名を指定して実行」を開き、
inetmgrと入力して Enter。 -
サーバ証明書を選択
左側のツリーから、サーバ名を選択します(特定のサイトではなく)。
右側の「機能ビュー」から「サーバ証明書」をダブルクリックします。
-
「証明書の要求の作成」をクリック
右側の「操作」パネルから「証明書の要求の作成...」をクリックします。
ウィザードが起動します。
-
識別名のプロパティを入力
ウィザード画面で、以下の項目を入力します。
項目 入力内容 例 一般名
(Common Name)証明書を導入するサイトのFQDN example.com
ワイルドカードの場合*.example.com組織 正式英語組織名(OV/EVのみ) NIJIMO, INC.組織単位 部署名(任意) IT Departmentまたは空欄市区町村 ローマ字 Shibuya-ku都道府県 ローマ字 Tokyo国/地域 ドロップダウンから日本を選択 JP (Japan)⚠️ OV/EV の組織情報は正確に 組織名・市区町村・都道府県は、iタウンページなど第三者データベースに登録されている情報と一致させてください。不一致の場合、認証局の組織審査で差し戻しになる可能性があります。 -
暗号化サービス プロバイダーのプロパティ
暗号化サービス プロバイダーは 「Microsoft RSA SChannel Cryptographic Provider」を選択(デフォルト)。
ビット長は 2048 を選択。
✅ 推奨設定(2026年版)- 暗号化サービス プロバイダー: Microsoft RSA SChannel Cryptographic Provider
- ビット長: 2048(最低限)/ 4096(より高セキュリティ)
💡 ECC を使いたい場合 ECC(楕円曲線暗号)を使う場合は、「Microsoft ECDH SChannel Cryptographic Provider」を選択します。ただし、認証局や用途によって対応状況が異なるため、まずは RSA 2048bit から始めることをお勧めします。 -
CSR ファイルの保存先を指定
ファイル名を指定(例:
C:\inetpub\csr\example.com.txt)して「完了」をクリック。指定したパスに CSR ファイルが保存されます。
-
CSR ファイルの内容を確認
保存された CSR ファイルをメモ帳などで開き、内容を確認します。
-----BEGIN NEW CERTIFICATE REQUEST----- MIIDhTCCAm0CAQAwQjELMAkGA1UEBhMCSlAxDjAMBgNVBAgMBVRva3lvMRMwEQYD VQQHDApTaGlidXlhLWt1...(省略)... -----END NEW CERTIFICATE REQUEST-----💡 IIS の CSR はNEW CERTIFICATE REQUESTOpenSSL で作成した CSR はBEGIN CERTIFICATE REQUESTですが、IIS で作成した CSR はBEGIN NEW CERTIFICATE REQUESTとなります。どちらも問題なく使用できます。 -
CSR を SSL ストアの管理画面に貼り付け
CSR ファイルの中身(
-----BEGIN NEW CERTIFICATE REQUEST-----から-----END NEW CERTIFICATE REQUEST-----まで全て)を SSL ストアの管理画面の「CSR」欄に貼り付けます。💡 サーバソフトウェアの選択 管理画面でサーバソフトウェアを選択する場面では、「Microsoft IIS」を選択してください。
🔑 PowerShell でのコマンドライン CSR 作成
GUI ではなく、PowerShell でコマンドラインから CSR を作成することもできます。自動化・スクリプト化に便利です。
# INFファイルを作成
$inf = @"
[Version]
Signature="`$Windows NT$"
[NewRequest]
Subject = "CN=example.com, O=NIJIMO INC., L=Shibuya-ku, S=Tokyo, C=JP"
KeySpec = 1
KeyLength = 2048
Exportable = TRUE
MachineKeySet = TRUE
SMIME = False
PrivateKeyArchive = FALSE
UserProtected = FALSE
UseExistingKeySet = FALSE
ProviderName = "Microsoft RSA SChannel Cryptographic Provider"
ProviderType = 12
RequestType = PKCS10
KeyUsage = 0xa0
[Extensions]
2.5.29.17 = "{text}"
_continue_ = "DNS=example.com&"
_continue_ = "DNS=www.example.com&"
"@
# INFファイルを保存
$inf | Out-File -FilePath "C:\temp\example.inf" -Encoding ASCII
# CSR生成
certreq -new "C:\temp\example.inf" "C:\temp\example.csr"
📦 証明書のインストール(証明書発行後)
SSL/TLS 証明書が発行されたら、同じ CSR を作成したサーバ上で 証明書をインポートします。秘密鍵が CSR 作成時に内部的に生成されているため、別のサーバへのインストールはできません。
👉 詳しくは IIS への証明書インストール手順 をご参照ください。
⚡ Win-ACME で完全自動化
❓ よくあるご質問
Q. CSR を作成したサーバとは別のサーバに証明書をインストールできますか?
原則としてできません。IIS で CSR を作成すると、秘密鍵はそのサーバ内に保存されます。証明書のインポートも同じサーバで行う必要があります。
どうしても別サーバに移したい場合は、証明書インポート後に「証明書のエクスポート(秘密鍵を含む)」を行い .pfx ファイルとして書き出してから、別サーバにインポートします。
Q. IIS で作成した CSR を Apache や Nginx で使えますか?
CSR 自体は使えますが、秘密鍵が IIS 内部に保存されているため、そのままでは使用できません。秘密鍵を .pfx 形式でエクスポートし、OpenSSL で PEM 形式に変換する必要があります。
Apache / Nginx で使いたい場合は、最初から OpenSSL コマンドで CSR と秘密鍵を作成することをお勧めします。
Q. ワイルドカード証明書の CSR はどう作成しますか?
「一般名」(Common Name)に *.example.com のように先頭にアスタリスクを付けて入力します。それ以外は通常の CSR 作成と同じです。
Q. 古い IIS 7.5 / 8.5 でも同じ手順で作成できますか?
基本的な手順は同じです。ただし、画面のUI・項目名・ボタン配置は若干異なります。IIS 7.5(Windows Server 2008 R2)はサポート終了のため、可能な限り Windows Server 2019 / 2022 への移行をご検討ください。