Comment surveiller des fichiers de Log avec Graylog2 sur Debian 9

Comment surveiller des fichiers de Log avec Graylog2 sur Debian 9

Du c’est travail d’équipe, mais plus simple, plus agréable et plus productif.

Graylog est un outil de gestion de journal gratuit et open source basé sur Java, Elasticsearch et MongoDB qui peut être utilisé pour collecter, index et analyser n’importe quel journal serveur depuis un emplacement centralisé. Vous pouvez facilement surveiller les connexions SSH et toute activité inhabituelle pour le débogage des applications et les journaux à l’aide de Graylog. Graylog fournit un langage de requête puissant, capacités d’alerte, un pipeline de traitement pour la transformation de données et bien plus encore. Vous pouvez étendre les fonctionnalités de Graylog à travers une API REST et Add-ons.

Graylog se compose de trois éléments :

  1. Elasticsearch : Il stocke tous les entrants messages et fournir une installation de recherche.
  2. MongoDB : Il est utilisé pour la base de données, stocke les configurations et les méta-informations.
  3. Graylog serveur : il reçoit et traite les messages de diverses contributions et fournir une interface web pour l’analyse et le suivi.

Dans ce tutoriel, Nous vous expliquerons comment installer Graylog2 sous Debian 9 Serveur.

Condition sine qua non

  • Un serveur sous Debian 9.
  • Minimum 4 GO DE RAM.
  • Une adresse IP statique 192.168.0.187 programme d’installation sur votre serveur.

1 Installer les paquets nécessaires

Avant de commencer, vous devez installer Java 8 et autres paquets nécessaires à votre système. Pas tous les requis des paquets sont disponibles dans Debian 9 référentiel standard, donc vous aurez besoin d’ajouter des Backports Debian à la liste de la source du package. Première, Connectez-vous avec l’utilisateur root et créer un fichier backport.list :

nano /etc/apt/sources.list.d/backport.list

Ajoutez la ligne suivante :

deb http://ftp.debian.org/debian jessie-backports principal

Enregistrez le fichier lorsque vous avez terminé, puis mettez à jour votre système avec la commande suivante :

apt-get update -y
apt-get upgrade -y

Une fois que votre système est à jour, installer tous les paquets avec la commande suivante :

apt-get install apt-transport-https openjdk-8-jre-headless uuid-runtime pwgen -y

Une fois que tous les paquets nécessaires sont installés, vous pouvez procéder à l’installation de MongoDB.

2 Installer MongoDB

MongoDB est nécessaire pour stocker la configuration et les informations méta. MongoDB est disponible dans la Debian 9 référentiel par défaut, ainsi, vous pouvez installer MongoDB en exécutant simplement la commande suivante :

apt-get install mongodb-serveur - y

Une fois installé MongoDB, vous pouvez procéder à l’installation Elasticsearch.

3 Installer Elasticsearch

Elasticsearch est des actes comme un serveur de recherche qui stocke tous les journaux envoyés par le serveur Graylog et affiche les messages chaque fois que vous demandez. Elasticsearch n’est pas disponible dans la Debian 9 référentiel par défaut. Vous devrez ajouter le dépôt de Elasticsearch à la source du package Debian.

Première, Télécharger et ajouter la clé GPG Elasticsearch avec la commande suivante :

wget - qO – https://packages.Elastic.co/GPG-KEY-elasticsearch | Ajouter apt-key –

Prochaine, créer un fichier de repo Elasticsearch avec la commande suivante :

nano /etc/apt/sources.list.d/elasticsearch.list

Ajoutez la ligne suivante :

écurie de https://packages.elastic.co/elasticsearch/2.x/debian deb principal

Enregistrez le fichier lorsque vous avez fini, puis mettez à jour le référentiel en exécutant la commande suivante :

apt-get update -y

Prochaine, installer Elasticsearch en exécutant la commande suivante :

apt-get install elasticsearch -y

Une fois installé Elasticsearch, vous devrez modifier le fichier de configuration principal Elasticsearch :

nano /etc/elasticsearch/elasticsearch.yml

Apportez les modifications suivantes :

cluster.Name : graylog network.host : 192.168.0.187
discovery.zen.ping.timeout: 10s
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["192.168.0.187:9300"]

