OT アプライアンスの SSL/TLS 証明書を作成する
この記事は、Microsoft Defender for IoT を使用した OT 監視のデプロイ パスを説明する一連の記事の 1 つです。この記事では、Defender for IoT オンプレミス アプライアンス (OT センサーとオンプレミス管理コンソールの両方を含む) で使用する CA 署名証明書を作成する方法について説明します。
各証明機関 (CA) 署名証明書には、.key
ファイルと .crt
ファイルの両方が必要です。これらは、最初のサインイン後に Defender for IoT アプライアンスにアップロードされます。 組織によっては .pem
ファイルも必要な場合がありますが、Defender for IoT では .pem
ファイルは必要ありません。
重要
Defender for IoT アプライアンスごとに一意の証明書を作成する必要があり、各証明書が必要な条件を満たしている必要があります。
前提条件
この記事で説明されている手順を実行するために、証明書の作成を監督できるセキュリティ、PKI、または証明書の専門家がいることを確認してください。
Defender for IoT の SSL/TLS 証明書の要件を理解しているかについても確認してください。
CA 署名 SSL/TLS 証明書を作成する
運用環境では常に CA 署名証明書を使用し、テスト環境では自己署名証明書のみを使用することをお勧めします。
自動 PKI 管理プラットフォームなどの証明書管理プラットフォームを使用して、Defender for IoT の要件を満たす証明書を作成します。
証明書を自動的に作成できるアプリケーションがない場合は、セキュリティ、PKI、またはその他の資格のある証明書の責任者に支援を求めてください。 新しい証明書ファイルを作成しない場合は、既存の証明書ファイルを変換することもできます。
Defender for IoT アプライアンスごとに一意の証明書を作成する必要があり、各証明書が必要なパラメーター条件を満たしている必要があります。
例:
ダウンロードした証明書ファイルを開き、[詳細] タブの > [ファイルにコピー] を選択して証明書のエクスポート ウィザードを実行します。
証明書のエクスポート ウィザードで、[次へ]>[DER encoded binary X.509 (.CER)]> を選択し、もう一度 [次へ] を選択します。
[エクスポートするファイル] 画面で、[参照] を選択し、証明書を保存する場所を選択して、[次へ] を選択します。
[完了] を選択して、証明書をエクスポートします。
注意
既存のファイルの種類を、サポートされている種類に変換する必要がある場合があります。
証明書が証明書ファイルの要件を満たしていることを確認し、完了したら、作成した証明書ファイルをテストします。
証明書検証を使用しない場合は、証明書から CRL URL 参照を削除します。 詳細については、「証明書ファイルの要件」をご覧ください。
ヒント
(省略可能) 証明書チェーンを作成します。これは、証明書につながった信頼チェーン内のすべての証明機関の証明書を含む .pem
ファイルです。
CRL サーバーへのアクセスを確認する
組織で証明書を検証する場合、Defender for IoT アプライアンスが、証明書で定義されている CRL サーバーにアクセスできる必要があります。 既定では、証明書は HTTP ポート 80 を介して CRL サーバー URL にアクセスします。 ただし、組織のセキュリティ ポリシーによっては、このポートへのアクセスがブロックされます。
アプライアンスがポート 80 で CRL サーバーにアクセスできない場合、次のいずれかの対処法を使用できます。
証明書に別の URL とポートを定義します:
- 定義する URL は、
https://
ではなくhttp: //
として構成する必要があります - 接続先 CRL サーバーが、定義したポートでリッスンできることを確認します
- 定義する URL は、
ポート 80 で CRL にアクセスできるプロキシ サーバーを使用します
詳細については、「OT アラート情報を転送する」を参照してください。
検証に失敗した場合は、関連コンポーネント間の通信が停止し、検証エラーがコンソールに表示されます。
SSL/TLS 証明書を信頼されたストアにインポートする
証明書を作成した後、信頼できる保管場所にインポートします。 次に例を示します。
セキュリティ証明書ファイルを開き、[全般] タブで [証明書のインストール] を選択して証明書のインポート ウィザードを開始します。
[ストアの場所] で [ローカル コンピューター] を選択し、[次へ] を選択します。
[ユーザー許可制御] プロンプトが表示されたら、[はい] を選択して、アプリがデバイスに変更を加えることを許可します。
[証明書ストア] 画面で、[証明書の種類に基づいて、自動的に証明書ストアを選択する] を選んで [次へ] を選択します。
[証明書をすべて次のストアに配置する] を選択し、[参照] から [信頼されたルート証明機関] ストアを選択します。 終了したら、 [次へ] を選択します。 次に例を示します。
[完了] を選択してインポートを完了します。
SSL/TLS 証明書をテストする
証明書を Defender for IoT アプライアンスにデプロイする前に、次の手順を使用してそれらの証明書をテストします。
サンプルに対して証明書を確認する
次のサンプル証明書を使用して、作成した証明書と比較し、同じフィールドが同じ順序で存在することを確認します。
Bag Attributes: <No Attributes>
subject=C = US, S = Illinois, L = Springfield, O = Contoso Ltd, OU= Contoso Labs, CN= sensor.contoso.com, E
= support@contoso.com
issuer C=US, S = Illinois, L = Springfield, O = Contoso Ltd, OU= Contoso Labs, CN= Cert-ssl-root-da2e22f7-24af-4398-be51-
e4e11f006383, E = support@contoso.com
-----BEGIN CERTIFICATE-----
MIIESDCCAZCgAwIBAgIIEZK00815Dp4wDQYJKoZIhvcNAQELBQAwgaQxCzAJBgNV
BAYTAIVTMREwDwYDVQQIDAhJbGxpbm9pczEUMBIGA1UEBwwLU3ByaW5nZmllbGQx
FDASBgNVBAoMCONvbnRvc28gTHRKMRUWEwYDVQQLDAXDb250b3NvIExhYnMxGzAZ
BgNVBAMMEnNlbnNvci5jb250b3NvLmNvbTEIMCAGCSqGSIb3DQEJARYTc3VwcG9y
dEBjb250b3NvLmNvbTAeFw0yMDEyMTcxODQwMzhaFw0yMjEyMTcxODQwMzhaMIGK
MQswCQYDVQQGEwJVUzERMA8GA1UECAwISWxsaW5vaXMxFDASBgNVBAcMC1Nwcmlu
Z2ZpZWxkMRQwEgYDVQQKDAtDb250b3NvIEX0ZDEVMBMGA1UECwwMQ29udG9zbyBM
YWJzMRswGQYDVQQDDBJzZW5zb3luY29udG9zby5jb20xljAgBgkqhkiG9w0BCQEW
E3N1cHBvcnRAY29udG9zby5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQDRGXBNJSGJTfP/K5ThK8vGOPzh/N8AjFtLvQiiSfkJ4cxU/6d1hNFEMRYG
GU+jY1Vknr0|A2nq7qPB1BVenW3 MwsuJZe Floo123rC5ekzZ7oe85Bww6+6eRbAT
WyqpvGVVpfcsloDznBzfp5UM9SVI5UEybllod31MRR/LQUEIKLWILHLW0eR5pcLW
pPLtOW7wsK60u+X3tqFo1AjzsNbXbEZ5pnVpCMqURKSNmxYpcrjnVCzyQA0C0eyq
GXePs9PL5DXfHy1x4WBFTd98X83 pmh/vyydFtA+F/imUKMJ8iuOEWUtuDsaVSX0X
kwv2+emz8CMDLsbWvUmo8Sg0OwfzAgMBAAGjfDB6MB0GA1UdDgQWBBQ27hu11E/w
21Nx3dwjp0keRPuTsTAfBgNVHSMEGDAWgBQ27hu1lE/w21Nx3dwjp0keRPUTSTAM
BgNVHRMEBTADAQH/MAsGA1UdDwQEAwIDqDAdBgNVHSUEFjAUBggrBgEFBQcDAgYI
KwYBBQUHAwEwDQYJKoZIhvcNAQELBQADggEBADLsn1ZXYsbGJLLzsGegYv7jmmLh
nfBFQqucORSQ8tqb2CHFME7LnAMfzFGpYYV0h1RAR+1ZL1DVtm+IKGHdU9GLnuyv
9x9hu7R4yBh3K99ILjX9H+KACvfDUehxR/ljvthoOZLalsqZIPnRD/ri/UtbpWtB
cfvmYleYA/zq3xdk4vfOI0YTOW11qjNuBIHh0d5S5sn+VhhjHL/s3MFaScWOQU3G
9ju6mQSo0R1F989aWd+44+8WhtOEjxBvr+17CLqHsmbCmqBI7qVnj5dHvkh0Bplw
zhJp150DfUzXY+2sV7Uqnel9aEU2Hlc/63EnaoSrxx6TEYYT/rPKSYL+++8=
-----END CERTIFICATE-----
.csr
または秘密キー ファイルなしで証明書をテストする
証明書 .csr
ファイルまたはプライベート キー ファイル内の情報を確認する場合は、次の CLI コマンドを使用します:
- 証明書署名要求 (CSR) を確認する:
openssl req -text -noout -verify -in CSR.csr
を実行します - 秘密キーを確認する:
openssl rsa -in privateKey.key -check
を実行します - 証明書を確認する:
openssl x509 -in certificate.crt -text -noout
を実行します
これらのテストが失敗した場合、「証明書ファイルの要件」を参照して、ファイル パラメーターが正確であることを確認するか、または証明書の専門家に問い合わせてください。
証明書の共通名を検証する
証明書の共通名を表示するには、証明書ファイルを開き、[詳細] タブを選択し、[サブジェクト] フィールドを選択します。
証明書の共通名は CN の横に表示されます。
セキュリティで保護された接続なしでセンサー コンソールにサインインします。 接続がプライベートではないことを示す警告画面に、NET::ERR_CERT_COMMON_NAME_INVALID というエラー メッセージが表示される場合があります。
エラー メッセージを選択して展開し、[件名] の横にある文字列をコピーします。 次に例を示します。
サブジェクト文字列は、セキュリティ証明書の詳細の CN 文字列と一致する必要があります。
ローカル ファイル エクスプローラーで、hosts ファイル (この PC > ローカル ディスク (C:) > Windows > System32 > drivers > etc にある) を参照し、hosts ファイルを開きます。
hosts ファイルで、ドキュメントの最後に、前の手順でコピーしたセンサーの IP アドレスと SSL 証明書の共通名を含む行を追加します。 完了したら、変更を保存します。 次に例を示します。
自己署名証明書
自己署名証明書は、Defender for IoT OT 監視ソフトウェアをインストールした後、テスト環境で使用できます。 詳細については、次を参照してください。