
Introduction
Nous allons configurer le serveur de flotte pour utiliser #logstash comme sortie.
Cette documentation suppose que vous avez déjà configuré Elasticsearch et Kibana. Sinon, vous pouvez va ici pour Certificats signés publiquement configuration. Si vous souhaitez utiliser Certificats auto-signés, va ici À déterminer.
Cette documentation suppose que vous avez regardé des vidéos précédentes sur les agents élastiques, les stratégies d'agent et Fleet Server.
Exigences
- Une nouvelle instance de machine Linux comme Ubuntu 20.04 pour agir en tant que serveur
- Affectation de sortie par politique
Serveur de sortie Logstash [05:40]
Accédez au terminal du serveur Elasticsearch. Créez un fichier avec la commande :
cd /usr/share/elasticsearch/bin
vi make-certs.sh
et ajoutez la commande ci-dessous, remplacez le DNS variable avec le nom de domaine du serveur :
./elasticsearch-certutil cert \
--name logstash \
--ca-cert /etc/elasticsearch/certs/ca/ca.crt \
--ca-key /etc/elasticsearch/certs/ca/ca.key \
--dns <your.host.name.here> \
--pem
Enregistrez le fichier et exécutez la commande ci-dessous :
chmod 755 make-certs.sh
./make-certs.sh
Générer un certificat SSL pour Logstash
Appuyez sur Entrée si vous y êtes invité pour saisir le résultat souhaité. Accédez maintenant au répertoire où le certificat a été compressé et décompressez-le :
cd ..
unzip certificate-bundle.zip
Décompresser le certificat pour Logstash
Accédez au terminal du serveur Logstash et exécutez les commandes ci-dessous :
mkdir -p /etc/certs/logstash
cd /etc/certs/logstash/
puis copiez le contenu du serveur elasticsearch avec la commande ci-dessous :
scp root@<IP ADDRESS OR SERVER DNS>:/usr/share/elasticsearch/logstash/* ./
ci-dessous un exemple de commande :
scp root@es.evermight.net:/usr/share/elasticsearch/logstash/* ./
puis copiez également l'autorité de certification sur le serveur logstash également :
scp root@es.evermight.net:/etc/elasticsearch/certs/ca/ca.crt ./
puis exécutez la commande ci-dessous pour convertir la clé logstash en pkcs8 :
openssl pkcs8 -inform PEM -in logstash.key -topk8 -nocrypt -outform PEM -out logstash.pkcs8.key
Installons maintenant logstash sur le serveur logstash :
apt-get update && apt dist-upgrade -y && apt-get install vim curl gnupg gpg;
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elastic-keyring.gpg;
sudo apt-get install apt-transport-https;
echo "deb [signed-by=/usr/share/keyrings/elastic-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-8.x.list;
sudo apt-get update && sudo apt-get install logstash
ouvrir un fichier pour la configuration
vi fleet-output.conf
et collez le contenu ci-dessous dans le fichier :
input {
elastic_agent {
port => 5044
ssl_enabled => true
ssl_certificate_authorities => ["/etc/certs/ca/ca.crt"]
ssl_certificate => "/etc/certs/logstash/logstash.crt"
ssl_key => "/etc/certs/logstash/logstash.pkcs8.key"
ssl_client_authentication => "required"
}
}
output {
file {
path => "fleet-output.txt"
}
}
et enregistrez. Exécutez maintenant la commande ci-dessous :
/usr/share/logstash/bin/logstash -f /root/fleet-output.conf
Créons maintenant une configuration de pipeline pour logstash :
mkdir config;
cd config/;
vi pipelines.yml
Et collez le contenu ci-dessous :
- pipeline.id: elastic-agent-pipeline
path.config: "/root/fleet-output.conf"
et enregistrez. Exécutez-le à nouveau.
cd ~;
/usr/share/logstash/bin/logstash
Activer la licence d'essai [19:40]
Connectez-vous à Kibana depuis votre navigateur. Accéder à Gestion de la pile > Gestion des licences, et cliquez sur Commencez un essai de 30 jours.
Commencez votre essai gratuit de 30 jours
et cela devrait montrer un succès comme celui-ci :
Essai gratuit de 30 jours Activé avec succès
Serveur de flotte : Remarques importantes [21:00]
Nous allons configurer deux sorties pour Fleet Server, qui sont :
- Sortie Elasticsearch
- Sortie de Logstash
Serveur de flotte : Sortie Elasticsearch [25:00]
Aller à Fleet > settings, et cliquez sur l'icône du stylo d'édition. Reportez-vous à l'image ci-dessous ;
Modifier la sortie du serveur de flotte
Accédez maintenant au serveur Elasticsearch. Exécutez la commande ci-dessous pour obtenir l'empreinte du certificat.
cd /etc/elasticsearch/certs/ca
openssl x509 -fingerprint -sha256 -noout -in ca.crt | awk -F"=" {' print $2 '} | sed s/://g
créer un script.
ca.sh
et ajoutez-y le contenu ci-dessous
echo 'ssl:';
echo ' certificate_authorities:';
echo ' - |';
cat ca.crt | sed 's/^/ /'
et enregistrez-le. Exécutez maintenant le fichier
chmod 755 ca.sh
./ca.sh
Cela devrait ressembler à la capture d’écran ci-dessous ;
Certificate in YML style
Copiez les sorties et collez-les dans votre kibana sur le Espace de configuration YML avancé
Cela devrait ressembler à la capture d’écran ci-dessous :
Configuration du serveur de flotte
puis cliquez sur Enregistrer et appliquer les paramètres, puis cliquez sur Enregistrer et déployer.
Serveur de flotte : sortie Logstash [27:43]
Cliquez sur Add Output dans le Flotte > Agent, pour ajouter une sortie pour Logstash.
Donnez-lui un nom comme logstash, et pour le type sélectionnez logstash, saisissez l'adresse IP ou DNS du serveur Logstash, par exemple lg.evermight.net:5044
, pour le Autorités de certification SSL du serveur coller dans le ca.crt
le contenu du fichier une fois imprimé et vous pouvez utiliser une commande comme
cat ca.crt
Sur votre terminal serveur elastcsearch, créez un fichier et suivez les étapes ci-dessous pour obtenir le certificat SSL du client :
cd /usr/share/elasticsearch/bin
vi client-cert.sh
et collez le contenu ci-dessous :
./elasticsearch-certutil cert \
--name client \
--ca-cert /etc/elasticsearch/ca/ca.crt \
--ca-key /etc/elasticsearch/ca/ca.key \
--pem
et exécutez la commande ci-dessous
chmod 755 client-cert.sh
Lorsque vous y êtes invité, donnez-lui un nom client.zip
Accédez maintenant au répertoire où le certificat a été compressé et décompressez-le :
cd ..
unzip client.zip
Allez maintenant dans le répertoire qui a été décompressé et copiez le contenu du client.crt
déposer:
cd client
cat client.crt
et collez-le dans le Certificat SSL client section. Pour le Clé de certificat SSL client, copiez le contenu du client.key
et collez-le.
cat client.key
Then click on Enregistrer et appliquer les paramètresLes deux résultats enregistrés ressembleront à la capture d'écran ci-dessous :
Sorties du serveur de flotte
Serveur de flotte : Installation [32:01]
Accédez au terminal du serveur de flotte et exécutez la commande ci-dessous :
apt-get update && apt dist-upgrade -y && apt-get install -y vim curl gnupg gpg;
et créer quelques répertoires :
cd /etc/;
mkdir certs;
cd certs/;
mkdir ca;
mkdir fl.evermight.net;
cd ca
Exécutez maintenant cette commande sur le terminal du serveur de flotte pour copier les certificats du serveur élastique vers le serveur de flotte
scp root@es.evermight.net:/etc/elasticsearch/certs/ca/ca.crt ./
Revenez maintenant au serveur élastique et exécutez les commandes suivantes :
cd ~
vi fleet-cert.sh
collez le contenu ci-dessous dans le fichier
mkdir /root.ft.evermight.net/
/usr/share/elasticsearch/bin/elasicsearch-certutil cert \
--out /root/ft.evermight.net/fleet.zip \
--name fleet \
--ca-cert /etc/elasticsearch/certs/ca/ca.crt \
--ca-key /etc/elasticsearch/certs/ca/ca.key \
--dns ft.evermight.net \
--pem
et enregistrez le fichier, exécutez maintenant les commandes ci-dessous :
chmod +x fleet-cert.sh;
./fleet-cert.sh
Allez maintenant dans le répertoire où le certificat a été zippé et décompressez-le :
cd ft.evermight.net/;
unzip fleet.zip;
Revenez maintenant au terminal du serveur de flotte et exécutez la commande suivante :
mv fl.evermight.net ft.evermight.net;
cd ft.evermight.net
Exécutez maintenant cette commande sur le terminal du serveur de flotte pour copier les certificats du serveur élastique vers le serveur de flotte
scp root@es.evermight.net:/root/ft.evermight.net/fleet/* ./
Revenez maintenant à votre Kibana et créons la politique du serveur de flotte. Cliquez sur Ajouter un serveur de flotte comme indiqué dans la capture d'écran ci-dessous :
Ajouter un serveur de flotte
Aller à Avancé, et cliquez sur Créer une politique comme le montre l'image ci-dessous :
Créer une politique de serveur de flotte
Pour le Choisissez un mode de déploiement pour la sécurité, cliquez sur production.
Pour le Ajoutez votre hôte Fleet Server, dans la section nom, tapez fleet, et dans la section URL,https://ft.evermight.net:8220
.
Then click on Ajouter un hôte. Cliquez ensuite sur Générer un jeton de service. Copiez les commandes sur le Installer Fleet Server sur un hôte centralisé section:
Installer Fleet Server sur une commande hôte centralisée
et sur le terminal du serveur de flotte, créez un fichier :
cd ~
vi install.sh
et collez le contenu qui a été copié et apportez les modifications appropriées comme indiqué dans la capture d'écran ci-dessous :
Modification de la commande Installer Fleet Server sur un hôte centralisé
Modifiez ensuite l'autorisation du fichier et exécutez-le.
chmod +x install.sh
./install.sh
Cliquez sur Oui lorsque vous y êtes invité.
Maintenant à Kibana, allez à Flotte > Agent, puis actualisez la page. Vous devriez obtenir un résultat similaire à la capture d'écran ci-dessous :
Elastic Agent installé avec succès
Agent élastique : site Web sous Linux [40:33]
Accédez au terminal du serveur du site web. Installez-y Apache :
apt-get install -y apache-2
Accédez à l'adresse IP de l'ordinateur dans votre navigateur. Si vous l'avez oubliée, vous pouvez utiliser la commande ci-dessous pour la récupérer :
ip a
Sur Kibana, allez à Intégrations > Parcourir les intégrations, et recherchez Apache, et cliquez sur le résultat comme indiqué dans la capture d'écran ci-dessous :
Recherche Apache
Cliquez sur Ajouter un serveur HTTP Apache par le coin supérieur droit.
Ajouter Apache
Sur le Où ajouter cette intégration section, sous Nouveaux hôtes, cliquez sur Options avancées. Faites défiler vers le bas pour Sortie pour les intégrations et changer de défaut à logstash. Faites défiler vers le bas pour Sortie pour la surveillance des agents et changer de défaut à logstash.
Then click on save and continue, puis sélectionnez Ajoutez Elastic Agent à vos hôtes.
Copiez ensuite la commande pour qu'elle soit gérée par le serveur de flotte, comme indiqué dans la capture d'écran ci-dessous :
Commande à gérer par flotte
Accédez au terminal du serveur du site Web et exécutez cette commande pour copier les certificats du serveur élastique vers le serveur du site Web.
mkdir -p /etc/certs/ca;
cd /etc/certs/ca/;
scp root@es.evermight.net:/etc/elasticsearch/certs/ca/ca.crt ./
Créer un fichier pour exécuter l'installation
cd ~
vi install-agent.sh
et collez le contenu qui a été copié et apportez les modifications appropriées comme indiqué dans la capture d'écran ci-dessous :
Commande éditée
Modifiez ensuite l'autorisation du fichier et exécutez-le.
chmod 755 install-agent.sh
./install-agent.sh
Et entrez oui lorsque vous y êtes invité.
Agent élastique : journaux d'événements sous Windows [47:50]
Ouvrez un terminal de type bash sur la machine/serveur Windows et copiez le fichier de certificat
mkdir certs
cd certs
scp root@es.evermight.net:/etc/elasticsearch/certs/ca/ca.crt ./
Accédez à la barre de recherche de Windows et recherchez Observateur d'événements et exécutez-le en tant qu'administrateur comme indiqué dans la capture d'écran ci-dessous :
Exécuter l'observateur d'événements en tant qu'administrateur
Lorsqu'il s'ouvre, allez à Journaux des applications et services > Microsoft > Activité WMI > Opérationnel.
Sur Kibana, allez à Intégrations > Parcourir les intégrations, et recherchez windows, et cliquez sur le résultat comme indiqué dans la capture d'écran ci-dessous :
Recherche personnalisée dans le journal des événements Windows
Cliquez sur Ajouter un journal des événements Windows personnalisé par le coin supérieur droit.
Ajouter un journal des événements Windows personnalisé
Revenez à l'application Observateur d'événements sur votre ordinateur Windows et copiez le Nom du journal comme indiqué dans la capture d'écran ci-dessous, et collez-le dans le Journaux d'événements Windows personnalisés section sur votre page Kibana.
Copier le nom du journal de l'observateur d'événements
Sur le Où ajouter cette intégration section, sous Nouveaux hôtes, cliquez sur Options avancées.
Faites défiler vers le bas pour Sortie pour les intégrations et changer de défaut à logstash. Faites défiler vers le bas pour Sortie pour la surveillance des agents et changer de défaut à logstash.
Then click on save and continue, puis sélectionnez Ajoutez Elastic Agent à vos hôtes.
Copiez ensuite la commande pour qu'elle soit gérée par le serveur de flotte, comme indiqué dans la capture d'écran ci-dessous :
Commande pour que le journal des événements Windows soit géré par flotte
Accédez à un éditeur de texte sur votre machine Windows et modifiez la commande copiée comme indiqué dans la capture d'écran ci-dessous :
Commande éditée
Ouvrir et exécuter Powershell En tant qu'administrateur, collez la commande et exécutez-la. Saisissez « oui » lorsque vous y êtes invité.