Enregistrez et fermez le fichier lorsque vous avez terminé, puis démarrez le service Elasticsearch et lui permettre de démarrer au démarrage :

systemctl commencer elasticsearch
systemctl activer elasticsearch

Après quelques secondes, exécutez ce qui suit afin de tester que Elasticsearch fonctionne correctement :

curl - XGET ' http://192.168.0.187:9200/_cluster/santé ? assez = true’

Assurez-vous que la sortie indique l’état du cluster comme “vert”:

{
  "cluster_name" : "graylog",
  "status" : "green",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 1,
  "active_primary_shards" : 1,
  "active_shards" : 1,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 1,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0,
  "task_max_waiting_in_queue_millis" : 0,
  "active_shards_percent_as_number" : 50.0
}

Une fois que Elasticsearch est installé et fonctionne très bien, vous pouvez passer à l’étape suivante.

4 Installer Graylog

Graylog n’est pas disponible dans la Debian 9 référentiel par défaut, donc vous aurez besoin de télécharger et d’installer Graylog 2 référentiel de première. Vous pouvez le faire en exécutant la commande suivante :

wget https://packages.graylog2.org/repo/packages/graylog-2.2-repository_latest.deb
dpkg -i graylog-2.2-repository_latest.deb

Une fois que le référentiel est installé, mise à jour du référentiel et installer Graylog serveur avec la commande suivante :

apt-get update -y
apt-get install graylog-serveur - y

Après l’installation de Graylog, vous devrez définir un secret pour sécuriser les mots de passe utilisateur et également définir un mot de passe de hachage (sha256) pour l’utilisateur root.

Première, générer des password_secret avec la commande suivante :

pwgen -N 1 -s 96

Vous devriez voir la sortie suivante :

TRXbNPoW4gGC8BN8Gzl4wH3jtfLoi06WCJqia18UtYyPaNLx4r8U7jUPRlIJHoGGxrCjZVqAvW2DcueI6N1zHoy2bKEWLyyC

Prochaine, générer le mot de passe de hachage pour l’utilisateur root avec la commande suivante :

echo - n youradminpassword | sha256sum

Vous devriez voir la sortie suivante :

e3c5925aa22abdfa18cf197a7b218fcad31acb6409d2e2dbebae807d3a9750ee

Remarque : N’oubliez pas les deux clé de mot de passe, parce que les deux clés devrez configuré dans le server.conf.

Prochaine, vous devrez modifier le fichier de configuration principal de serveur Graylog situé dans le répertoire/etc/graylog/serveur / :

nano /etc/graylog/server/server.conf

Apportez les modifications suivantes :

is_master = true node_id_file = /etc/graylog/server/node-id ###past-votre-mot de passe-secret-ici ### password_secret = TRXbNPoW4gGC8BN8Gzl4wH3jtfLoi06WCJqia18UtYyPaNLx4r8U7jUPRlIJHoGGxrCjZVqAvW2DcueI6N1zHoy2bKEWLyyC root_username = admin root_password_sha2 ###past-your-root-hash-password-here### = e3c5925aa22abdfa18cf197a7b218fcad31acb6409d2e2dbebae807d3a9750ee root_timezone = UTC plugin_dir = /usr/share/graylog-server/plugin rest_listen_uri = http://0.0.0.0:9000/api/rest_enable_cors = true web_listen_uri = http://0.0.0.0:9000 / rotation_strategy = count elasticsearch_max_docs_per_index = 20000000
elasticsearch_max_number_of_indices = 7
retention_strategy = supprimer elasticsearch_shards = 4
elasticsearch_replicas = 1
elasticsearch_index_prefix = graylog allow_leading_wildcard_searches = true allow_highlighting = false elasticsearch_cluster_name = graylog elasticsearch_discovery_zen_ping_unicast_hosts = 192.168.0.187: elasticsearch_http_enabled 9300 = false elasticsearch_network_host = 0.0.00
elasticsearch_discovery_initial_state_timeout = 3 s elasticsearch_analyzer = standard output_batch_size = 500
output_flush_interval = 1
output_fault_count_threshold = 5
output_fault_penalty_seconds = 30
processbuffer_processors = 5
outputbuffer_processors = 3
processor_wait_strategy = blocage ring_size = 65536
inputbuffer_ring_size = 65536
inputbuffer_processors = 2
inputbuffer_wait_strategy = blocage message_journal_enabled = true message_journal_dir = /var/lib/graylog-server/journal async_eventbus_processors = 2
lb_recognition_period_seconds = 3
alert_check_interval = 60
mongodb_uri = mongodb://localhost/graylog mongodb_max_connections = 1000
mongodb_threads_allowed_to_block_multiplier = 5
content_packs_dir = /usr/share/graylog-server/contentpacks content_packs_auto_load = grok-patterns.json proxied_requests_thread_pool_size = 32

