Cum se instalează serverul de jurnal Rsyslog pe Linux

În calitate de administratori, personal de asistență IT sau manageri ai rețelelor și sistemelor, avem ceva fundamental care să ne ajute să ținem evidența fiecărui eveniment care are loc în sistem, atât la nivelul utilizatorilor, al aplicațiilor sau al sistemului în sine, iar acestea sunt evenimente.

Fiecare eveniment înregistrează o serie de elemente care ne ajută să determinăm în detaliu fiecare activitate cu valori precum data, ora, ID-ul, utilizatorul și evenimentul care a avut loc, permițându-ne astfel o gestionare și administrare mult mai centralizată.
Putem vedea că fiecare înregistrare aparține unei categorii diferite, cum ar fi sistemul, securitatea etc.

În mediile Linux avem la dispoziție utilitarul Rsyslog cu care va fi posibil să gestionăm aceste evenimente într-un mod simplu și complet.

Ce este RsyslogRsyslog (sistem rachetă rapidă pentru jurnal - sistem rapid pentru procesarea jurnalelor) este un utilitar conceput pentru a oferi performanțe ridicate, caracteristici de securitate excelente și un design modular care îi permite să fie scalabil pentru a se potrivi fiecărei companii.

Rsyslog este capabil să accepte intrări dintr-o mare varietate de surse, să le transforme și să genereze rezultate pentru diverse destinații, optimizând managementul IT.

RSYSLOG este capabil să livreze mai mult de un milion de mesaje pe secundă către destinații locale atunci când se aplică o prelucrare limitată, inclusiv destinații la distanță.

Caracteristici RsyslogCând utilizați Rsyslog, vom avea caracteristici precum:

  • Directiva $ LocalHostName [nume]: Această directivă ne permite să suprascriem numele gazdei sistemului cu cel specificat în directivă. Dacă directiva este dată de mai multe ori, toate cu excepția ultimei vor fi ignorate.
  • S-a adăugat suport Hadoop HDFS.
  • Are un modul impstat pentru a rula statistici periodice pe contoare Rsyslog.
  • Are pluginul imptcp.
  • Include un nou tip de modul "generator de șiruri", utilizat pentru a accelera procesarea ieșirilor.
  • Suportă OSX și Solaris.
  • Abilitatea de a crea analize de mesaje personalizate.
  • Suport multi-reguli pentru imudp.
  • Noua interfață a modulului de ieșire tranzacțională care oferă performanțe superioare.
  • Multi-threading
  • Suportă protocoale TCP, SSL, TLS, RELP
  • Suportă MySQL, PostgreSQL, Oracle și multe altele
  • Filtrează orice parte a mesajului syslog
  • Format de ieșire complet configurabil
  • Potrivit pentru rețelele de difuzare de clasă business

Filtrare rsyslogRsyslog poate filtra mesajele syslog pe baza proprietăților și acțiunilor selectate, aceste filtre sunt:

  • Instalație sau filiere prioritare
  • Filtre bazate pe proprietăți
  • Filtre bazate pe expresii

Filtrul facilității este reprezentat de subsistemul Linux intern care este responsabil pentru producerea înregistrărilor, avem următoarele opțiuni:

  • auth / authpriv = Sunt mesajele produse de procesele de autentificare
  • cron = Sunt înregistrări asociate cu sarcini cron
  • daemon = Acestea sunt mesaje legate de serviciile de sistem care rulează
  • kernel = Indică mesajele kernel Linux
  • mail = Include mesaje de pe serverul de mail
  • syslog = Sunt mesaje legate de syslog sau de alți demoni
  • lpr = Acoperă imprimante sau mesaje server de imprimare
  • local0 - local7 = Numărați mesajele personalizate sub controlul administratorului
Nivelurile de prioritate sau severitate cu Rsyslog sunt atribuite unui cuvânt cheie și unui număr după cum urmează:
  • emerg = Emergency - 0
  • alert = Alerte - 1
  • err = Erori - 3
  • warn = Warnings - 4
  • notice = Notice - 5
  • info = Informații - 6
  • debbug = Depanare - 7

1. Cum se configurează și se verifică starea Rsyslog în Linux

Pasul 1
Demonul Rsyslog este instalat automat pe majoritatea distribuțiilor Linux, dar dacă nu, trebuie să executăm următoarele comenzi:

