How to Monitor Log-bestanden met Graylog2 op Debian 9

How to Monitor Log-bestanden met Graylog2 op Debian 9

Het is teamwork, maar eenvoudiger, prettiger en productiever.

Graylog is een gratis en open source log managementtool gebaseerd op Java, Elasticsearch en MongoDB die kan worden gebruikt voor het verzamelen van, indexeren en analyseren van elke server log vanaf een centrale locatie. U kunt gemakkelijk controleren de SSH logins en ongewone activiteiten voor foutopsporing in Logboeken met behulp van Graylog en toepassingen. Graylog biedt een krachtige querytaal, alarmeren mogelijkheden, een pijpleiding van de verwerking voor de transformatie van de gegevens en nog veel meer. U kunt uitbreiden van de functionaliteit van Graylog door middel van een REST API en Add-ons.

Graylog bestaat uit drie onderdelen:

  1. Elasticsearch: Het slaat alle de inkomende berichten en verstrek een zoeken faciliteit.
  2. MongoDB: Het wordt gebruikt voor database, opslag van de configuraties en de meta-informatie.
  3. Graylog server: ontvangt en verwerkt berichten van verschillende ingangen en voorzien van een webinterface voor analyse en monitoring.

In deze tutorial, We zullen uitleggen hoe te installeren Graylog2 op Debian 9 Server.

Voorwaarde

  • Een server met Debian 9.
  • Minimum 4 GB RAM.
  • Een statisch IP-adres 192.168.0.187 installatie op uw server.

1 Installeer benodigde pakketten

Voordat u begint, u zult moeten installeren van Java 8 en andere benodigde pakketten op uw systeem. Niet alle vereiste pakketten zijn beschikbaar in Debian 9 standaard repository, Zo moet u Debian-Backports toevoegen aan de lijst van pakket source. Eerste, inloggen met root-gebruiker en een backport.list-bestand maken:

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

Voeg de volgende regel toe:

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

Sla het bestand op wanneer u klaar bent, vervolgens uw systeem bijwerken met de volgende opdracht:

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

Zodra uw systeem up-to-date is, Installeer alle pakketten met de volgende opdracht:

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

Zodra de benodigde pakketten zijn geïnstalleerd, u kunt doorgaan met installeren van MongoDB.

2 Installeren van MongoDB

MongoDB is vereist voor het opslaan van de configuratie en de meta-informatie. MongoDB is beschikbaar in de Debian 9 standaard repository, Zo kunt u het installeren van MongoDB door gewoon draaien de volgende opdracht:

sudo apt-get install mongodb-server - y

Eenmaal MongoDB is geïnstalleerd, u kunt doorgaan met installeren Elasticsearch.

3 Installeren van Elasticsearch

Elasticsearch handelingen is als een zoekserver die alle de logboeken die door de Graylog-server verzonden slaat en worden de berichten weergegeven wanneer u aanvragen. Elasticsearch is niet beschikbaar in de Debian 9 standaard repository. U moet de Elasticsearch repository toevoegen aan de Debian package source.

Eerste, downloaden en toevoegen van de Elasticsearch GPG-sleutel met de volgende opdracht:

wget - qO – https://packages.Elastic.co/GPG-Key-elasticsearch | apt-sleutel toevoegen –

Volgende, Maak een Elasticsearch repo-bestand met de volgende opdracht:

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

Voeg de volgende regel toe:

deb https://packages.elastic.co/elasticsearch/2.x/debian stable main

Sla het bestand op wanneer u de afwerking bent, vervolgens bijwerken de repository door de volgende opdracht uit te voeren:

sudo apt-get update -y

Volgende, Elasticsearch installeren door de volgende opdracht uit te voeren:

sudo apt-get install elasticsearch -y

Eenmaal Elasticsearch is geïnstalleerd, je moet om de Elasticsearch belangrijkste configuratiebestand te wijzigen:

nano /etc/elasticsearch/elasticsearch.yml

De volgende wijzigingen aanbrengen:

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"]

Sparen en sluit het dossier wanneer u klaar bent, vervolgens start de Elasticsearch service en inschakelen om te starten bij het opstarten:

systemctl start elasticsearch
systemctl inschakelen elasticsearch

Na een paar seconden, Voer de volgende om te testen dat Elasticsearch naar behoren wordt uitgevoerd:

curl - XGET ' http://192.168.0.187:9200/_cluster/gezondheid? vrij = true’

Zorg ervoor dat de output toont de status van de cluster als “groen”:

{
  "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
}

Zodra Elasticsearch is geïnstalleerd en werkt prima, u kunt doorgaan naar de volgende stap.

4 Installeren van Graylog

Graylog is niet beschikbaar in de Debian 9 standaard repository, dus u zult moeten downloaden en installeren van Graylog 2 repository eerste. U kunt dit doen door de volgende opdracht uit te voeren:

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

Zodra de repository is geïnstalleerd, update voor de opslagplaats en Graylog server installeren met de volgende opdracht:

sudo apt-get update -y
sudo apt-get install graylog-server - y

Na het installeren van Graylog, u moet een geheim voor de beveiliging van de wachtwoorden van gebruikers en ook het instellen van een wachtwoord hash (sha256) voor de rootgebruiker instellen.

Eerste, genereren password_secret met de volgende opdracht:

pwgen -N 1 -s 96

Moet u de volgende uitvoer:

