[comment]: # translation:outdated

[comment]: # ({09d7d659-09d7d659})
# 1 証明書の利用

[comment]: # ({/09d7d659-09d7d659})

[comment]: # ({685d1488-685d1488})
#### 概要

Zabbix では、公開または社内CAによって署名されたPEM形式のRSA証明書を使用することができます。<br>
証明書の検証は、事前に設定されたCA証明書と照合します。オプションとして、証明書リボケーションリスト(CRL)を<br>
使用することができます。<br>
各Zabbixコンポーネントに設定できる証明書は1つだけです。<br>

内部CAの設定と操作方法、証明書要求の生成と署名方法、証明書の失効方法の詳細については、<br>
[OpenSSL PKI Tutorial v1.1] (http://pki-tutorial.readthedocs.org/en/latest/) などのオンラインHowToを参照してください。

証明書の拡張を慎重に検討し、テストしてください。<br>
[Limitations on using X.509 v3 certificate extensions](/manual/encryption/using_certificates&#limitations_on_using_x509_v3_certificate_extensions) を参照してください。

[comment]: # ({/685d1488-685d1488})

[comment]: # ({29c2f063-a572d979})
#### 証明書の設定パラメータ

|パラメータ|必須|説明|
|---------|---------|-----------|
|*TLSCAFile*|\*|ピア証明書検証用の最上位 CA(s) 証明書を含むファイルのフル パス名。<br>複数のメンバーを持つ証明書チェーンの場合は、それらを順序付ける必要があります。最初に下位レベルの CA 証明書、次に上位レベルの CA(s) の証明書が続きます。<br>複数のCA(s)からの証明書を 1 つのファイルに纏めることができます。|
|*TLSCRLFile*|<|証明書失効リストを含むファイルのフル パス名。 [証明書失効リスト (CRL)](/manual/encryption/using_certificates?&#certificate_revocation_lists_crl) の注釈を参照してください。|
|*TLSCertFile*|\*|証明書 (証明書チェーン) を含むファイルのフル パス名。<br>複数のメンバーを持つ証明書チェーンの場合、最初にサーバー、プロキシ、またはエージェントの証明書、次に下位レベルの CA 証明書、次に上位レベルの CA(s)証明書の順に並べる必要があります。|
|*TLSKeyFile*|\*|秘密鍵を含むファイルのフル パス名。このファイルはZabbix ユーザーだけが読み取れるようにアクセス権を設定する必要があります。|
|*TLSServerCertIssuer*|<|許可されたサーバー証明書の発行者。|
|*TLSServerCertSubject*|<|許可されたサーバー証明書のサブジェクト。|

[comment]: # ({/29c2f063-a572d979})

[comment]: # ({bc3e0bad-7b436c5a})
#### 設定例

必要な証明書を設定したら、証明書ベースの暗号化を使用するようにZabbixコンポーネントを設定します。

設定手順の詳細は以下のとおりです。

- [Zabbixサーバー](#zabbix-server)
- [Zabbixプロキシ](#zabbix-proxy)
- [Zabbixエージェント](#zabbix-agent)

[comment]: # ({/bc3e0bad-7b436c5a})

[comment]: # ({34bcf646-34bcf646})
#### Zabbixサーバでの証明書設定

1\. 相手の証明書を検証するために、Zabbixサーバは相手のトップレベルの自己署名付きルートCA証明書のファイルに<br>
アクセスする必要があります。例えば、2つの独立したルートCAからの証明書が必要な場合、これらの証明書を<br>
以下のようにファイル `/home/zabbix/zabbix_ca_file` に格納します:

    Certificate:
        Data:
            Version: 3 (0x2)
            Serial Number: 1 (0x1)
        Signature Algorithm: sha1WithRSAEncryption
            Issuer: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Root1 CA
                ...
            Subject: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Root1 CA
            Subject Public Key Info:
                Public Key Algorithm: rsaEncryption
                    Public-Key: (2048 bit)
                ...
            X509v3 extensions:
                X509v3 Key Usage: critical
                    Certificate Sign, CRL Sign
                X509v3 Basic Constraints: critical
                    CA:TRUE
                ...
    -----BEGIN CERTIFICATE-----
    MIID2jCCAsKgAwIBAgIBATANBgkqhkiG9w0BAQUFADB+MRMwEQYKCZImiZPyLGQB
    ....
    9wEzdN8uTrqoyU78gi12npLj08LegRKjb5hFTVmO
    -----END CERTIFICATE-----
    Certificate:
        Data:
            Version: 3 (0x2)
            Serial Number: 1 (0x1)
        Signature Algorithm: sha1WithRSAEncryption
            Issuer: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Root2 CA
                ...
            Subject: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Root2 CA
            Subject Public Key Info:
                Public Key Algorithm: rsaEncryption
                    Public-Key: (2048 bit)
                ....
            X509v3 extensions:
                X509v3 Key Usage: critical
                    Certificate Sign, CRL Sign
                X509v3 Basic Constraints: critical
                    CA:TRUE
                ....       
    -----BEGIN CERTIFICATE-----
    MIID3DCCAsSgAwIBAgIBATANBgkqhkiG9w0BAQUFADB/MRMwEQYKCZImiZPyLGQB
    ...
    vdGNYoSfvu41GQAR5Vj5FnRJRzv5XQOZ3B6894GY1zY=
    -----END CERTIFICATE-----

2\. Zabbixサーバ証明書チェーンをファイル(例：`/home/zabbix/zabbix_server.crt`)に格納します:

    Certificate:
        Data:
            Version: 3 (0x2)
            Serial Number: 1 (0x1)
        Signature Algorithm: sha1WithRSAEncryption
            Issuer: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Signing CA
            ...
            Subject: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Zabbix server
            Subject Public Key Info:
                Public Key Algorithm: rsaEncryption
                    Public-Key: (2048 bit)
                    ...
            X509v3 extensions:
                X509v3 Key Usage: critical
                    Digital Signature, Key Encipherment
                X509v3 Basic Constraints: 
                    CA:FALSE
                ...
    -----BEGIN CERTIFICATE-----
    MIIECDCCAvCgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBgTETMBEGCgmSJomT8ixk
    ...
    h02u1GHiy46GI+xfR3LsPwFKlkTaaLaL/6aaoQ==
    -----END CERTIFICATE-----
    Certificate:
        Data:
            Version: 3 (0x2)
            Serial Number: 2 (0x2)
        Signature Algorithm: sha1WithRSAEncryption
            Issuer: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Root1 CA
            ...
            Subject: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Signing CA
            Subject Public Key Info:
                Public Key Algorithm: rsaEncryption
                    Public-Key: (2048 bit)
                ...
            X509v3 extensions:
                X509v3 Key Usage: critical
                    Certificate Sign, CRL Sign
                X509v3 Basic Constraints: critical
                    CA:TRUE, pathlen:0
            ...
    -----BEGIN CERTIFICATE-----
    MIID4TCCAsmgAwIBAgIBAjANBgkqhkiG9w0BAQUFADB+MRMwEQYKCZImiZPyLGQB
    ...
    dyCeWnvL7u5sd6ffo8iRny0QzbHKmQt/wUtcVIvWXdMIFJM0Hw==
    -----END CERTIFICATE-----

ここでは、最初にZabbix server 証明書、その後に中間CA証明書を掲載しています。

3\. Zabbix server の秘密鍵をファイル(例: `/home/zabbix/zabbix_server.key`) に格納します:

    -----BEGIN PRIVATE KEY-----
    MIIEwAIBADANBgkqhkiG9w0BAQEFAASCBKowggSmAgEAAoIBAQC9tIXIJoVnNXDl
    ...
    IJLkhbybBYEf47MLhffWa7XvZTY=
    -----END PRIVATE KEY-----

4\. Zabbixサーバ設定ファイルのTLSパラメータを以下のように編集してください:

    TLSCAFile=/home/zabbix/zabbix_ca_file
    TLSCertFile=/home/zabbix/zabbix_server.crt
    TLSKeyFile=/home/zabbix/zabbix_server.key

[comment]: # ({/34bcf646-34bcf646})

[comment]: # ({54ac87c7-54ac87c7})
#### Zabbix proxy における証明書ベースの暗号化設定

1\. Zabbixサーバの証明書設定(/manual/encryption/using_certificates#configuring_certificate_on_zabbix_server)に従って、<br>
トップレベルCA証明書、proxy 証明書(チェーン)、秘密鍵のファイルを準備します。<br>
proxy 設定のパラメータ `TLSCAFile`、`TLSCertFile`、`TLSKeyFile` を適宜編集してください。<br>

2\. アクティブ proxy は、`TLSConnect` パラメータを編集してください:

    TLSConnect=cert

パッシブ proxy では、`TLSAccept` パラメータを編集します:

    TLSAccept=cert

3\. これで最小限の証明書ベースのプロキシ設定ができました。`TLSServerCertIssuer` と `TLSServerCertSubject` パラメータを<br>
設定して、プロキシのセキュリティを向上させることもできます (参照 [Restricting allowed certificate Issuer and Subject](/manual/encryption/using_certificates#restricting_allowed_certificate_issuer_and_subject)).

4\. 最終的なプロキシ設定ファイルでは、TLSパラメータは次のようになります:

    TLSConnect=cert
    TLSAccept=cert
    TLSCAFile=/home/zabbix/zabbix_ca_file
    TLSServerCertIssuer=CN=Signing CA,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com
    TLSServerCertSubject=CN=Zabbix server,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com
    TLSCertFile=/home/zabbix/zabbix_proxy.crt
    TLSKeyFile=/home/zabbix/zabbix_proxy.key

5\. Zabbixフロントエンドでこの proxy の暗号化を設定します:

-   *Administration → Proxies* に移動します。
-    proxy を選択し、**Encryption** タブをクリックします

以下の例では、Issuer と Subject のフィールドに入力されています。<br>
[Restricting allowed certificate Issuer and Subject] (/manual/encryption/using_certificates#restricting_allowed_certificate_issuer_and_subject) を参照してください。<br>
これらのフィールドを使用する理由と方法について説明します。<br>

アクティブ proxy

![proxy\_active\_cert.png](../../../assets/en/manual/encryption/proxy_active_cert.png)

パッシブ proxy

![proxy\_passive\_cert.png](../../../assets/en/manual/encryption/proxy_passive_cert.png)

[comment]: # ({/54ac87c7-54ac87c7})

[comment]: # ({d2f8a033-d2f8a033})
#### Zabbix agent の証明書ベースの暗号化設定

1\. トップレベルCA証明書、agent 証明書(チェーン)、秘密鍵のファイルを準備します。
[Configuring certificate on Zabbix server](/manual/encryption/using_certificates#configuring_certificate_on_zabbix_server) の説明に従って、トップレベルのCA証明書(チェーン)と秘密鍵のファイルを準備します。<br>
それに応じて、agent 設定のパラメータ `TLSCAFile`、`TLSCertFile`、`TLSKeyFile` を編集してください。

2\. アクティブチェックのために、`TLSConnect`パラメータを編集してください:

    TLSConnect=cert

パッシブチェックのためには、`TLSAccept` パラメータを編集してください:

    TLSAccept=cert

3\. これで、最小限の証明書ベースのエージェント設定ができました。`TLSServerCertIssuer` と `TLSServerCertSubject` <br>
パラメータを設定することで、エージェントのセキュリティを向上させることができます。<br>
([Restricting allowed certificate Issuer and Subject](/manual/encryption/using_certificates#restricting_allowed_certificate_issuer_and_subject) を参照してください).

4\. 最終的なエージェント設定ファイルでは、TLSパラメータは以下のようになります:

    TLSConnect=cert
    TLSAccept=cert
    TLSCAFile=/home/zabbix/zabbix_ca_file
    TLSServerCertIssuer=CN=Signing CA,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com
    TLSServerCertSubject=CN=Zabbix proxy,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com
    TLSCertFile=/home/zabbix/zabbix_agentd.crt
    TLSKeyFile=/home/zabbix/zabbix_agentd.key

(この例では、proxy 経由でホストを監視しているため、proxy 証明書の Subject を想定しています)

5\. Zabbixフロントエンドでこの agent の暗号化を設定します:

-   *Configuration → Hosts* に移動します。
-   ホストを選択し、**Encryption** タブをクリックします。

以下の例では、IssuerとSubjectフィールドが入力されています。<br>
これらのフィールドを使用する理由と方法は、[Restricting allowed certificate Issuer and Subject (/manual/encryption/using_certificates#restricting_allowed_certificate_issuer_and_subject)を参照してください。

![agent\_config.png](../../../assets/en/manual/encryption/agent_config.png)

[comment]: # ({/d2f8a033-d2f8a033})

[comment]: # ({edefb52c-d46d2d24})
##### Zabbix Web サービス

1\. [Zabbix サーバー](#zabbix-server) セクションの説明に従って、最上位 CA 証明書、Zabbix Web サービスの証明書/証明書チェーン、および秘密鍵を含むファイルを準備します。
次に、[Zabbix Web サービス設定ファイル](/manual/appendix/config/zabbix_web_service) の `TLSCAFile`、`TLSCertFile`、および `TLSKeyFile` パラメータを適宜編集します。

2\. [Zabbix Webサービス設定ファイル](/manual/appendix/config/zabbix_web_service) で、追加のTLSパラメータ `TLSAccept=cert` を編集します。

最終的なWebサービス設定ファイルのTLSパラメータは以下のようになります。

```ini
TLSAccept=cert
TLSCAFile=/home/zabbix/zabbix_ca_file
TLSCertFile=/home/zabbix/zabbix_web_service.crt
TLSKeyFile=/home/zabbix/zabbix_web_service.key
```

3\. [Zabbixサーバー設定ファイル](/manual/appendix/config/zabbix_server) の `WebServiceURL` パラメータを編集し、TLS設定されたZabbix Webサービスに接続するようにZabbixサーバーを設定します。

```ini
WebServiceURL=https://example.com
```

[comment]: # ({/edefb52c-d46d2d24})

[comment]: # ({0f34d758-0f34d758})
#### 許可された証明書の発行者とサブジェクトを制限する

2 つの Zabbix コンポーネント (サーバーとエージェントなど) が TLS 接続を確立すると、両者は互いの証明書をチェックします。 ピア証明書が信頼できる CA によって署名されている場合 (`TLSCAFile` に最上位の証明書が事前構成されている場合)、有効で、有効期限が切れておらず、他のチェックに合格すると、通信を続行できます。 この最も単純なケースでは、証明書の発行者とサブジェクトはチェックされません。

これにはリスクがあり、有効な証明書を持っている人なら誰でも、他の人になりすますことができます (たとえば、ホスト証明書を使用してサーバーになりすますことが可能)。 これは証明書が専用の社内 CA によって署名され、なりすましのリスクが低い小規模な環境では許容される場合があります。

トップレベルの CA が、Zabbix によって受け入れられない他の証明書の発行に使用されている場合、またはなりすましのリスクを軽減したい場合は、発行者とサブジェクトの文字列を指定して、許可される証明書を制限できます。

たとえばZabbix プロキシ構成ファイルに次のように記述します。

    TLSServerCertIssuer=CN=Signing CA,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com
    TLSServerCertSubject=CN=Zabbix server,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com

これらの設定では、アクティブ プロキシは証明書の異なる発行者またはサブジェクト文字列を持つ Zabbix サーバーと通信しません。パッシブ プロキシはそのようなサーバーからの要求を受け入れません。

発行者または件名の文字列の一致に関するいくつかの注意事項:

1.  発行者と件名の文字列は個別にチェックされます。 どちらもオプションです。
2.  UTF-8 文字を使用できます。
3.  文字列が指定されていない場合、任意の文字列が受け入れられます。
4.  文字列は"そのまま"比較されます。一致するにはまったく同じでなければなりません。
5.  一致では、ワイルドカードと正規表現はサポートされていません。
6.  [RFC 4514 Lightweight Directory Access Protocol (LDAP): String Representation of Distinguished Names](http://tools.ietf.org/html/rfc4514)の一部要件のみが実装されています。
    1.  任意の場所のエスケープ文字 '"' (U+0022)、'+' U+002B、',' U+002C、';'U+003B、'<' U+003C、'>' U+003E、'\\' U+005C
    2.  文字列の先頭にあるエスケープ文字スペース (' ' U+0020) または番号記号 ('\#'U+0023)
    3.  文字列の末尾のエスケープ文字スペース (' ' U+0020) 
7.  null 文字 (U+0000) が検出された場合、一致は失敗します ([RFC4514](http://tools.ietf.org/html/rfc4514) で許可されています)
8.  [RFC 4517 Lightweight Directory Access Protocol (LDAP): Syntaxes and Matching Rules](http://tools.ietf.org/html/rfc4517) および [RFC 4518 Lightweight Directory Access Protocol (LDAP): Internationalized String Preparation]( http://tools.ietf.org/html/rfc4518) は、多くの作業が必要なためサポートされていません。

Issuer および Subject 文字列のフィールドの順序とフォーマットは重要です。 Zabbix は [RFC4514](http://tools.ietf.org/html/rfc4514) の推奨に従い、フィールドの"逆"順を使用します。

逆順例:

    TLSServerCertIssuer=CN=Signing CA,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com
    TLSServerCertSubject=CN=Zabbix proxy,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com

低レベル (CN) で始まり、中レベル (OU、O) に進み、最上位 (DC) フィールドで終わることに注意してください。

*OpenSSL* では、使用する追加オプションに応じて、デフォルトで証明書の発行者フィールドとサブジェクト フィールドが"通常の"順序で表示されます。

    $ openssl x509 -noout -in /home/zabbix/zabbix_proxy.crt -issuer -subject
    issuer= /DC=com/DC=zabbix/O=Zabbix SIA/OU=Development group/CN=Signing CA
    subject= /DC=com/DC=zabbix/O=Zabbix SIA/OU=Development group/CN=Zabbix proxy

    $ openssl x509 -noout -text -in /home/zabbix/zabbix_proxy.crt
    Certificate:
            ...
            Issuer: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Signing CA
        ...
            Subject: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Zabbix proxy

ここで、発行者とサブジェクトの文字列はトップレベル (DC) で始まり、ローレベル (CN) フィールドで終わります。スペースとフィールド区切り文字は、使用するオプションによって異なります。 これらの値はいずれも、Zabbix 発行者フィールドとサブジェクト フィールドで一致しません!

::: noteimportant
 Zabbix で使用できる適切な発行者と件名の文字列を取得するには、特別なオプションを指定して OpenSSL を呼び出します\
`-nameopt esc_2253,esc_ctrl,utf8,dump_nostr,dump_unknown,dump_der,sep_comma_plus,dn_rev,sname`:
:::

    $ openssl x509 -noout -issuer -subject \
            -nameopt esc_2253,esc_ctrl,utf8,dump_nostr,dump_unknown,dump_der,sep_comma_plus,dn_rev,sname \
            -in /home/zabbix/zabbix_proxy.crt
    issuer= CN=Signing CA,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com
    subject= CN=Zabbix proxy,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com

文字列フィールドが逆順になり、フィールドがカンマで区切られ、Zabbix 構成ファイルとフロントエンドで使用できるようになりました。

[comment]: # ({/0f34d758-0f34d758})

[comment]: # ({2ae6e266-a579e1c9})
##### `Issuer` 文字列と `Subject` 文字列のマッチングルール

`Issuer` 文字列と `Subject` 文字列のマッチングルールは次のとおりです。

- `Issuer` 文字列と `Subject` 文字列はそれぞれ独立してチェックされます。どちらも省略可能です。
- 文字列を指定しない場合は、任意の文字列が受け入れられます。
- 文字列は *そのまま* 比較され、完全に一致する必要があります。
- UTF-8 文字がサポートされています。ただし、ワイルドカード (`*`) や正規表現はサポートされていません。
- 以下の [RFC 4514](http://tools.ietf.org/html/rfc4514) 要件が実装されています - エスケープ（バックスラッシュ '`\`、U+005C を使用）が必要な文字:
- 文字列内の任意の場所: '`"`' (U+0022)、'`+`' (U+002B)、'`,`' (U+002C)、'`;`' (U+003B)、'`<`' (U+003C)、'`>`' (U+003E)、'`\\`' (U+005C);
- 文字列の先頭: スペース (' '、U+0020) またはシャープ記号 ('`#`'、U+0023);
- 文字列の末尾: スペース (' '、U+0020)。
- ヌル文字 (U+0000)はサポートされていません。null文字が検出された場合、マッチングは失敗します。
- [RFC 4517](http://tools.ietf.org/html/rfc4517) および [RFC 4518](http://tools.ietf.org/html/rfc4518) 標準はサポートされていません。

例えば、`Issuer` および `Subject` 組織 (`O`) 文字列の末尾にスペースが含まれ、`Subject` 組織単位 (`OU`) 文字列に二重引用符が含まれる場合、これらの文字はエスケープする必要があります。

```ini
TLSServerCertIssuer=CN=Signing CA,OU=Development head,O=\ Example SIA\ ,DC=example,DC=com
TLSServerCertSubject=CN=Zabbix server,OU=Development group \"5\",O=\ Example SIA\ ,DC=example,DC=com
```

[comment]: # ({/2ae6e266-a579e1c9})

[comment]: # ({76bd63f2-9b3a82cf})
##### フィールドの順序とフォーマット

Zabbix は [RFC 4514](http://tools.ietf.org/html/rfc4514) の推奨事項に従います。この推奨事項では、これらのフィールドの順序を「逆」に指定しています。つまり、最下位レベルのフィールド (`CN`) から開始し、中位レベルのフィールド (`OU`、`O`) を経て、最上位レベルのフィールド (`DC`) で終了します。

```ini
TLSServerCertIssuer=CN= Signing CA,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com
TLSServerCertSubject=CN=Zabbix proxy,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com
```

一方、OpenSSL はデフォルトで、`Issuer` と `Subject` の文字列を最上位レベルから下位レベルの順に表示します。
以下の例では、`Issuer` フィールドと`Subject`フィールドは最上位レベル（`DC`）フィールドで始まり、下位レベル（`CN`）フィールドで終わります。
スペースとフィールド区切り文字によるフォーマットも、使用するオプションによって異なるため、Zabbix で必要なフォーマットと一致しません。

```bash
$ openssl x509 -noout -in /home/zabbix/zabbix_proxy.crt -issuer -subject 
issuer= /DC=com/DC=zabbix/O=Zabbix SIA/OU=Development group/CN=Signing CA 
subject= /DC=com/DC=zabbix/O=Zabbix SIA/OU=Development group/CN=Zabbix proxy

$ openssl x509 -noout -text -in /home/zabbix/zabbix_proxy.crt

証明書：
        ...
        Issuer: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Signing CA
        ...
        Subject: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Zabbix proxy
```

フォーマットするにはZabbix の *Issuer* と *Subject* 文字列を正しく指定するには、OpenSSL を以下のオプションで起動します。

```bash
$ openssl x509 -noout -issuer -subject \
-nameopt esc_2253,esc_ctrl,utf8,dump_nostr,dump_unknown,dump_der,sep_comma_plus,dn_rev,sname\
-in /home/zabbix/zabbix_proxy.crt
```

出力は逆順にコンマ区切りで表示され、Zabbix の設定ファイルやフロントエンドで使用できます。

```bash
issuer= CN=Signing CA,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com
subject= CN=Zabbix proxy,OU=Development group,O=Zabbix SIA,DC=zabbix,DC=com
```

[comment]: # ({/76bd63f2-9b3a82cf})

[comment]: # ({29732466-29732466})
#### X.509 v3 証明書拡張の使用に関する制限

-   **件名の別名(*subjectAltName*)**拡張\
    *subjectAltName*拡張からの代替件名(IPアドレス、電子メールアドレス等)は、Zabbixではサポートされていません。 Zabbixで確認できるのは"Subject"フィールドの値のみです ([許可された証明書の発行者とサブジェクトの制限](/manual/encryption/using_certificates#restricting_allowed_certificate_issuer_and_subject) を参照してください)。\
    証明書が *subjectAltName* 拡張子を使用している場合、結果は、Zabbix コンポーネントがコンパイルされている暗号化ツールキットの特定の組み合わせによって異なります (動作する場合と動作しない場合があり、Zabbix はピアからのそのような証明書の受け入れを拒否する場合があります)。
-   **拡張キーの使用**拡張。\
    使用する場合、一般に *clientAuth* (TLS WWW クライアント認証) と *serverAuth* (TLS WWW サーバー認証) の両方が必要です。\
    たとえば、パッシブ チェックでは、Zabbix エージェントは TLS サーバーの役割で動作するため、*serverAuth* をエージェント証明書に設定する必要があります。 アクティブ チェックのエージェント証明書には、*clientAuth* を設定する必要があります。\
    *GnuTLS* は、鍵の使用法に違反した場合に警告を発行しますが、通信は続行できます。
-   **名前制約** 拡張\
    すべての暗号化ツールキットがサポートしているわけではありませんが、この拡張機能により、このセクションが*重要*とマークされているCA証明書を Zabbix がロードできない場合があります (暗号化ツールキットによって異なります)。

[comment]: # ({/29732466-29732466})

[comment]: # ({35b25767-35b25767})
#### 証明書失効リスト(CRL)

証明書が漏洩した場合、CAはCRLに記載することで証明書を失効させることができます。CRL は server 、proxy、agent の
コンフィギュレーションファイルで `TLSCRLFile` というパラメータを使って設定することができます。
例えば、以下のようになります:

    TLSCRLFile=/home/zabbix/zabbix_crl_file

`zabbix_crl_file` には複数の CA の CRL が含まれ、以下のように表示されることがあります:

    -----BEGIN X509 CRL-----
    MIIB/DCB5QIBATANBgkqhkiG9w0BAQUFADCBgTETMBEGCgmSJomT8ixkARkWA2Nv
    ...
    treZeUPjb7LSmZ3K2hpbZN7SoOZcAoHQ3GWd9npuctg=
    -----END X509 CRL-----
    -----BEGIN X509 CRL-----
    MIIB+TCB4gIBATANBgkqhkiG9w0BAQUFADB/MRMwEQYKCZImiZPyLGQBGRYDY29t
    ...
    CAEebS2CND3ShBedZ8YSil59O6JvaDP61lR5lNs=
    -----END X509 CRL-----

CRLファイルは Zabbix 起動時のみ読み込まれます。CRLの更新には再起動が必要です

::: noteimportant
 Zabbixコンポーネントが*OpenSSL*でコンパイルされ、CRLを使用する場合、証明書チェーンのトップレベル及び<br>
中間レベルの各CAは、`TLSCRLFile`に対応するCRL(空でも可)を持つ必要があります。

:::

[comment]: # ({/35b25767-35b25767})
