【EPS技術記事】NetAttest EPS-ap ゼロタッチ証明書配布のご紹介(QND)

水色の背景に六角形が2つあるイラスト 水色の背景に六角形が2つあるイラスト
アイキャッチ
目次

お知らせ

本記事は、2025年11月11日に以前公開していた内容から大幅に更新されています。
特に「ゼロタッチ証明書配布について」以降の内容に変更があります。
過去にご覧いただいていた方は、改めて内容をご確認いただくことを推奨いたします。

概要

NetAttest EPS-ap(ネットアテスト イーピーエス エーピー)」は、インターネット経由でも秘密鍵を外部に漏らさず、安全に証明書の配布ができる製品です。
オールインワン認証アプライアンス 「NetAttest EPS (ネットアテスト イーピーエス)」のオプション製品として、株式会社ソリトンシステムズが開発・販売しています。

NetAttest EPS-ap は、SCEP(Simple Certificate Enrollment Protocol)経由で証明書を配布することにより、端末内の証明書情報(秘密鍵)の漏洩を防ぎ、安全な証明書認証環境を構築することができます。
証明書の配布方法において、EPS-apではSoliton KeyManagerという専用アプリをインストールして使用します。

本記事では、クオリティソフト株式会社のQND(資産管理ツール)を使い、以下の3つの項目についてご紹介します。

・Soliton KeyManagerのサイレントインストール方法

・ユーザーストアへ証明書のインストール方法

・コンピューターストアへ証明書のインストール方法

動作イメージ

事前準備

Soliton KeyManagerをサイレントインストールするバッチファイルを作成します。
例)Soliton  KeyManagerサイレントインストール実行コマンド

"\\(ファイルサーバー)\(共有フォルダ) \SolitonKeyManagerV221.exe" -s

-s:サイレントインストールオプション

Soliton KeyManagerのサイレントインストール方法

QND側の操作

  1. [設定] - [サーバー設定] - [エージェント ]の「ソフトウェア配布のためのファイルを保存するディレクトリ」でバッチファイルを保存するフォルダを確認します。
  2. 確認したディレクトリにフォルダを作成し、バッチファイルを保存します。
    用途に合わせてバッチファイルを保存してください。

  3. [タスク/スケジュール] - [タスク] - [作成]より、バッチファイル配布のタスクを作成します。
  4. タスク名を入力し、「OK」をクリックします。
  5. [イベントリ] - [配布] より、配布するソフトウェア(バッチファイル)を登録します。 
  6. 配布するソフトウェアのプロパティでは、以下のように設定します。
    項目

    1. インストールの重要度強制
    2. 管理者アカウントを使ってインストールを実行する有効
    3. セットアッププログラム名配布するバッチファイルを選択
    4. 転送元ディレクトリ"事前準備"で作成したフォルダを選択
    「3. セットアッププログラム名」
    「4. 転送先ディレクトリ」
  7. 配布するソフトウェア(バッチファイル)を登録後、「OK」をクリックします。
  8. 登録したタスクの実行を行います。
    タスクを実行するクライアント端末を選択し、「収集/実行」をクリックします。
  9. 実行するタスクを選択し、「次へ」をクリックします。
  10. スケジュールの名前を設定し、「次へ」をクリックします。
  11. 実行するタイミングを設定し、「実行」をクリックします。
  12. 以上で、QND側の操作は完了です。

クライアントPC側の操作

  1. QNDでタスクを実行すると、クライアントPCでQNDエージェントが起動します。
    (本記事では実行タイミングは「今すぐ実行」を選択しています。)
    QNDエージェント起動後、数秒ほどでSoliton KeyManagerがクライアントPCにインストールされます。

ゼロタッチ証明書配布について

ゼロタッチ証明書配布を行う際、KeyManagerへのログインにユーザーIDが必要となります。
このユーザーIDを共通の管理者アカウントとしてバッチファイルに埋め込むことで、スクリプトの共通化が可能となり、複数端末への展開や運用が効率化されます。
そのため、バッチファイルに埋め込むユーザーは共通の管理者アカウントを使用するケースが多くなります。

注意事項

