Journalisation à distance Apache Kafka

Cette référence contient toutes les préférences disponibles pour la journalisation à distance Apache Kafka.

Génération de certificats de journalisation des terminaux à distance pour Compliance Reporter

Pour consigner les données d’un terminal à distance, vous avez besoin d’un certificat qui vérifie que le serveur reçoit bien les journaux. Une bonne pratique consiste à définir manuellement et dans son intégralité la chaîne de certificats à laquelle vous voulez que le client se connecte. Cette procédure s’applique uniquement à la configuration initiale. Après avoir validé les réglages, vous pouvez utiliser un profil de configuration dans Jamf Pro pour déployer les certificats sur les terminaux en production. Pour plus d’informations, référez-vous à la section Profils de configuration d’ordinateur du Guide de l’administrateur Jamf Pro.

  1. Dans Terminal, exécutez la commande suivante pour obtenir la sortie complète du fichier de certificat :
    echo -n | openssl s_client -showcerts -connect HOSTNAME:PORT
  2. Copiez le texte du certificat (y compris les lignes BEGIN CERTIFICATE et END CERTIFICATE) dans des fichiers .txt distincts. Par exemple :
    -----BEGIN CERTIFICATE-----
    MIIFazCCBFOgAwIBAgISBIuX8OD2k1mBKORs6oCdBeaFMA0GCSqGSIb3DQEBCwUA
    MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD
    ... (truncated for readability)
    -----END CERTIFICATE-----
  3. Renommez le fichier .txt en fichier .pem, puis double-cliquez pour l’importer dans le trousseau système.

    La sortie devrait ressembler à ce qui suit :

    $ ls -la certs.d
    server-leaf-cert.pem
    intermediate-ca.pem
    root-ca.pem
    $ cat server-leaf-cert.pem
    -----BEGIN CERTIFICATE-----
    MIIFazCCBFOgAwIBAgISBIuX8OD2k1mBKORs6oCdBeaFMA0GCSqGSIb3DQEBCwUA
    MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD
    ... (truncated for readability)
    -----END CERTIFICATE----- 

Génération du certificat auto-signé Apache Kafka pour Compliance Reporter

