Configuration

Configuration de graylog, et de ses clients

Dans cette première partie, l’installation de syslog-ng va permettre de faire converger les logs des plugins de pfsense de façon à pouvoir les envoyer au serveur graylog de manière sécurisée.

Se rendre dans le “Package Manager” de Pfsense (1) puis (2)
Installer le package “syslog-ng”:

DM5

Voici le package une fois installé dans l’onglet “Installed Packages” (1):

DM5

DM5

Il faut maintenant configurer syslog-ng

Se rendre dans l’interface de configuration de syslog-ng (1) puis (2):

DM5

Pour la suite de ce tutoriel, nous allons s’appuyer sur le protocole udp car nous n’avons pas réussi à mettre en place le protocole TLS. Celui-ci provoquait une erreur sur le serveur graylog. En pratique il ets évident que le protocole TLS est à privilégier pour accroître la sécurité dé communication, et éviter que des individus puissent intercepter les logs pouvant contenir des données sensibles.

Choisir l’interface sur laquelle le serveur va écouter. Seuls les logs du Pfsense et de ses plugins pourront l’adresser. L’interface “loopback” (1) suffit donc.
Sélectionner le protocole de communication, ici “udp” (2)
Entrer le port sur lequel le serveur va écouter (3):

DM5

Sauvegarder la configuration (1):

DM5

Il faut maintenant configurer afin que les logs reçus sur le port 5140 puissent être envoyés à graylog.

Se rendre dans l’onglet “Advanced” (1)
2 objets vont être créés afin de former un pipeline suivant le schéma suivant:

Source > Logs (3) > Destination (2)

Penser à sauvegarder la création des objets (4)
Cliquer sur “Add+” pour créer un nouvel objet :

DM5

L’objet log ici n’est qu’un intermédiaire entre une source et une destination, mais des filtres peuvent être ajoutés.
Saisir un nom explicite (1)
Choisir le type d’objet “Log” (2)
Entrer la configuration de l’objet (3)

{ source(_DEFAULT); destination(Graylog); };

Ajouter une description explicite à votre objet (4)
Sauvegarder la configuration (5):

DM5

Créer un nouvel objet
L’objet destination ici va permettre d’envoyer les logs par le réseau à un serveur cible. Saisir un nom explicite (1)
Choisir le type d’objet “Destination” (2)
Entrer la configuration de l’objet (3)

{ network( "192.168.2.4" port(4444) transport(udp)); };

Ajouter une description explicite à votre objet (4)
Sauvegarder la configuration (5):

DM5

Misp doit maintenant rediriger ses logs vers syslog-ng.

Cliquer sur “Services” (1)
Cliquer sur “Snort” (2):

DM5

Cliquer sur le bouton d’édition (1):

DM5

Rediriger les logs vers le firewall du Pfsense (2)
Sélectionner le niveau et priorité de logs souhaités (3) (4)

DM5

Sauvegarder la configuration (1):

DM5

Relancer le service snort (1):

DM5

Maintenant que les logs de snort sont redirigés sur les logs du firewall, ces derniers doivent être redirigés vers le serveur syslog-ng.

Cliquer sur “Status” (1)
Cliquer sur “System Logs” (2):

DM5

Cliquer sur “Settings” (1)

DM5

Cocher “Send log to remote syslog server” (1)
Sélectionner le protocole de couche 3 “IPv4” (2)
Indique le serveur sur lequel les logs seront envoyés (graylog) (3) Cocher les types de logs qu’il est pertinent d’envoyer au server de logs. Ici, il faut au moins cocher “firewall” afin d’inclure les logs snort. Les logs “System events”, “DNS events” et “DHCP events” sont suffisamment important dans notre cas pour être déporter vers un serveur dédié:

DM5

Sauvegarder la configuration (1):

DM5

Pour rediriger les logs de squid, nous allons modifier les fichiers de configuration.

Cliquer sur “Diagnostic” (1)
Cliquer sur “Edit File” (2) afin d’accès à l’arborescence de fichiers du Pfsense:

DM5

Ouvrir le fichier au chemin suivant (1):

/usr/local/pkg/squid.inc

Ajouter les lignes suivantes (2):

    $logdir_cache = 'udp://127.0.0.1:5140';
    $logdir_access = 'udp://127.0.0.1:5140';

Commenter les lignes originelles relatives à la définition des variables redéfinies au-dessus.
Sauvegarder la configuration (3):

DM5

Cliquer sur “Services” (1)
Cliquer sur “Squid Proxy Server” (2):

DM5

Décocher l’activation de squid (1):

DM5

Sauvegarder la configuration (1):

DM5

Cocher l’activation de squid (1):

DM5

Sauvegarder la configuration (1):

DM5

Pfsense est maintenant configuré, il faut maintenant configurer la destiantion, graylog.

Cliquer sur “System” (1)
Cliquer sur “Inputs” (2):

DM5

Sélectionner un nouveau type d’input (1)
Sélectionner “Syslog UDP”:

DM5

Créer le nouvel input (1)

DM5

Sélectionner le noeud qui correspond à la machine courante (1)
Entrer un nom explicite pour l’input (2)
Entrer le port sur lequel le serveur graylog va écouter (3). Celui-ci correspond au port de l’object destination créé précédemment dans syslog-ng

DM5

Sauvegarder la configuration (1):

DM5

Voici l’input fraîchement créé :

DM5

Il est primordial à présent d’ouvrir le port sur le firewall de la machines graylog. Pour cela, deux commandes suffisent.

$ sudo firewall-cmd --add-port=4444/udp --permanent
$ sudo firewall-cmd --reload

DM5

L’Input peut maintenant être démarré (1):

DM5

Voici un extrait des logs récupérés :

DM5

logs DC01

Nous allons maintenant nous consacrer à la récupération des log de DC01 dans graylog.

Se rendre sur l’url suivant sur votre navigateur favoris de DC01:

DM5

Télécharger la version 3 de nxlog (1):

DM5

Cliquer sur “Enregistrer le fichier” (1):

DM5

Se rendre dans le fichier de téléchargement (1)
Double-cliquer sur le fichier .msi nouvellement téléchargé:

DM5

Accepter l’installation (1):

DM5

Poursuivre l’intallation (1):

DM5

Lire les conditions d’utilisation (1)
Accepter les conditions d’utilisation (2)
Cliquer sur “Next” (3):

DM5

Cliquer sur “Next” (1):

DM5

Cliquer sur “Install” (1):

DM5

Cliquer sur “Finish” (1):

DM5

Se rendre au chemin suivant (1)
Modifier le fichier de config (2). Ce fichier est disponible dans la section appropriée

DM5

Entrer “services” dans la barre de recherche du bureau (1)
Cliquer sur “Services” (2):

DM5

Sélectionner le service “nxlog” (1)
Redémarrer le service nxlog (2):

DM5

Nous allons passer sur l’interface graylog afin de configurer l’input.

Cliquer sur “System” (1)
Cliquer sur “Inputs” (2):

DM5

Sélectionner le type d’input GELF UDP (1) qui est un format standard graylog
Créer l’input (2):

DM5

Sélectionner un noeud graylog (1), ici, il s’agit du noeud sur lequel se trouve l’interface
Entrer un titre explicite (2)
Entrer un le port sur lequel le serveur graylog va écouter, ce port est identique à celui renseigné dans le fichier de configuration nxlog (3):

DM5

Sauvegarder la configuration (1):

DM5

Voici l’input nouvellement créé:

DM5

Il faut maintenant le port 44445 nécessaires à la communication avec DC01

$ sudo firewall-cmd --add-port=4445/udp --permanent 
$ sudo firewall-cmd --reload

DM5

Lancer l’écoute de l’input (1)
Ouvrir les logs en cliquant sur “Show received messages” (2):

DM5

Voici un extrait des logs récupérés :

DM5