1、共通の管理者アカウントを使用して複数端末から同時にコマンド実行
SCEPのMDMチャレンジはユーザーIDごとに生成され保持されます。SCEPリクエストに含まれるMDMチャレンジがこれと一致すれば証明書が自動的に発行されます。
しかし、同一ユーザーIDで複数端末から同時に申請が行われると、後から実施した申請のMDMチャレンジが上書きされて、先に行われた申請のSCEPリクエストが自動発行されずに証明書取得に失敗します。
共通の管理者アカウントをコマンドに埋め込んで配布したスクリプトなどで同時に実行された場合に、この問題が発生する可能性があります。
そのため、コマンド実行時の共通の管理者アカウントにWindowsの環境変数を付けてユニークなユーザーIDにすることで回避可能です。

2、同時処理数
ゼロタッチ証明書配布では複数の端末に自動で証明書配布が可能になります。
しかし、EPS-apまたはEPSの処理能力以上の端末から申請を行うと証明書配布に失敗します。
そのため、AD上のグループ毎で実施やバッチファイルに実行タイミングをずらすスクリプトを記載するなど同時申請数の調整を行ってください。

EPSのアドバンス設定

EPSにて、「共通の管理者アカウント」+「コンピューター名」または「ユーザー名」のユーザーIDでも「共通の管理者アカウント」として認証が成功するように構成します。

例) 「admin01%USERNAME%」、「admin01%COMPUTERNAME%」などを「admin01」として認証させる
サービス管理ページ(https://EPSのホスト名またはIPアドレス:2181)
高度なメニュー>RADIUS>詳細設定>アドバンス設定
・hints_added.in

# RADIUS Hints file
DEFAULT User-Name =~ "admin01.*"
  Just-User-Name := admin01

事前準備

ユーザーログオン時にユーザーストアへ証明書をインストールするバッチファイルを作成します。
実行タイミングを0~3600秒の範囲で遅らせます。
例)ユーザーストアへ証明書のインストール実行コマンド

set /A timeout=%random%*3600/32767                        
timeout /T %timeout% > NUL                        
                        
"C:\Program Files (x86)\Soliton KeyManager\KeyManager.exe" /cl /su /h (EPS-apのホスト名またはIPアドレス) /hp 443 /u admin01%USERNAME% /p password /cn

環境変数「%USERNAME%」は申請するPCのユーザー名が自動的に反映されます。
例えば「/u admin01%USERNAME%」で申請すると、ユーザーIDは「admin01user01」のようになります(%USERNAME%が「user01」の場合)。
また、オプションの「/cn」を使用することで、証明書のCNに申請したPCのユーザー名を設定することができます。

オプション説明
 /clコマンドラインで実行
 /su格納先を指定する(/su = ユーザーストア)
 /hホスト名またはIPアドレスを指定する
 /hpポート番号を指定する
 /u申請ユーザーを指定する
 /p申請ユーザーのパスワード(平文)を指定する
(暗号化したパスワードを使用する場合は、「/ep」オプションを使用する)
 /cn証明書のCNをユーザー名に指定する

※ご紹介しているオプションは一部となります。
 全てのオプションについては製品マニュアルをご参照ください。(現在、マニュアルは準備中です)

ユーザーストアへ証明書のインストール方法

QND側の操作

  1. [タスク/スケジュール] - [タスク] - [作成]より、バッチファイル配布のタスクを作成します。 
  2. タスク名を入力し、「OK」をクリックします。
  3. [イベントリ] - [配布] より、配布するソフトウェア(バッチファイル)を登録します。
  4. 配布するソフトウェアのプロパティでは、以下のように設定します。
    項目

    1. インストールの重要度強制
    2. 管理者アカウントを使ってインストールを実行する無効
    3. セットアッププログラム名配布するバッチファイルを選択
    4. 転送元ディレクトリ"事前準備"で作成したフォルダを選択
    「3. セットアッププログラム名」
    「4. 転送先ディレクトリ」
  5. 配布するソフトウェア(バッチファイル)を登録後、「OK」をクリックします。
  6. 登録したタスクの実行を行います。
    タスクを実行するクライアント端末を選択し、「収集/実行」をクリックします。 
  7. 実行するタスクを選択し、「次へ」をクリックします。
  8. スケジュールの名前を設定し、「次へ」をクリックします。
  9. 実行するタイミングを設定し、「実行」をクリックします。
  10. 以上で、QND側の操作は完了です。

