[comment]: # translation:outdated

[comment]: # ({09d7d659-09d7d659})
# 1 Certificaten gebruiken

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

[comment]: # ({4bbb5b40-685d1488})
#### Overzicht

Zabbix kan RSA-certificaten in PEM-indeling gebruiken, ondertekend door een openbare of interne certificeringsinstantie (CA). Certificaatverificatie wordt uitgevoerd tegen een vooraf geconfigureerd CA-certificaat. Optioneel kunnen certificaatintrekkingslijsten (CRL) worden gebruikt. Elke Zabbix-component kan slechts één certificaat geconfigureerd hebben.

Voor meer informatie over hoe u een interne CA kunt opzetten en exploiteren, hoe u certificaataanvragen kunt genereren en ondertekenen, en hoe u certificaten kunt intrekken, kunt u talloze online handleidingen vinden, bijvoorbeeld [OpenSSL PKI-tutorial v1.1](http://pki-tutorial.readthedocs.org/en/latest/).

Denk zorgvuldig na en test uw certificaatextensies - zie [Beperkingen bij het gebruik van X.509 v3-certificaatextensies](/manual/encryption/using_certificates#limitations_on_using_x509_v3_certificate_extensions).

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

[comment]: # ({113d272f-a572d979})
#### Certificaat configuratieparameters

|Parameter|Mandatory|Beschrijving|
|--|-|--------|
|*TLSCAFile*|ja|Volledig pad naar een bestand dat de top-level CA(s) certificaten bevat voor verificatie van peer-certificaten.<br>In het geval van een certificaatketen met meerdere leden moeten ze worden geordend: certificaten van lagere niveau CA's eerst gevolgd door certificaten van hogere niveau CA's.<br>Certificaten van meerdere CA's kunnen in één bestand worden opgenomen.|
|*TLSCRLFile*|nee|Volledig pad naar een bestand dat Certificate Revocation Lists bevat. Zie de opmerkingen in [Certificate Revocation Lists (CRL)](/manual/encryption/using_certificates#certificate_revocation_lists_crl).|
|*TLSCertFile*|ja|Volledig pad naar een bestand dat het certificaat bevat (certificaatketen).<br>In het geval van een certificaatketen met meerdere leden moeten ze worden geordend: server, proxy of agent certificaat eerst, gevolgd door certificaten van lagere niveau CA's en vervolgens certificaten van hogere niveau CA's.|
|*TLSKeyFile*|ja|Volledig pad naar een bestand dat de privésleutel bevat. Stel de toegangsrechten voor dit bestand in - het moet alleen leesbaar zijn door de Zabbix-gebruiker.|
|*TLSServerCertIssuer*|nee|Toegestane uitgever van servercertificaten.|
|*TLSServerCertSubject*|nee|Toegestaan onderwerp van servercertificaten.|

[comment]: # ({/113d272f-a572d979})

[comment]: # ({new-042f95c2})
#### Configuration examples

After setting up the necessary certificates, configure Zabbix components to use certificate-based encryption.

Below are detailed steps for configuring:

-   [Zabbix server](#zabbix-server)
-   [Zabbix proxy](#zabbix-proxy)
-   [Zabbix agent](#zabbix-agent)

[comment]: # ({/new-042f95c2})

[comment]: # ({e71b54c9-34bcf646})
#### Certificaatconfiguratie op Zabbix-server

1. Om peer-certificaten te verifiëren, moet de Zabbix-server toegang hebben tot een bestand met hun top-level zelfondertekende root CA-certificaten. Als we bijvoorbeeld certificaten verwachten van twee onafhankelijke root CAs, kunnen we hun certificaten in een bestand `/home/zabbix/zabbix_ca_file` plaatsen zoals hieronder:

    Certificaat:
        Gegevens:
            Versie: 3 (0x2)
            Serienummer: 1 (0x1)
        Ondertekeningsalgoritme: sha1WithRSAEncryption
            Uitgever: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Root1 CA
                ...
            Onderwerp: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Root1 CA
            Openbare-sleutelinformatie onderwerp:
                Openbare-sleutelalgoritme: rsaEncryption
                    Openbare sleutel: (2048 bits)
                ...
            X509v3-extensies:
                X509v3 Sleutelgebruik: kritiek
                    Certificaat Ondertekenen, CRL Ondertekenen
                X509v3 Basisbeperkingen: kritiek
                    CA:WAAR
                ...
    -----BEGIN CERTIFICATE-----
    MIID2jCCAsKgAwIBAgIBATANBgkqhkiG9w0BAQUFADB+MRMwEQYKCZImiZPyLGQB
    ....
    9wEzdN8uTrqoyU78gi12npLj08LegRKjb5hFTVmO
    -----END CERTIFICATE-----
    Certificaat:
        Gegevens:
            Versie: 3 (0x2)
            Serienummer: 1 (0x1)
        Ondertekeningsalgoritme: sha1WithRSAEncryption
            Uitgever: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Root2 CA
                ...
            Onderwerp: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Root2 CA
            Openbare-sleutelinformatie onderwerp:
                Openbare-sleutelalgoritme: rsaEncryption
                    Openbare sleutel: (2048 bits)
                ....
            X509v3-extensies:
                X509v3 Sleutelgebruik: kritiek
                    Certificaat Ondertekenen, CRL Ondertekenen
                X509v3 Basisbeperkingen: kritiek
                    CA:WAAR
                ....       
    -----BEGIN CERTIFICATE-----
    MIID3DCCAsSgAwIBAgIBATANBgkqhkiG9w0BAQUFADB/MRMwEQYKCZImiZPyLGQB
    ...
    vdGNYoSfvu41GQAR5Vj5FnRJRzv5XQOZ3B6894GY1zY=
    -----END CERTIFICATE-----

2. Plaats de certificaatketen van de Zabbix-server in een bestand, bijvoorbeeld `/home/zabbix/zabbix_server.crt`:

    Certificaat:
        Gegevens:
            Versie: 3 (0x2)
            Serienummer: 1 (0x1)
        Ondertekeningsalgoritme: sha1WithRSAEncryption
            Uitgever: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Signing CA
            ...
            Onderwerp: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Zabbix server
            Openbare-sleutelinformatie onderwerp:
                Openbare-sleutelalgoritme: rsaEncryption
                    Openbare sleutel: (2048 bits)
                    ...
            X509v3-extensies:
                X509v3 Sleutelgebruik: kritiek
                    Digitale Handtekening, Sleutel Versleuteling
                X509v3 Basisbeperkingen: 
                    CA:ONWAAR
                ...
    -----BEGIN CERTIFICATE-----
    MIIECDCCAvCgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBgTETMBEGCgmSJomT8ixk
    ...
    h02u1GHiy46GI+xfR3LsPwFKlkTaaLaL/6aaoQ==
    -----END CERTIFICATE-----
    Certificaat:
        Gegevens:
            Versie: 3 (0x2)
            Serienummer: 2 (0x2)
        Ondertekeningsalgoritme: sha1WithRSAEncryption
            Uitgever: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Root1 CA
            ...
            Onderwerp: DC=com, DC=zabbix, O=Zabbix SIA, OU=Development group, CN=Signing CA
            Openbare-sleutelinformatie onderwerp:
                Openbare-sleutelalgoritme: rsaEncryption
                    Openbare sleutel: (2048 bits)
                ...
            X509v3-extensies:
                X509v3 Sleutelgebruik: kritiek
                    Certificaat Ondertekenen, CRL Ondertekenen
                X509v3 Basisbeperkingen: kritiek
                    CA:WAAR, padlengte:0
            ...
    -----BEGIN CERTIFICATE-----
    MIID4TCCAsmgAwIBAgIBAjANBgkqhkiG9w0BAQUFADB+MRMwEQYKCZImiZPyLGQB
    ...
    dyCeWnvL7u5sd6ffo8iRny0QzbHKmQt/wUtcVIvWXdMIFJM0Hw==
    -----END CERTIFICATE-----

Hierbij is het eerste certificaat van de Zabbix-server, gevolgd door een tussenliggend CA-certificaat.

:::noteclassic
Het gebruik van enige attributen behalve die hierboven vermeld, wordt afgeraden voor zowel client- als servercertificaten, omdat dit het certificaatverificatieproces kan beïnvloeden. OpenSSL kan bijvoorbeeld falen om een versleutelde verbinding tot stand te brengen als *X509v3 Extended Key Usage* of *Netscape Cert Type* zijn ingesteld. Zie ook: [Beperkingen bij het gebruik van X.509 v3-certificaatextensies](/manual/encryption/using_certificates#limitations_on_using_x509_v3_certificate_extensions).
:::

3. Plaats de privésleutel van de Zabbix-server in een bestand, bijvoorbeeld `/home/zabbix/zabbix_server.key`:

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

4. Bewerk de TLS-parameters in het configuratiebestand van de Zabbix-server als volgt:

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

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

[comment]: # ({85a84eb4-54ac87c7})
#### Configuratie van certificaatgebaseerde versleuteling voor Zabbix-proxy

1. Bereid bestanden voor met certificaten van top-level CA, proxy-certificaatketen en privésleutel zoals beschreven in [Configuratie van certificaat op Zabbix-server](/manual/encryption/using_certificates#configuring_certificate_on_zabbix_server). Bewerk de parameters `TLSCAFile`, `TLSCertFile` en `TLSKeyFile` in de proxy-configuratie dienovereenkomstig.

2. Voor een actieve proxy bewerk de parameter `TLSConnect`:

    TLSConnect=cert

Voor een passieve proxy bewerk de parameter `TLSAccept`:

    TLSAccept=cert

3. Nu heeft u een minimale certificaatgebaseerde proxy-configuratie. U kunt de beveiliging van de proxy mogelijk verbeteren door de parameters `TLSServerCertIssuer` en `TLSServerCertSubject` in te stellen (zie [Beperking van toegestane certificaatuitgever en -onderwerp](/manual/encryption/using_certificates#restricting_allowed_certificate_issuer_and_subject)).

4. In het uiteindelijke configuratiebestand van de proxy kunnen de TLS-parameters er als volgt uitzien:

    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. Configureer de versleuteling voor deze proxy in de Zabbix-frontend:

-   Ga naar: *Beheer → Proxies*
-   Selecteer de proxy en klik op het tabblad **Versleuteling**

In de onderstaande voorbeelden zijn de Issuer- en Subject-velden ingevuld - zie [Beperking van toegestane certificaatuitgever en -onderwerp](/manual/encryption/using_certificates#restricting_allowed_certificate_issuer_and_subject) waarom en hoe u deze velden kunt gebruiken.

Voor een actieve proxy

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

Voor een passieve proxy

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

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

[comment]: # ({eb9cd2b1-d2f8a033})
#### Configuratie van certificaatgebaseerde versleuteling voor Zabbix-agent

1. Bereid bestanden voor met certificaten van top-level CA, agent-certificaatketen en privésleutel zoals beschreven in [Configuratie van certificaat op Zabbix-server](/manual/encryption/using_certificates#configuring_certificate_on_zabbix_server). Bewerk de parameters `TLSCAFile`, `TLSCertFile` en `TLSKeyFile` in de agent-configuratie dienovereenkomstig.

2. Voor actieve controles bewerk de parameter `TLSConnect`:

    TLSConnect=cert

Voor passieve controles bewerk de parameter `TLSAccept`:

    TLSAccept=cert

3. Nu heeft u een minimale certificaatgebaseerde agent-configuratie. U kunt de beveiliging van de agent mogelijk verbeteren door de parameters `TLSServerCertIssuer` en `TLSServerCertSubject` in te stellen (zie [Beperking van toegestane certificaatuitgever en -onderwerp](/manual/encryption/using_certificates#restricting_allowed_certificate_issuer_and_subject)).

4. In het uiteindelijke configuratiebestand van de agent kunnen de TLS-parameters er als volgt uitzien:

    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

(Het voorbeeld gaat ervan uit dat de host wordt bewaakt via een proxy, vandaar de onderwerp van het proxy-certificaat.)

5. Configureer de versleuteling voor deze agent in de Zabbix-frontend:

-   Ga naar: *Gegevensverzameling → Hosts*
-   Selecteer de host en klik op het tabblad **Versleuteling**

In het onderstaande voorbeeld zijn de Issuer- en Subject-velden ingevuld - zie [Beperking van toegestane certificaatuitgever en -onderwerp](/manual/encryption/using_certificates#restricting_allowed_certificate_issuer_and_subject) waarom en hoe u deze velden kunt gebruiken.

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

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

[comment]: # ({new-8b579779})
##### Zabbix web service

1\. Prepare files with the top-level CA certificates, the Zabbix web service certificate/certificate chain, and the private key as described in the [Zabbix server](#zabbix-server) section.
Then, edit the `TLSCAFile`, `TLSCertFile`, and `TLSKeyFile` parameters in the [Zabbix web service configuration file](/manual/appendix/config/zabbix_web_service) accordingly.

2\. Edit an additional TLS parameter in the [Zabbix web service configuration file](/manual/appendix/config/zabbix_web_service): `TLSAccept=cert`

TLS parameters in the final web service configuration file may look as follows:

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

3\. Configure Zabbix server to connect to the TLS-configured Zabbix web service by editing the `WebServiceURL` parameter in the [Zabbix server configuration file](/manual/appendix/config/zabbix_server):

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

[comment]: # ({/new-8b579779})

[comment]: # ({4c27726d-0f34d758})
#### Beperking van toegestane certificaatuitgever en -onderwerp

Wanneer twee Zabbix-componenten (bijv. server en agent) een TLS-verbinding tot stand brengen, controleren ze elkaars certificaten. Als een peer-certificaat is ondertekend door een vertrouwde CA (met vooraf geconfigureerd top-level certificaat in `TLSCAFile`), geldig is, niet is verlopen en enkele andere controles doorstaat, kan de communicatie doorgaan. De certificaatuitgever en het onderwerp worden in dit eenvoudigste geval niet gecontroleerd.

Hier is een risico - iedereen met een geldig certificaat kan zich voordoen als iemand anders (bijv. een hostcertificaat kan worden gebruikt om zich voor te doen als een server). Dit kan acceptabel zijn in kleine omgevingen waar certificaten worden ondertekend door een toegewijde in-house CA en het risico van voordoen laag is.

Als uw top-level CA wordt gebruikt voor het uitgeven van andere certificaten die niet door Zabbix moeten worden geaccepteerd of als u het risico van voordoen wilt verminderen, kunt u toegestane certificaten beperken door hun Issuer- en Subject-reeksen op te geven.

Bijvoorbeeld, u kunt in het configuratiebestand van de Zabbix-proxy schrijven:

    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

Met deze instellingen zal een actieve proxy niet communiceren met een Zabbix-server met een andere Issuer- of Subject-reeks in het certificaat, en een passieve proxy zal geen verzoeken accepteren van zo'n server.

Een paar opmerkingen over het matchen van Issuer- of Subject-reeksen:

1.  Issuer- en Subject-reeksen worden onafhankelijk gecontroleerd. Beide zijn optioneel.
2.  UTF-8 karakters zijn toegestaan.
3.  Een niet-gespecificeerde tekenreeks betekent dat elke tekenreeks wordt geaccepteerd.
4.  Tekstreeksen worden "zoals ze zijn" vergeleken, ze moeten exact hetzelfde zijn om overeen te komen.
5.  Wildcards en reguliere expressies worden niet ondersteund in het overeenkomen.
6.  Alleen enkele eisen van [RFC 4514 Lichtgewicht Directory Toegangsprotocol (LDAP): Tekstweergave van Distinguished Names](http://tools.ietf.org/html/rfc4514) zijn geïmplementeerd:
    1.  escapekarakters '"' (U+0022), '+' U+002B, ',' U+002C, ';'
        U+003B, '<' U+003C, '>' U+003E, '\\' U+005C ergens in de string.
    2.  ontsnappingskarakter spatie (' ' U+0020) of nummerteken ('\#'
        U+0023) aan het begin van de string.
    3.  ontsnappingskarakter spatie (' ' U+0020) aan het einde van de string.
7.  De match mislukt als een nul-teken (U+0000) wordt aangetroffen ([RFC
    4514](http://tools.ietf.org/html/rfc4514) staat dit toe).
8.  Eisen van [RFC 4517 Lichtgewicht Directory Toegangsprotocol (LDAP): Syntaxes en Matchregels](http://tools.ietf.org/html/rfc4517) en [RFC 4518 Lichtgewicht Directory Toegangsprotocol (LDAP): Geïnternationaliseerde Stringvoorbereiding](http://tools.ietf.org/html/rfc4518) worden niet ondersteund vanwege de benodigde hoeveelheid werk.

Volgorde van velden in Issuer- en Subject-reeksen en opmaak zijn belangrijk! Zabbix volgt de aanbeveling van [RFC 4514](http://tools.ietf.org/html/rfc4514) en gebruikt een "omgekeerde" volgorde van velden.

De omgekeerde volgorde kan worden geïllustreerd aan de hand van een voorbeeld:

    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

Let op dat het begint met het lage niveau (CN), doorgaat naar het middelste niveau (OU, O) en eindigt met het topniveau (DC) velden.

*OpenSSL* toont standaard certificaatuitgever en -onderwerp velden in "normale" volgorde, afhankelijk van de gebruikte extra opties:

    $ 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

Hier starten Issuer- en Subject-reeksen met het topniveau (DC) en eindigen met het lage niveau (CN) veld, spaties en veldscheiders zijn afhankelijk van de gebruikte opties. Geen van deze waarden komt overeen in Zabbix Issuer- en Subject-velden!

::: noteimportant
Om de juiste Issuer- en Subject-reeksen te krijgen die bruikbaar zijn in Zabbix, roep OpenSSL aan met speciale opties (`-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

Nu zijn de tekenreeksvelden in omgekeerde volgorde, de velden zijn door komma's gescheiden en kunnen worden gebruikt in Zabbix-configuratiebestanden en de frontend.

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

[comment]: # ({new-0d8ce487})
##### Rules for matching `Issuer` and `Subject` strings

The rules for matching `Issuer` and `Subject` strings are as follows:

-   `Issuer` and `Subject` strings are checked independently. Both are optional.
-   An unspecified string means that any string is accepted.
-   Strings are compared *as is* and must match exactly.
-   UTF-8 characters are supported. However, wildcards (`*`) or regular expressions are not supported.
-   The following [RFC 4514](http://tools.ietf.org/html/rfc4514) requirements are implemented - characters that require escaping (with a '`\`' backslash, U+005C):
    -   anywhere in the string: '`"`' (U+0022), '`+`' (U+002B), '`,`' (U+002C), '`;`' (U+003B), '`<`' (U+003C), '`>`' (U+003E), '`\\`' (U+005C);
    -   at the beginning of the string: space (' ', U+0020) or number sign ('`#`', U+0023);
    -   at the end of the string: space (' ', U+0020).
-   Null characters (U+0000) are not supported. If a null character is encountered, the matching will fail.
-   [RFC 4517](http://tools.ietf.org/html/rfc4517) and [RFC 4518](http://tools.ietf.org/html/rfc4518) standards are not supported.

For example, if `Issuer` and `Subject` organization (`O`) strings contain trailing spaces and the `Subject` organizational unit (`OU`) string contains double quotes, these characters must be escaped:

```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]: # ({/new-0d8ce487})

[comment]: # ({new-68f11ffd})
##### Field order and formatting

Zabbix follows the recommendations of [RFC 4514](http://tools.ietf.org/html/rfc4514), which specifies a "reverse" order for these fields, starting with the lowest-level fields (`CN`), proceeding to the mid-level fields (`OU`, `O`), and concluding with the highest-level fields (`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
```

In contrast, OpenSSL by default displays the `Issuer` and `Subject` strings in top-level to low-level order.
In the following example, `Issuer` and `Subject` fields start with the top-level (`DC`) and end with the low-level (`CN`) field.
The formatting with spaces and field separators also varies based on the options used, and thus will not match the format required by 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
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
```

To format *Issuer* and *Subject* strings correctly for Zabbix, invoke OpenSSL with the following options:

```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
```

The output will then be in reverse order, comma-separated, and usable in Zabbix configuration files and frontend:

```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]: # ({/new-68f11ffd})

[comment]: # ({3b065659-29732466})
#### Beperkingen bij het gebruik van X.509 v3-certificaatextensies

-   **Alternatieve naam van het onderwerp (*subjectAltName*)** extensie.\
    Alternatieve onderwerpnamen uit de *subjectAltName* extensie (zoals IP-adres, e-mailadres) worden niet ondersteund door Zabbix. Alleen de waarde van het "Subject" veld kan worden gecontroleerd in Zabbix (zie [Beperking van toegestane certificaatuitgever en -onderwerp](/manual/encryption/using_certificates#restricting_allowed_certificate_issuer_and_subject)).\
    Als het certificaat de *subjectAltName* extensie gebruikt, hangt het resultaat af van de specifieke combinatie van crypto-toolkits waarin Zabbix-componenten zijn gecompileerd (het kan wel of niet werken, Zabbix kan weigeren dergelijke certificaten van peers te accepteren).
-   **Uitgebreid sleutelgebruik (*Extended Key Usage*)** extensie.\
    Indien gebruikt, zijn over het algemeen zowel *clientAuth* (TLS WWW-clientverificatie) als *serverAuth* (TLS WWW-serververificatie) noodzakelijk.\
    Bijvoorbeeld, bij passieve checks treedt de Zabbix-agent op als een TLS-server, dus *serverAuth* moet worden ingesteld in het agentcertificaat. Voor actieve checks moet het agentcertificaat *clientAuth* hebben ingesteld.\
    *GnuTLS* geeft een waarschuwing bij schending van het sleutelgebruik, maar staat communicatie toe om door te gaan.
-   **Naambeperkingen (*Name Constraints*)** extensie.\
    Niet alle crypto-toolkits ondersteunen dit. Deze extensie kan voorkomen dat Zabbix CA-certificaten laadt waarin deze sectie is gemarkeerd als *kritisch* (afhankelijk van de specifieke crypto-toolkit).

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

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

Als een certificaat gecompromitteerd is, kan de CA het intrekken door het op te nemen in de CRL. CRL's kunnen worden geconfigureerd in de configuratiebestanden van de server, proxy en agent met behulp van de parameter `TLSCRLFile`. Bijvoorbeeld:

    TLSCRLFile=/home/zabbix/zabbix_crl_file

waarbij `zabbix_crl_file` CRL's van meerdere CA's kan bevatten en er als volgt uit kan zien:

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

Het CRL-bestand wordt alleen geladen bij het starten van Zabbix. Het bijwerken van CRL's vereist een herstart.

::: noteimportant
 Als een Zabbix-component is gecompileerd met *OpenSSL* en CRL's worden gebruikt, moet elke top- en tussenliggende CA in de certificaatketens een overeenkomstige CRL hebben (deze kan leeg zijn) in het `TLSCRLFile`.
:::

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