Windows XPおよびServer 2003からWindows 7およびServer 2008 R2までのさまざまなバージョンのWindowsを実行しています。約1000台のマシンに展開する必要がある自己署名.cer証明書があります。
SCCMは私たちの通常の展開方法であり、これらをいくつかの異なる方法で展開しようとしましたが、必要なすべてのツールがすべてのOSで使用できるわけではないか、自動展開でエラーメッセージが表示されるだけです。手動で実行する方法をご覧ください。
私が見つけた最もプラットフォームにやさしい方法は、管理ツールがインストールされているXP SP3のコピーからCertUtil.exeとcertadm.dllのコピーを取得し、それをドロップすることです。 .cerファイルと同じフォルダーの場合、バッチファイルで次のコマンドラインを使用します。
certutil.exe -addstore TrustedPublisher cert.cer
certutil.exe -addstore root cert.cer
これは手動でバッチファイルを実行するとうまく機能しますが、自動的に実行するとさまざまなエラーが発生します。
Windowsプラットフォーム間でこれを行うより良い方法はありますか?
この前の質問からの手がかり Winのコマンドラインを使用して証明書をインポートするXP Home と、少し遊んでみると、これはOS全体に一貫して展開されます。
32ビットのWindows Server 2003 SP2管理パック( KB340178 )から次のファイルを抽出し、証明書と共にSCCMのパッケージソース上のフォルダに保存しました。
certadm.dll
certcli.dll
certreq.exe
certutil.exe
cert.cer
バッチファイルを破棄し、SCCMで次の2つのコマンドラインを使用して2つの個別のプログラムを作成します(両方とも1つの広告にチェーンされます)。すべてOSで自動化されたロールアウトとして機能しているようです。
certutil.exe -addstore TrustedPublisher cert.cer
certutil.exe -addstore root cert.cer
多くのマシンを持っているので、ADドメインを使用していると想定するのが妥当だと思われます。その場合、グループポリシーオブジェクトを使用して証明書をプッシュできます。 Technetの this one などの手順を説明する記事は多数あります。