Tips : Supervision du bastion Teleport
Nous allons voir aujourd’hui comment mettre en place la supervision de Teleport. Teleport est un bastion disponible en OpenSource qui permet de faire du contrôle d’accès de vos ressources.
Afin de pouvoir effectuer les différentes actions de cet article et donc les tester, il va vous falloir les prérequis suivants :
- un serveur avec l’application Teleport installée et fonctionnelle ;
- Un collecteur QRadar (typiquement le All-in-One QRadar CE donc je vous ai présenté l’installation ici) ;
- Le flux TCP vers le port 514 ouvert (ou un autre port) depuis le serveur où il y a l’application Teleport vers le serveur QRadar.
2. Configuration du rsyslog
Dans un premier temps, il faut configurer l’envoi des logs depuis la machine Teleport vers le serveur QRadar. L’application Teleport enregistre les logs par défaut dans le fichier suivant :
/var/lib/teleport/log/events.log
Si ce n’est pas le cas, il faut vous référer à la documentation Teleport pour appliquer la configuration par défaut à votre application.
Une fois que le chemin du fichier est validé, il faut créer le fichier de configuration rsyslog (touch /etc/rsyslog.d/qradar.conf) si ce dernier n’est pas déjà créé. S’il est déjà créé, il suffit de rajouter les lignes ci-dessous à votre configuration existante en prenant en compte de ne pas utiliser les mêmes Facilities.
module(load="imfile" PollingInterval="10")
input(type="imfile"
File="/var/lib/teleport/log/events.log"
Tag="teleport-application"
Facility="local1")
local1.* @@<IP_QRADAR>:514
Pour vérifier votre configuration vous pouvez exécuter : rsyslogd -N1. Si la commande renvoie la sortie suivante c’est que tout est bon et qu’il n’y a pas de problème dans votre configuration.
rsyslogd: version 8.2102.0, config validation run (level 1), master config /etc/rsyslog.conf
rsyslogd: End of config validation run. Bye.
3. Installation du DSM dans QRadar
Dans un deuxième temps, nous allons configurer la partie QRadar. En effet, cette technologie n’est pas prise en compte par défaut par le SIEM. Je vous ai mis à disposition sur mon GitHub le DSM personnalisé pour cette technologie qui comporte tout le parsing et le mapping.
Pour installer le fichier dans QRadar, il faut effectuer les étapes suivantes :
- Téléchargez le fichier ;
- Allez sur l’onglet “Admin” de votre instance QRadar puis cliquez sur “Extensions Management“, une nouvelle fenêtre va s’ouvrir ;
- Cliquez sur “Add“, une nouvelle fenêtre va s’ouvrir ;
- Cliquez sur “Browse“, une fenêtre d’explorateur de fichiers va s’ouvrir ;
- Sélectionnez le fichier téléchargé au début puis cliquez sur “Ouvrir” ;
- Cochez l’option “Install immediatly” ;
- Cliquez sur “Add“.
Une fois l’extension installée, il faut créer la log source via le Log Source Management dans QRadar. Pour ce faire, il faut effectuer les étapes suivantes :
- Allez sur l’onglet “Admin” de votre instance QRadar puis cliquez sur “Log Source Management“, une nouvelle fenêtre va s’ouvrir ;
- Cliquez sur “+ New Log Source” puis “Single Log Source” ;
- Pour le choix du Log Source Type, sélectionnez “[CUSTOM] Teleport Bastion” puis cliquez sur “Step 2: Select Protocol Type” ;
- Pour le choix du Protocol Type, sélectionnez “Syslog” puis “Step 3: Configure Log Source Parameters” ;
- Remplissez les champs suivants puis cliquez sur “Step 4: Configure Protocol Parameters”
- Name : Teleport @ <SERVEUR_FQDN> ;
- Remplissez les champs suivants puis cliquez sur “Finish”
- Log Source Identifier : <SERVEUR_FQDN> (ou IP) ;
Une fois que le processus de création de log source est fait, il faut effectuer un déploiement pour que les changements soient pris en compte. Pour cela il faut aller dans l’onglet “Admin” de QRadar puis cliquer sur “Deploy Changes“. Après le déploiement, nous pouvons effectuer un test en nous connectant à l’application Teleport avec un faux mot de passe puis un bon mot de passe et on obtient les logs suivants :
4. Conclusion
Nous voici donc à la conclusion de ce tips sur la collecte des logs du bastion Teleport. J’ai souhaité vous présenter ce petit tuto pour vous montrer qu’il n’est pas si compliqué de mettre en place une supervision pour vos différents outils, le tout est de trouver un moyen de récupérer les logs et ensuite un moyen de les envoyer. Ici nous avons utilisé rsyslog pour les deux mais il est également possible de faire autrement.
5. Bibliographie
- Documentation éditeur sur les logs : Export Events with Fluentd