Enregistrez et fermez le fichier lorsque vous avez terminé, puis démarrez le service Graylog et lui permettre de démarrer au démarrage :

graylog-serveur de démarrage systemctl
systemctl activer graylog-serveur

Une fois que vous avez terminé, vous pouvez passer à l’étape suivante

5 Configurer le pare-feu

Par défaut, Interface web de Graylog est à l’écoute sur le port 9000, ainsi vous devrez autoriser port 9000 par l’intermédiaire de pare-feu UFW. Pare-feu UFW n’est pas installé dans Debian 9. Ainsi, vous devrez installer d’abord. Vous pouvez l’installer en exécutant la commande suivante :

apt-get install ufw -y

Une fois installé UFW, activez-le en exécutant la commande suivante ;

UFW enable

Prochaine, permettre le port 9000 par l’intermédiaire de pare-feu UFW en exécutant la commande suivante :

UFW permettent 9000

Vous pouvez vérifier l’état du pare-feu UFW n’importe quel moment en exécutant la commande suivante.

UFW status

Une fois que le pare-feu est configuré, vous pouvez passer à l’étape suivante.

6 Interface d’accès Web Graylog

Interface web de Graylog est à l’écoute sur le port 9000. Maintenant, Ouvrez votre navigateur web et tapez l’URL http://192.168.0.187:9000, vous devriez voir l’écran suivant :

Interface Graylog

Connexion avec un nom d’utilisateur “admin” et le mot de passe que vous avez configuré pour root_password_sha2 sur server.conf. Vous devriez voir l’écran suivant :

Graylog mise en route

Prochaine, vous devez ajouter l’entrée pour recevoir le message de syslog en utilisant le protocole UDP. Pour ajouter l’entrée, Cliquez sur System-> Sélectionnez les entrées-> Syslog UDP-> Cliquez sur le bouton d’entrée nouveau lancement, vous devriez voir l’écran suivant :

Ajouter la source d’entrée à Graylog

Remplir tous les détails tels que titre, Port, Lier l’adresse et enfin cliquez sur le bouton enregistrer, vous devriez voir l’écran suivant :

Journal source détail

Maintenant le serveur de Graylog recevra les logs du système en utilisant le port 8514 depuis le client ou le serveur.

Sur le système Client, vous devrez configurer rsyslog afin qu’il envoie les messages de journaux système sur le serveur Graylog. Vous pouvez le faire en éditant le fichier rsyslog.conf :

nano /etc/rsyslog.conf

Ajoutez les lignes suivantes :

# fournit UDP syslog réception $ModLoad imudp $UDPServerRun 8514
$modèle GRAYLOGRFC5424,"%protocol-version% %timestamp:::date-rfc3339% %HOSTNAME% %app-name% %procid% %msg%n"
*.* @192.168.0.187:8514 ; GRAYLOGRFC5424

Enregistrez le fichier et redémarrez le service rsyslog pour appliquer ces modifications :

systemctl redémarrage rsyslog

Prochaine, sur le serveur de Graylog cliquez sur le “Sources de Graylog” vous pouvez voir le ssh connecter avec des tentatives de connexion qui ont échoué dans l’écran suivant.

Les tentatives de connexion moniteur avec Graylog

Conclusion

Félicitations ! vous avez installé et configuré le serveur Graylog sur Debian 9. Vous pouvez maintenant facilement voir les journaux et l’analyse des journaux système de l’emplacement central de. Vous pouvez également personnaliser Graylog et envoyer un autre type de journaux selon votre besoin. Vous pouvez obtenir plus d’informations sur la page de documentation Graylog http://docs.graylog.org/en/2.2/pages/getting_started.html. N’hésitez pas à moi un commentaire si vous avez des questions.

Source

une réponse

  1. Nathaniel Simch de Morais

Laisser une réponse