Si vous utilisez des serveurs Apache Kafka qui font appel à des certificats auto-signés, vous devez générer le certificat servant à configurer la clé de préférence TLSServerCertificate. En raison des conditions requises pour valider les certificats, l’autorité de certification doit apparaître dans la préférence TLSServerCertificate en même temps que le certificat du serveur signé.

  1. Dans Terminal, exécutez la commande suivante pour copier le magasin de confiance dans un fichier .p12 :
    /usr/bin/keytool -importkeystore -srckeystore kafka-server.truststore.jks -destkeystore kafka-server-truststore-copy.p12 -srcstoretype jks -deststoretype pkcs12
  2. Exécutez la commande suivante pour convertir le fichier .p12 que vous avez généré en fichier .pem (le format exigé par Compliance Reporter) :
    /usr/bin/openssl pkcs12 -in kafka-server-truststore-copy.p12 -out kafka-server-truststore-copy.pem
  3. Exécutez la commande suivante pour concaténer le fichier .pem de l’autorité de certification et le certificat public du serveur auto-signé :
    /bin/cat "kafka-server-truststore-copy.pem" "kafka-server-public-cert" > copy_everything_in_here_to_TLSServerCertificate_pref.txt
  4. Exécutez la commande suivante pour copier le certificat dans un fichier .txt :
    /bin/cat "copy_everything_in_here_to_TLSServerCertificate_pref.txt"
    -----BEGIN CERTIFICATE-----
    MIID3DCCAsQCCQC+fcrOm+zE4DANBgkqhkiG9w0BAQsFADCBrzELMAkGA1UEBhMC
    VVMxDTALBgNVBAgMBE5vbmUxDzANBgNVBAcMBlNlY3JldDEUMBIGA1UECgwLY21k
    U2VjdXJpdHkxGjAYBgNVBAsMEU1hZ2ljYWwgTXlzdGVyaWVzMS8wLQYDVQQDDCZl
    bWFpbC5kYW4uYWJvdXQuam9iLmF0LmNtZHNlY3VyaXR5LmNvbTEdMBsGCSqGSIb3
    DQEJARYOZGFuQGNtZHNlYy5jb20wHhcNMTkwNTE1MDUzMTM1WhcNMjkwNTEyMDUz
    MTM1WjCBrzELMAkGA1UEBhMCVVMxDTALBgNVBAgMBE5vbmUxDzANBgNVBAcMBlNl
    Y3JldDEUMBIGA1UECgwLY21kU2VjdXJpdHkxGjAYBgNVBAsMEU1hZ2ljYWwgTXlz
    dGVyaWVzMS8wLQYDVQQDDCZlbWFpbC5kYW4uYWJvdXQuam9iLmF0LmNtZHNlY3Vy
    aXR5LmNvbTEdMBsGCSqGSIb3DQEJARYOZGFuQGNtZHNlYy5jb20wggEiMA0GCSqG
    SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDO42BoNMw3gxNKlSTW1BeNeykYsz4rUBSF
    Yv1gQmwZVGPJo5vSSMsrl6PDNEvFkGyWIG9R1FlzYrFnVj7rYhTXYXHluTRj+1Hg
    JIfGztXYZCj6mCZ9lSobBnkaY8quiGBzxS7VhkKukiAUzCBKcNR9gSHqKGynFuY9
    63HI9jRIVlOBfCe23La8BH+vLzKswYUvUXQmeyz9sDUn5ZKvatq7VJb9qD7JIl1L
    hF+kuXtKgaTrmDTR8Gl/asPNXCVMop+1W8eZ+Lb1Wrm0/EepSVV90fkvOupYeCXz
    detU8MVzUY7ZX+FmFERDznSMtuX7i8llRMw3y6A/EPK4xjLoxdpVAgMBAAEwDQYJ
    KoZIhvcNAQELBQADggEBAL4Yi9B2h/mp/gNvvuJ09G8H9BlVXvjxlLfM5+nKvecP
    1oe5mekoPMiNspTvi3+64z+9znwELcWfKAww2iQHV1wj552URvBkhWa3IHZkgCDh
    6tILUpwXLx4xc0H1t2/JGj27yjSwyNZftAMjqver8oiv/s0c14YMy+AUac834kFz
    xSYVLNPz65FdZKVLEnncwpEB5Rj75oZL5gflfT/tMKY2luiVEh9kM9iuXwTPtM9m
    CkqKXC6s9SVg66PrvvZUARtUhU++/jsJYQUhWcdiZUOenYBIN3VuCQ+/1G4IGRvo
    RPS9rXKcnGAXz1+K13YXc0MzY6ESkcRj79MB0VX828U=
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    MIIDqTCCApECCQDWiXa1rlad3TANBgkqhkiG9w0BAQUFADCBrzELMAkGA1UEBhMC
    VVMxDTALBgNVBAgMBE5vbmUxDzANBgNVBAcMBlNlY3JldDEUMBIGA1UECgwLY21k
    U2VjdXJpdHkxGjAYBgNVBAsMEU1hZ2ljYWwgTXlzdGVyaWVzMS8wLQYDVQQDDCZl
    bWFpbC5kYW4uYWJvdXQuam9iLmF0LmNtZHNlY3VyaXR5LmNvbTEdMBsGCSqGSIb3
    DQEJARYOZGFuQGNtZHNlYy5jb20wHhcNMTkwNTE1MDUzMzIzWhcNMjkwNTEyMDUz
    MzIzWjB9MQswCQYDVQQGEwJVUzENMAsGA1UECBMETm9uZTENMAsGA1UEBxMETm9u
    ZTEZMBcGA1UEChMQY21kU2VjdXJpdHksIGluYzEbMBkGA1UECxMSam9iIGF0IGNt
    ZHNlY3VyaXR5MRgwFgYDVQQDEw9lbWFpbCBkYW4gYWJvdXQwggEiMA0GCSqGSIb3
    DQEBAQUAA4IBDwAwggEKAoIBAQCJUj6iPn5ix6rkerXF/Sq/lmxuyN7d5UCKoZin
    cilLtMbiuTF+YD9m79dtty/tS+b8RPlsGBwlZswHQcRg0Jy+2zCg0av4a6GnAQSt
    l49mKxs79g3jBbEcO8q1rIuB/7qxtOeRK+Bfzm8R9orV/p+Ec4Ba13px9uOPRKGm
    6lzAu4+LpleHXfyKQyeIqyadcBLIhr3nJATufTZlB8eD91zvQ9PMaWDq4KEms5HH
    IruwqXN2tjNeMGVtl+G2CK/ilkIkPZ5k5QtJqZyBroDsrA2SF04Lc9+jEoYErzvd
    UP1MmUwe+6XxIHfUmGzsA58tgmTnveB1eMnP7Tz47Yp/vfe9AgMBAAEwDQYJKoZI
    hvcNAQEFBQADggEBAK703fNWyzv0/t/GnMdFkMbSlm2Efd3w2xQYfge7XIl1Tkhf
    bx0bFSMqAPgyBR8uADS/cwDwnLG22Fcb7L3IMcLIuGqwtLhYQEkgQN/fyn+fXoFA
    9R/DeOdwXFjW2sNgluz9Zav4eqgVAb18S0TgsNDtBqoDZe7Mx/hll764icgsM5fi
    DJEe0/DuI/5nK9OSN9glC0pAoTG98GlgNX2f3d581FowTQxOAoGxYfSZT8TnjQZl
    BW0AYoVfDxpc2qYIeh7CcL4ggC55Iq4amxmEwXRUpmdDwoOPWjmJXiFdjh2Cldpe
    Ut3xLrRoo4oIcWELzuGujrl/BOtU7InAJgC2yqY=
    -----END CERTIFICATE-----