クライアントPC側の操作

  1. QNDでタスクが実行すると、クライアントPCでQNDエージェントが起動します。
    (本記事では実行タイミングは「今すぐ実行」を選択しています。)
    QNDエージェント起動後、CA証明書、クライアント証明書のインストールが行われます。
    セキュリティ警告画面で「はい」をクリックします。
  2. 「証明書をインストールしました。(ユーザー)」と表示されれば、
    クライアント証明書のインストールは完了です。
    インストールしたクライアント証明書は、Soliton KeyManagerから確認できます。

事前準備

クライアントPC起動時にコンピューターストアへ証明書をインストールするバッチファイルを作成します。
実行タイミングを0~3600秒の範囲で遅らせます。
例)コンピューターストアへ証明書のインストール実行コマンド

set /A timeout=%random%*3600/32767                       
timeout /T %timeout% > NUL                       
                       
"C:\Program Files (x86)\Soliton KeyManager\KeyManager.exe" /cl /sc /h (EPS-apのホスト名またはIPアドレス) /hp 443 /u admin01%COMPUTERNAME% /p password /cn

環境変数「%COMPUTERNAME%」は申請するPCのコンピューター名が自動的に反映されます。
例えば「/u admin01%COMPUTERNAME%」で申請すると、ユーザーIDは「admin01testPC02」のようになります(%COMPUTERNAME%が「testPC02」の場合)。
また、オプションの「/cn」を使用することで、証明書のCNに申請したPCのコンピューター名を設定することができます。

オプション説明
 /clコマンドラインで実行
 /sc格納先を指定する(/sc = コンピューターストア)
 /hホスト名またはIPアドレスを指定する
 /hpポート番号を指定する
 /u申請ユーザーを指定する
 /p申請ユーザーのパスワード(平文)を指定する
(暗号化したパスワードを使用する場合は、「/ep」オプションを使用する)
 /cn証明書のCNをコンピューター名に指定する

※ご紹介しているオプションは一部となります。
 全てのオプションについては製品マニュアルをご参照ください。(現在、マニュアル準備中です)

コンピューターストアへ証明書のインストール方法

QND側の操作

  1. [タスク/スケジュール] - [タスク] - [作成]より、バッチファイル配布のタスクを作成します。
  2. タスク名を入力し、「OK」をクリックします。
  3. [イベントリ] - [配布] より、配布するソフトウェア(バッチファイル)を登録します。
  4. 配布するソフトウェアのプロパティでは、以下のように設定します。
    項目

    1. インストールの重要度強制
    2. 管理者アカウントを使ってインストールを実行する有効
    3. セットアッププログラム名配布するバッチファイルを選択
    4. 転送元ディレクトリ"事前準備"で作成したフォルダを選択
    「3. セットアッププログラム名」
    「4. 転送先ディレクトリ」
  5. 配布するソフトウェア(バッチファイル)を登録後、「OK」をクリックします。
  6. 登録したタスクの実行を行います。
    タスクを実行するクライアント端末を選択し、「収集/実行」をクリックします。
  7. 実行するタスクを選択し、「次へ」をクリックします。
  8. スケジュールの名前を設定し、「次へ」をクリックします。
  9. 実行するタイミングを設定し、「実行」をクリックします。
  10. 以上で、QND側の操作は完了です。

クライアントPC側の操作

  1. QNDでタスクが実行すると、クライアントPCでQNDエージェントが起動します。
    (本記事では実行タイミングは「今すぐ実行」を選択しています。)
    QNDエージェント起動後、CA証明書、クライアント証明書のインストールが行われます。
    ※入力ダイアログや「証明書をインストールしました。(コンピューター)」のようなメッセージは表示されません。

    インストールした証明書は、Soliton KeyManagerから確認できます。
記事を書いた人

ソリトンシステムズ・テクニカルチーム