TRXbNPoW4gGC8BN8Gzl4wH3jtfLoi06WCJqia18UtYyPaNLx4r8U7jUPRlIJHoGGxrCjZVqAvW2DcueI6N1zHoy2bKEWLyyC

Volgende, hash-wachtwoord genereren voor rootgebruiker met de volgende opdracht:

echo - n youradminpassword | sha256sum

Moet u de volgende uitvoer:

e3c5925aa22abdfa18cf197a7b218fcad31acb6409d2e2dbebae807d3a9750ee

Nota: Herinner me beide wachtwoordsleutel, omdat beide sleutel moet geconfigureerd in de server.conf.

Volgende, u zult moeten aanpassen van de Graylog server belangrijkste configuratiebestand in/etc/graylog/server/directory:

nano /etc/graylog/server/server.conf

De volgende wijzigingen aanbrengen:

is_master = true node_id_file = /etc/graylog/server/node-id ###past-uw-wachtwoord-geheim-hier ### password_secret = TRXbNPoW4gGC8BN8Gzl4wH3jtfLoi06WCJqia18UtYyPaNLx4r8U7jUPRlIJHoGGxrCjZVqAvW2DcueI6N1zHoy2bKEWLyyC root_ gebruikersnaam = admin ###past-your-root-hash-password-here### root_password_sha2 = 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 = graaf elasticsearch_max_docs_per_index = 20000000
elasticsearch_max_number_of_indices = 7
retention_strategy = verwijderen 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: 9300 elasticsearch_http_enabled = false elasticsearch_network_host = 0.0.00
elasticsearch_discovery_initial_state_timeout = 3s elasticsearch_analyzer = standaard 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 = blokkeren ring_size = 65536
inputbuffer_ring_size = 65536
inputbuffer_processors = 2
inputbuffer_wait_strategy = blokkeren 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

Sparen en sluit het dossier wanneer u klaar bent, vervolgens start de Graylog service en inschakelen om te starten bij het opstarten:

systemctl graylog-server starten
systemctl graylog-server inschakelen

Zodra u klaar bent, u kunt doorgaan naar de volgende stap

5 Firewall configureren

Standaard, Graylog webinterface luistert op poort 9000, Zo moet u poort toestaan 9000 via UFW firewall. UFW firewall is niet geïnstalleerd in Debian 9. Zo moet u het eerst installeren. U kunt het installeren door de volgende opdracht uit te voeren:

sudo apt-get install ufw -y

Eenmaal UFW is geïnstalleerd, weer inschakelen door de volgende opdracht te typen;

ufw inschakelen

Volgende, poort toestaan 9000 via UFW firewall door de volgende opdracht uit te voeren:

ufw toestaan 9000

U kunt de status van UFW firewall elk moment door de volgende opdracht uit te voeren.

ufw status

Zodra de firewall is geconfigureerd, u kunt doorgaan naar de volgende stap.

6 Toegang Graylog Web Interface

Graylog webinterface luistert op poort 9000. Nu, Open uw webbrowser en typ de URL http://192.168.0.187:9000, u kunt het volgende scherm moeten zien:

Graylog Interface

Inloggen met gebruikersnaam “admin” en het wachtwoord die u hebt geconfigureerd op root_password_sha2 op server.conf. U kunt het volgende scherm moeten zien:

Graylog aan de slag

Volgende, u zult moeten toevoegen de input syslog ontvangen via het UDP. Toevoegen van de ingang, Klik op systeem-> Selecteer ingangen-> Syslog UDP-> tikken voort Barkas nieuwe input knop, u kunt het volgende scherm moeten zien:

Ingangsbron toevoegen in Graylog

Vul alle details zoals titel, Poort, Binden van adres en tenslotte tikken voort Uitgezonderd knop, u kunt het volgende scherm moeten zien:

Log bron detail

Nu ontvangt de Graylog-server de systeemlogboeken via de poort 8514 vanaf de client of de server.

Op het clientsysteem, u zult moeten rsyslog zodanig configureren dat de systeemberichten Logboeken wordt verzonden naar de server Graylog. U kunt dit doen door rsyslog.conf bestand te bewerken:

nano /etc/rsyslog.conf

Voeg de volgende regels:

# biedt UDP-syslog ontvangst $ModLoad imudp $UDPServerRun 8514
$sjabloon GRAYLOGRFC5424,"%protocol-version% %timestamp:::date-rfc3339% %HOSTNAME% %app-name% %procid% %msg%n"
*.* @192.168.0.187:8514; GRAYLOGRFC5424

Sla het bestand op en herstart rsyslog dienst deze wijzigingen wilt toepassen:

systemctl herstart rsyslog

Volgende, op de server Graylog Klik op de “Graylog bronnen” u kunt zien de ssh inloggen met mislukte inlogpogingen in het volgende scherm.

Monitor login pogingen met Graylog

Conclusie

Gefeliciteerd! u hebt met succes geïnstalleerd en geconfigureerd Graylog server op Debian 9. U kunt nu gemakkelijk zien de logboeken en de analyse van de systeemlogs van de centrale ligging. U kunt ook aanpassen van de Graylog en het verzenden van een ander type van logs volgens uw behoefte. U kunt meer informatie krijgen op de pagina Graylog documentatie http://docs.graylog.org/en/2.2/pages/getting_started.html. Voel je vrij om me een reactie als je vragen hebt.

Bron

een antwoord

  1. Nathaniel Simch de Morais

laat een antwoord achter