Clés de préférence générales de la journalisation à distance

Domaine
com.jamf.compliancereporter

Pour activer la journalisation à distance, vous devez configurer les clés de préférence générales suivantes en plus de celles spécifiques à votre solution SIEM.

CléDescription
LogRemoteEndpointEnabled

Active la transmission réseau des données de journaux.

<key>LogRemoteEndpointEnabled</key>
<true/>
LogRemoteEndpointURL

URL à laquelle sont envoyées les données de journaux. S’applique à tous les types de journalisation à distance. Si vous utilisez Splunk, ajoutez l’URL avec /services/collector/raw. Si vous utilisez le protocole TLS syslog, ajoutez l’URL en préfixe avec « tls:// ».

<key>LogRemoteEndpointURL</key>
<string>https://serveur.adresse.com:9093</string>
LogRemoteEndpointType
Type de serveur d’agrégation des journaux à distance Utilisez l’un des types suivants en fonction de votre serveur d’agrégation :
  • Splunk : "Splunk"

  • Apache Kafka : "Kafka"

  • TLS : "TLS"

  • Terminaux REST : "REST"

  • TLS syslog : "Syslog5424" ou "syslog3164"

  • Amazon Kinesis : "AWSKinesis"

<key>LogRemoteEndpointType</key>
<string>Nom du serveur</string>

Clés de préférence de la journalisation à distance Apache Kafka

Domaine
com.jamf.compliancereporter
CléDescription
LogRemoteEndpointKafka

(Obligatoire) Dictionnaire du conteneur pour les préférences Kafka.

<key>LogRemoteEndpointKafka</key>
<dict></dict>
TLSServerCertificate

(Obligatoire) Noms communs de la chaîne de certificats TLS publics stockés dans le trousseau système. Le mappage est effectué au réglage interne de Kafka ssl.ca.location. Compliance Reporter gère la transformation vers le chemin du fichier.

<key>TLSServerCertificate</key>
  <array>
    <string>nom_serveur.entreprise.com</string>
    <string>Let’s Encrypt Authority X3</string>
    <string>DST Root CA X3</string>
  </array>
TLSClientPrivateKey

Clé privée du client déchiffré et sans mot de passe au format .pem. Le mappage est effectué au réglage interne de Kafka « ssl.key.location ». Compliance Reporter gère la transformation vers le chemin du fichier.

<key>TLSClientPrivateKey</key>
  <string>-----BEGIN CERTIFICATE-----
{variable sized random bytes}
-----END CERTIFICATE-----</string>
TLSClientCertificate

Noms communs des certificats du client stockés dans le trousseau système. Le mappage est effectué au réglage interne de Kafka « ssl.certificate.location ». Compliance Reporter gère la transformation vers le chemin du fichier.

<key>TLSClientCertificate</key>
    <array>
    <string>Client Certificate CN</string>
  </array>
TopicName

Catégorie d’acheminement pour les serveurs Kafka.

<key>TopicName</key>
  <string>Compliance Reporter</string>