Aveti intrebari? Sunteti in locul potrivit!
Log-urile sunt foarte utile pentru analizarea si rezolvarea problemelor legate de sistem si aplicatiilor in Linux. In mod implicit, toate fisierele log sunt localizate in directorul / var / log pentru sistemele de operare bazate pe Linux. Exista mai multe tipuri de fisiere log, inclusiv cronuri, kernel, utilizatori, securitate si majoritatea acestor fisiere sunt controlate de serviciul Rsyslog.
In mod implicit, Rsyslog este instalat pe serverele Ubuntu 18.04, in cazul in care nu este instalat executati urmatoarea comanda:
apt-get install rsyslog -yDupa instalarea Rsyslog, puteti verifica versiunea Rsyslog utilizand urmatoarea comanda:
rsyslogd -vAr trebui sa aveti urmatorul output:
rsyslogd 8.32.0, compiled with: PLATFORM: x86_64-pc-linux-gnu PLATFORM (lsb_release -d): FEATURE_REGEXP: Yes GSSAPI Kerberos 5 support: Yes FEATURE_DEBUG (debug build, slow code): No 32bit Atomic operations supported: Yes 64bit Atomic operations supported: Yes memory allocator: system default Runtime Instrumentation (slow code): No uuid support: Yes systemd support: Yes Number of Bits in RainerScript integers: 64 See http://www.rsyslog.com for more information.
Puteti verifica statusul Rsyslog utilizand urmatoarea comanda:
systemctl status rsyslogAr trebui sa avetiurmatorul output:
? rsyslog.service - System Logging Service
Loaded: loaded (/lib/systemd/system/rsyslog.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2019-10-22 04:28:55 UTC; 1min 31s ago
Docs: man:rsyslogd(8)
RSyslog Documentation
Main PID: 724 (rsyslogd)
Tasks: 4 (limit: 1114)
CGroup: /system.slice/rsyslog.service
??724 /usr/sbin/rsyslogd -n
Oct 22 04:28:53 ubuntu1804 systemd[1]: Starting System Logging Service...
Oct 22 04:28:54 ubuntu1804 rsyslogd[724]: imuxsock: Acquired UNIX socket '/run/systemd/journal/syslog' (fd 3) from systemd. [v8.32.0]
Oct 22 04:28:54 ubuntu1804 rsyslogd[724]: rsyslogd's groupid changed to 106
Oct 22 04:28:54 ubuntu1804 rsyslogd[724]: rsyslogd's userid changed to 102
Oct 22 04:28:54 ubuntu1804 rsyslogd[724]: [origin software="rsyslogd" swVersion="8.32.0" x-pid="724" x-info="http://www.rsyslog.com"] start
Oct 22 04:28:55 ubuntu1804 systemd[1]: Started System Logging Service.
Rsyslog este instalat si functional. Este necesara configurarea server mode. Puteti realiza acest lucru editand /etc/rsyslog.conf.
nano /etc/rsyslog.conf
Este necesar sa selecati utilizarea UDP sau TCP sau ambele.
Pentru a utiliza ambele tipuri de conectari UDP si TCP in acelasi timp, cautati si decomentati liniile de mai jos :
$ModLoad imudp $UDPServerRun 514 $ModLoad imtcp $InputTCPServerRun 514
Apoi, definiti un subnet specific , IP sau domeniu pentru a limita accesul:
$AllowedSender TCP, 127.0.0.1, 192.168.0.0/24, *.exemplu.ro $AllowedSender UDP, 127.0.0.1, 192.168.0.0/24, *.exemplu.ro
Estene cecesara sa adaugati un template pentru a specifica serverului Rsyslog unde anume sa stocheze mesajele de tip syslog. Adaugati urmatoarea linie chiar dupa sectiunea GLOBAL DIRECTIVES :
$template remote-incoming-logs,"/var/log/%HOSTNAME%/%PROGRAMNAME%.log" *.* ?remote-incoming-logs & ~
Salvati si inchideti fisierele dupa ce ati terminat editarea. Apoi, verificati configurarea Rsyslog pentru eventuale erori de sintaxa utilizand urmatoarea comanda :
rsyslogd -f /etc/rsyslog.conf -N1Ar trebui sa aveti urmatorul output:
rsyslogd: version 8.32.0, config validation run (level 1), master config /etc/rsyslog.conf rsyslogd: End of config validation run. Bye.
Intr-un final, restartati serviciul Rsyslog utilizand urmatoarea comanda:
systemctl restart rsyslogAcum, verificati daca Rsyslog asculta TCP/UDP utilizand comanda:
netstat -4altunp | grep 514Art trebui sa aveti urmatorul output:
tcp 0 0 0.0.0.0:514 0.0.0.0:* LISTEN 1332/rsyslogd udp 0 0 0.0.0.0:514 0.0.0.0:* 1332/rsyslogd
Rsyslog server este instalat si configurat sa primeasca log-urile de host-urile remote.
Acum, este necesar sa configurati clientul Rsyslog pentru a transmite mesaje de tip syslog spre serverul remote.
Autentificati intr-un client si deschideti fisierul de configurare Rsyslog :
nano /etc/rsyslog.confAdaugati urmatoarele linii la sfarsitul fisierului:
##Enable sending of logs over UDP add the following line: *.* @192.168.0.101:514 ##Enable sending of logs over TCP add the following line: *.* @@192.168.0.101:514 ##Set disk queue when rsyslog server will be down: $ActionQueueFileName queue $ActionQueueMaxDiskSpace 1g $ActionQueueSaveOnShutdown on $ActionQueueType LinkedList $ActionResumeRetryCount -1
Salvati si inchideti fisierul . Apoi, restartati serverul Rsyslog pentru aplicarea modificarilo:
systemtcl restart rsyslogIn acest moment, clientul Rsyslog este configurat pentru a trimite log-ul lui la serverul Rsyslog.
Acum, autentificati la serverul Rsyslog si verificati directorul /var/log directory. Ar trebui sa observati inregistrarile hosname-ului cu detaliile clientului, inclusiv anumite fisiere cu log-uri pentru:
ls /var/log/rsyslog-client/Output-ul va avea forma:
CRON.log kernel.log rsyslogd-2039.log rsyslogd.log sudo.log wpa_supplicant.log