> For the complete documentation index, see [llms.txt](https://docs.scepman.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.scepman.com/ja/zheng-ming-shu-guan-li/domain-controller-certificates.md).

# Domain Controller 証明書

{% hint style="info" %}
この機能にはバージョン **1.6** 以降が必要です。

代わりに、弊社の [Active Directory](/ja/zheng-ming-shu-guan-li/active-directory.md) エンドポイントの使用を検討してください。
{% endhint %}

{% hint style="warning" %}
SCEPman Enterprise Edition のみ
{% endhint %}

SCEPman を使用すると、Kerberos 認証証明書をドメイン コントローラーに発行できます。これにより、AAD またはハイブリッド参加済みデバイスがオンプレミス リソースにアクセスする際にシームレスに認証できるようになります。これは **Windows Hello for Business 向けのハイブリッド Key trust**。SCEPman は、 **公開鍵基盤**の要件を置き換えます。詳細は [こちら](https://docs.microsoft.com/en-us/windows/security/identity-protection/hello-for-business/hello-hybrid-key-trust-prereqs)

## 拡張キー使用法 (EKU) 拡張のない Root CA

**この機能には Root CA に対する新しい要件があります。**\
以前のバージョンから更新している場合は **1.6** 、 **新しい** Root CA を生成する必要があります。\
Kerberos 認証証明書をサポートするには、CA 証明書に拡張キー使用法 (EKU) 拡張がまったく含まれていないか、Kerberos Authentication と Smart Card Logon を含める必要があります。

SCEPman から開始し **1.6** 、SCEPman で Root CA を生成する場合は、以下の手順をスキップできます。\
それ以外の場合は、このガイドに従って新しい Root CA を生成してください。

{% hint style="warning" %}
新しい CA 証明書を生成した場合は、Intune ポリシーを更新し、新しい Root CA と新しいユーザー証明書およびデバイス証明書を展開する必要があります。
{% endhint %}

1. 次に、 **Key Vault**
2. ユーザー アカウントが次に追加されていることを確認します **アクセス ポリシー** すべての証明書権限を持つ
3. 次へ移動し **証明書**を選択して、次をクリックします **削除**
4. CA 証明書の削除に成功したら、次をクリックします **削除済み証明書の管理**
5. ステップ 3 で削除した CA 証明書を選択し、次をクリックします **完全に消去** （証明書を完全に消去すると、復元できなくなることに注意してください！）
6. ここで SCEPman App Services を再起動します
7. App Services が再起動したら、SCEPman URL に移動して SCEPman Dashboard を開きます
8. セクション **構成の問題**が表示されるので、このセクションの手順に従ってください。
9. 新しい CA 証明書を生成したら、SCEPman Dashboard で CA の適合性を確認できます。

SCEPman Dashboard での CA 適合性:

![](https://114237723-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-4998f1e56f64d240e4e8d23a9aa886cc8b49724b%2F2022-05-27%2011_09_46-Window.png?alt=media)

## SCEPman サービスの構成変更

この機能を有効にするには、SCEPman サービスに 2 つのアプリケーション設定を追加する必要があります。現在の実装では、DC 要求に事前共有キー（パスワード）を使用します。\
**新しいキー/パスワードを生成し、安全な場所に保管してください。** （以下の手順と、後でドメイン コントローラーで必要になります）

1. へ移動する **App Services**
2. 次に、SCEPman アプリを選択します
3. 次に、 **設定** をクリックします **環境変数**
4. 追加を選択します
5. 種類 **AppConfig:DCValidation:Enabled** を名前として（Linux ベースの SCEPman では : の代わりに \_\_ を使用してください）
6. 種類 **true** を値として
7. で確定 **OK**
8. もう一度 **追加** 選択します
9. 種類 **AppConfig:DCValidation:RequestPassword** を名前として（Linux ベースの SCEPman では : の代わりに \_\_ を使用してください）
10. 次の **キー/パスワード**を値として入力します
11. で確定 **OK**
12. アプリケーション設定を保存します

## Kerberos Authentication 用にドメイン内で CA 証明書を信頼する

Kerberos 認証に使用される証明書は、AD ドメイン内で認証 CA 証明書として信頼されている必要があります。SCEPman Dashboard から CA 証明書をダウンロードしてください。ファイルを `scepman-root.cer`として保存した場合は、Enterprise Administrator 権限を持つアカウントで次のコマンドを使用して SCEPman CA 証明書（Root CA でも Intermediate CA でも可）を公開できます。

```
certutil -f -dsPublish scepman-root.cer NTAuthCA
```

同様に、次のコマンドを実行して、AD フォレスト内のすべてのマシンの Trusted Root 証明書ストアに Root CA 証明書（つまり SCEPman CA 証明書。SCEPman が Intermediate CA の場合は、SCEPman CA 証明書チェーンの Root CA）をプッシュします。

```
certutil -f -dsPublish scepman-root.cer RootCA
```

その後、CA 証明書は AD で一般に信頼され、特に Kerberos Authentication 用に信頼されます。ただし、すべてのデバイスにこの構成が反映されるまでには時間がかかります（既定の構成では最大 8 時間）。次のコマンドを実行すると、この処理を任意のマシンで高速化できます。 `gpupdate /force`。たとえば、ドメイン コントローラー上で実行します。

これにより、DC 証明書がドメイン内で信頼されるようになります。また、Root CA 証明書を配布する信頼された証明書プロファイルの対象範囲内にある、すべての Intune 管理デバイスでも信頼されます。DC 証明書をすべてのシステムで信頼できるようにするには、アプライアンスやクラウド サービスなど他のサービスへ Root CA を手動で配布する必要がある場合があります。

## クライアントへのインストール

次に、オープン ソースの SCEP クライアント ソフトウェアをダウンロードする必要があります [SCEPClient](https://github.com/scepman/scepclient/releases)。接尾辞 *-framework* が付くリリースは .NET Framework 4.6.2 を使用します。これは Windows Server 2016 にプリインストールされており、より新しいバージョンとも互換性があります。その他のリリースでは、対象システムに .NET Core Runtime をインストールする必要があります。

ドメイン コントローラーで昇格したコマンド プロンプトから次のコマンドを実行して、SCEPman から Domain Controller 証明書を受け取ります。

```
ScepClient.exe newdccert https://your-scepman-domain/dc RequestPassword
```

前のコマンドに SCEPman URL を追加する必要がありますが、パスはそのままにしてください `/dc`。 `RequestPassword` を、以前生成した安全なキー/パスワードに置き換えます。

要求パスワードは SCEPman の CA 証明書で暗号化されるため、SCEPman だけが読み取れます。Domain Controller 証明書は、正しい要求パスワードがある場合にのみ発行されます。

### 証明書の自動更新

{% hint style="warning" %}
上記のコマンドでは、有効な証明書がすでに存在するかどうかに関係なく、新しい DC 証明書を要求します。既存の証明書の有効期限が切れそうな場合にのみ証明書を更新する方法については、次のセクションを参照してください。
{% endhint %}

完全自動で証明書を更新するには、ScepClient を **すべての** ドメイン コントローラーに、PowerShell スクリプト [enroll-dc-certificate.ps1](https://github.com/scepman/scepclient/blob/Core31/enroll-dc-certificate.ps1)と一緒に配布する必要があります。次のコマンドを SYSTEM コンテキストで実行するスケジュール タスクを追加してください（URL と要求パスワードは適宜調整します）。

```
powershell -ExecutionPolicy RemoteSigned -File c:\scepman\enroll-dc-certificate.ps1 -SCEPURL https://your-scepman-domain/dc -SCEPChallenge RequestPassword -LogToFile
```

PowerShell スクリプトが SCEPClient.exe および追加の依存関係と同じディレクトリにあることを確認してください。

![スケジュール タスクで実行アクションを構成する](https://114237723-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-732f9e212c1622579da03c12e497e2b1b632aaab%2Fimage%20\(17\).png?alt=media)

これは、マシン ストア内の既存の DC 証明書を確認します。少なくとも 30 日の有効期間がある適切な証明書が存在しない場合にのみ、ScepClient.exe を使用して SCEPman から新しい DC 証明書を要求します。30 日のしきい値を変更する場合は、PowerShell スクリプトの -ValidityThresholdDays パラメーターを使用します。

スクリプトは、保存されているディレクトリに継続的なログ ファイルを書き込みます。このログ ファイルが不要な場合は、 `-LogToFile` パラメーターを省略してください。代わりに、Information、Error、および/または Debug ストリームをファイルにリダイレクトすることもできます（例: `6>logfile.txt 2>&1`).

WHfB では、2016 以降のバージョンで動作するすべての DC に Kerberos Authentication 証明書が必要です。古い DC は認証要求を新しい DC に転送するため、必ずしも Kerberos Authentication 証明書を必要としません。ただし、証明書を提供することもベスト プラクティスです。

### 既存の内部 PKI の段階的廃止

内部 PKI が SCEPman と並行して DC 証明書（証明書テンプレート「Domain Controller」「Domain Controller Authentication」「Kerberos Authentication」）を登録しないようにしてください。そうしないと、たとえば CDP に到達できない場合など、信頼されていないと見なされる内部 PKI の DC 証明書を DC が使用する可能性があります。SCEPman の DC 証明書は、上記のテンプレートの証明書で使用できるすべての用途、たとえば Kerberos Authentication や LDAPS に使用できます。

これを実現する最も簡単な方法は、内部 CA がテンプレート「Domain Controller」「Domain Controller Authentication」「Kerberos Authentication」の証明書を発行しないようにすることです。Certification Authority MMC スナップインで、各内部 CA の発行済みテンプレート一覧からこれらのテンプレートを削除します。次に、内部 CA からすでに発行された証明書を、ドメイン コントローラーの「MY」ストア（`certlm.msc` ）で Personal に移動します。 `gpupdate /force`、その後も、内部 PKI から新しい DC 証明書が DC の Personal ストアに表示されるべきではありません。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.scepman.com/ja/zheng-ming-shu-guan-li/domain-controller-certificates.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
