logbestanden monitoren met Graylog v3.1 op Debian 10

Graylog is een gratis en open-source log management programma gebaseerd op Java, ElasticSearch en MongoDB. Graylog kan gebruikt worden om elk server log te verzamelen, te indexeren en te analyseren vanuit een gecentraliseerde of gedistribueerdeplaats. We kunnen met Graylog gemakkelijk elke ongewone activiteit in de gaten houden om toepassingen en logs te debuggen. Graylog biedt een krachtige query taal, waarschuwingsmogelijkheden, een verwerkingspijplijn voor gegevenstransformatie en nog veel meer. We kunnen de functionaliteit van Graylog ook uitbreiden via een REST API en Add-ons.

Op dit moment is er nog geen officiële gids van Graylog v3.1 op Debian 10.

De installatie van Graylog v3.1 op Debian 10 verloopt in 9 stappen:

  • Stap 1 : Update Systemen met Debian Backport repositories
  • Stap 2 : Installeer wathulpjes
  • Stap 3 : Installeer headless JAVA runtime v11.00
  • Stap 4 : Installeer MongoDB v4.2, een databank om de configuraties en meta informatie in op te slaan.
  • Stap 5 : Installeer Elasticsearch-OSS 6.x: Het slaat alle binnenkomende berichten op en biedt een zoekmogelijkheid.
  • Stap 6 : Installeer Graylog v3.1 – Het ontvangt en logt van verschillende ingangen en biedt een webinterface voor analyse en bewaking.
  • Stap 7 : Configureer Graylog
  • Stap 8 : Test Graylog
  • Stap 9 : Inloggen Graylog

Voorwaarde

  • Een minimaal Debian 10. We kunnen naardeze handleiding verwijzen.
  • Minimaal 4 GB RAM, 2 core CPU, en 20 GB schijven
  • Standaard wachtwoord : KataLaluan
  • Standaard geheim :SecretRahsiaSecreta
  • root toegang met“su –“, Debian heeft onlangs het gedrag van het su commando veranderd. Nu vervangt‘su‘ commando niet langer PATH. Gebruik in plaats daarvan“su –“.

Stap 1: Update systemen met Debian Backport

Configureer je systeem om de Debian backports repository te gebruiken

cat > /etc/apt/sources.list << EOF
deb http://ftp.debian.org/debian/ buster main contrib non-free
deb http://security.debian.org/debian-security buster/updates main contrib non-free
deb http://ftp.debian.org/debian/ buster-updates main contrib non-free
deb http://ftp.debian.org/debian buster-backports main contrib non-free
EOF
apt -y update
apt -y dist-upgrade

Stap 2 – Installeer headless Java runtime v11.00

Graylog enElasticsearch is een Java-gebaseerde toepassing. We zullen dus Java op je systeem moeten installeren. Standaard is de nieuwste versie van Java beschikbaar in de standaard repository van Debian 10. We kunnen het installeren door gewoon het volgende commando uit te voeren:

apt -y install apt-transport-https default-jdk

Stap 3 – Installeer wathulpjes

We moeten een paar handige hulpmiddelen installeren als hulpje bij het proces:

  • GnuPG – eenimplementatie van de OpenPGP standaard, om te helpen bijhetsleutelbeheersysteem
  • wget – een hulpmiddel ombestanden op te halen met HTTP, HTTPS en FTP, de meest gebruikte Internet protocollen
apt -y install gnupg wget

Stap 4 – Installeer MongoDB v4.2

Standaard is MongoDB niet beschikbaar in de standaard repository van Debian 10. We moeten dus de MongoDB repository aan het systeem toevoegen:

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 4B7C549A058F8B6B
echo "deb http://repo.mongodb.org/apt/debian buster/mongodb-org/4.2 main" | tee /etc/apt/sources.list.d/latest-mongodb.list
apt -y update
apt install -y mongodb-org

Schakel de MongoDB diensten in en herstart ze:

systemctl enable mongod.service
systemctl start mongod.service

Stap 5 : Installeer Elasticsearch-OSS 6.x

Op ditmomentondersteunt Graylog v3.1Elasticsearch-OSS 7.x nogniet.