Pe sistemele Debian

 sudo apt-get install Rsyslog 

Pe sistemele RedHat sau CentOS

 sudo yum instalați Rsyslog 

Pasul 2
Putem verifica starea curentă a Rsyslog executând următoarea linie:

Pe distribuțiile Linux care utilizează Systemd

 statusctl status rsyslog.service 

În versiunile mai vechi de Linux

 service rsyslog status /etc/init.d/rsyslog status

MARI

Pasul 3
În cazul în care starea serviciului Rsyslog este inactivă, o putem începe executând următoarele:

În noile versiuni de Linux

 systemctl pornește rsyslog.service 

În versiunile mai vechi de Linux

 service rsyslog start /etc/init.d/rsyslog start

MARI

2. Configurare Rsyslog pe Linux


Pentru a configura un program rsyslog pentru a rula în modul server, trebuie să edităm fișierul de configurare din directorul /etc/rsyslog.conf.

Pasul 1
Putem accesa folosind editorul dorit:

 sudo nano /etc/rsyslog.conf

MARI

Pasul 2
Acolo vom face următoarele modificări. Localizați și decomentați, eliminând semnul (#), de pe următoarele linii pentru a permite primirea mesajelor jurnal UDP pe portul 514. În mod implicit, portul UDP este utilizat de syslog pentru a trimite și primi mesaje:

 $ ModLoad imudp $ UDPServerRun 514
Pasul 3
Protocolul UDP nu este fiabil pentru schimbul de date printr-o rețea, așa că putem configura Rsyslog pentru a trimite mesaje jurnal către un server la distanță prin protocolul TCP. Pentru a activa protocolul de recepție TCP, vom elimina următoarele linii:
 $ ModLoad imtcp $ InputTCPServerRun 514
Pasul 4
Acest lucru va permite demonului rsyslog să se lege și să asculte pe un socket TCP pe portul 514.
Ambele protocoale pot fi activate în rsyslog pentru a rula simultan pe Linux.
Dacă este necesar să specificăm ce expeditori au acces la demonul rsyslog, trebuie să adăugăm următoarele linii:
 $ AllowedSender TCP, 127.0.0.1, 192.168.0.5/24, * .domain.com 

MARI

Pasul 5
În acest moment va fi necesar să creați un nou șablon care va fi analizat de demonul rsyslog înainte de a primi jurnalele primite. Acest șablon ar trebui să informeze serverul local Rsyslog unde să stocheze mesajele jurnal primite. Acest șablon va merge după linia $ AllowedSender:

 $ template Jurnale de intrare, "/ var / log /% HOSTNAME% /% PROGRAMNAME% .log" *. *? Jurnale de intrare & ~ 

MARI

Pasul 6
Pentru a înregistra numai mesajele generate de kern vom adăuga următoarele. Cu cele de mai sus, înregistrările primite sunt analizate de șablon și vor fi stocate în sistemul de fișiere local din directorul / var / log /, în calea:% HOSTNAME% și% PROGRAMNAME%.

 kern. *? Jurnale de intrare
Pasul 7
Putem salva modificările folosind următoarea combinație de taste:

Ctrl + O

Lăsăm editorul folosind:

Ctrl + X

3. Reporniți serviciul și verificați porturile Rsyslog pe Linux

Pasul 1
Când facem orice tip de modificare, trebuie să repornim serviciul executând una dintre următoarele opțiuni:

 sudo service rsyslog reporniți sudo systemctl reporniți Rsyslog
Pasul 2
Pentru a verifica porturile utilizate de Rsyslog vom executa următoarele:
 sudo netstat -tulpn | grep rsyslog
Pasul 3
După cum am indicat, portul utilizat va fi 514, trebuie să-l activăm în firewall pentru a fi utilizat cu următoarele linii.

Pe RedHat și CentOS

 firewall-cmd --permanent --add-port = 514 / tcp firewall-cmd -reload

În Debian

 ufw allow 514 / tcp ufw allow 514 / udp
Dacă folosim IPTables:
 iptables -A INPUT -p tcp -m tcp --dport 514 -j ACCEPT iptables -A INPUT -p udp --dport 514 -j ACCEPT

MARI

În acest fel, am instalat Rsyslog în Linux pentru a gestiona diferitele tipuri de jurnale care sunt generate în mod constant în acesta.

wave wave wave wave wave