We gaan de Elasticsearch sleutel en repository aan Debian toevoegen. Met de elasticsearch repository, verstrekt door de elastic.co, kunnen we Elasticsearch installerendoor het volgende commando uit te voeren:

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
echo "deb https://artifacts.elastic.co/packages/oss-6.x/apt stable main" | tee -a /etc/apt/sources.list.d/latest-elastic-6.x.list
apt -y update
apt -y install elasticsearch-oss

ConfigureerElasticsearch voor de clusternaam

sed -i "s/#cluster.name: my-application/cluster.name: graylog-application/g" /etc/elasticsearch/elasticsearch.yml

Schakelde Elasticsearch diensten in en herstart ze:

systemctl enable elasticsearch.service
systemctl start elasticsearch.service

Stap 6 : Installeer Graylog v3.1

We gaan een eenvoudig Graylog pakket downloaden dat helpt om Graylog sleutel toe te voegen en deGraylogrepositoryin te stellen

cd /tmp/
wget https://packages.graylog2.org/repo/packages/graylog-3.1-repository_latest.deb
dpkg -i graylog-3.1-repository_latest.deb
apt -y update

Installeer Graylogdoor het volgende commando uit te voeren:

apt -y install graylog-server

Stap 7 : Configureer Graylog

Hash het wachtwoord, en kopieer de hash.“KataLaluan” is het huidige gekozen wachtwoord.

echo 'KataLaluan' | tr -d '\n' | sha256sum | cut -d" " -f1

Voeg het gehashte wachtwoord toe in het Graylog configuratiebestand

sed -i "s/^root_password_sha2 =\$/root_password_sha2 = a25d2f6605c9e27f182d39b66a8b527eb7f2360e52b2ccc7614f8ac24e472bef/g" /etc/graylog/server/server.conf

Voeg het geheim toe in het Graylog configuratiebestand, De minimale lengte ervan is 16 tekens.

sed -i "s/^password_secret =\$/password_secret = SecretRahsiaSecreta/g" /etc/graylog/server/server.conf

Sta externe toegang tot graylog toe

sed -i "s/^#http_bind_address = 127.0.0.1:9000/http_bind_address = 0.0.0.0:9000/g" /etc/graylog/server/server.conf

Verander de tijdzone naargelang de plaats

sed -i "s/#root_timezone = UTC/root_timezone = Asia\/Kuala_Lumpur/g" /etc/graylog/server/server.conf

SchakelGraylogin en herstart diensten:

systemctl enable graylog-server.service
systemctl start graylog-server.service

Als het Graylog achter een router staat, moeten we het WAN IP adres van de router in de Graylog configuratie zetten. Het kunnen ook de A records van een DNS zijn die naar hetzelfde IP adres wijzen

sed -i '/http_publish_uri =/c\http_publish_uri = http://graylog.howtoforge.com:9000/' /etc/graylog/server/server.conf

Stap 8 : Test Graylog

Laten we het Graylog testen met enkele primitieve commando’s

apt -y install netcat curl

Hier is wat voorbeeldcommando om te loggen.

echo "Hello Graylog, let's be friends." | nc -w 1 -u 127.0.0.1 9099

Hier is een voorbeeldcommando om de Graylog server API status op te vragen.

curl -X GET http://localhost:9200
curl -XGET 'http://localhost:9200/_cluster/health?pretty=true'

Hier is een voorbeeldcommando om Graylog server log te krijgen.

tail -f /var/log/graylog-server/server.log

Stap 9 : Inloggen Graylog

Laten we de WebGUI gebruiken. de URL kan zijn:

  • http://<Local_IP_Address>:9000/
  • http://<Publiek_IP_Address>:9000/
  • http://<A_Record>:9000/

Voorbeeld van de URL

  • http://192.168.0.3:9000/
  • http://104.26.2.165:9000/
  • http://graylog.howtoforge:9000/

Na de URL in een browser ingevoerd te hebben, zouden we de volgende aanmeldpagina moeten zien, de standaard gebruikersnaam is admin, en het gekozen wachtwoord isKataLaluan,

Na het inloggen zouden we de volgende Graylog pagina moeten zien:

Conclusie

Klaar, we hebben met succes de Graylog 3.1 server op Debian 10 geïnstalleerd en ingesteld. Nu kunnen we gemakkelijk de logs en de analyse van de systeemlogs op de centrale plaats bekijken. Meer informatie vind je op deGraylog documentatie pagina. Geef commentaar en feedback als je vragen hebt.

Veel plezier met loggen.