As jo problemen hawwe mei de prestaasjes fan jo server, is it earste ding dat jo wolle dwaan kontrolearje jo Linux-logs. Yn it systeemlog kinne jo wat nuttige diagnostykberjochten fine fan ferskate komponinten fan it bestjoeringssysteem lykas de kernel of ferskate tsjinsten, dus jo sille nei alle gedachten de oarsaak fan it mislearjen fine.
Elk berjocht yn it log wurdt generearre yn it resultaat fan bepaalde eveneminten yn it bestjoeringssysteem: fan 'e brûker, autorisaasje oant tsjinstferliening as applikaasje mislearre. Dizze eveneminten hawwe ferskillende prioriteiten ôfhinklik fan hoe kritysk se binne. D'r binne de folgjende soarten eveneminten yn Linux:
emerg- mislearring, heechste prioriteit;alert- driuwende warskôging;crit- kritysk barren;err- gewoane flater;warn- gewoane warskôging;notice- notifikaasje;info- ynformaasje berjocht;debug- debuggen ynformaasje;
Op it stuit binne de wichtichste logs-harvestingtsjinsten yn Linux rsyslog en systemd-sjoernaal. Se geane mei de measte moderne distribúsjepakketten en wurkje selsstannich.
rsyslog
Logs fan dizze tsjinst binne te finen yn "/ var / log /" map yn 'e foarm fan gewoane tekstbestannen. Logberjochten wurde yn ferskate triemmen pleatst ôfhinklik fan it type evenemint. Bygelyks, "/var/log/auth.log" befettet ynformaasje oer de autorisaasje fan brûkers yn it systeem, en "/var/log/kern.log" befettet kernelberjochten. Bestânsnammen kinne ferskille oer distribúsjepakketten, dus litte wy nei it konfiguraasjetriem sjen om it idee te krijen fan wat is wêr"/etc/rsyslog.d/50-default.conf".
Dizze regels litte sjen hokker bestân elk type logberjochten befettet. It linker diel toant it type berjocht yn 'e folgjende foarm "[Boarne].[Prioriteit]" en it rjochter diel toant de namme fan it lochbestân. By it skriuwen fan it type berjocht "*" karakter kin tafoege wurde oan. It betsjut lege wearde of "gjin” dat smyt it út de list. Litte wy de earste twa regels fan tichterby besjen.
“auth,authpriv.* /var/log/auth.log”
“*.*;auth,authpriv.none -/var/log/syslog”
De earste regel betsjut dat alle berjochten ûntfongen fan it autorisaasjemeganisme sille wurde opnommen yn "/var/log/auth.log"-bestân. Alle autorisaasjepogingen (sawol suksesfol as net) sille yn dit bestân registrearre wurde. De twadde regel jout oan dat alle berjochten útsein de berjochten dy't ferbûn binne mei autorisaasje wurde opnommen yn "/ var / log / syslog" bestân. Dizze twa bestannen binne meastentiids de populêrste. De folgjende regels definiearje it paad foar it bewarjen fan kernel logs "kern.*" en e-posttsjinst logs "post.*"
Logbestannen kinne wurde iepene mei help fan elke tekstbewurker, lykas minder, kat, sturt. litte wy de "/var/log/auth.log"bestân
less /var/log/auth.log
Elke rigel fan it bestân is in apart berjocht ûntfongen fan 'e applikaasje of tsjinst. Alle berjochten, nettsjinsteande har boarne, hawwe ien opmaak en besteane út 5 dielen. Litte wy it markearre berjocht yn 'e skermôfbylding as foarbyld nimme.
- Berjocht tiidstempel - "12 feb 06:18:33"
- Namme fan 'e kompjûter dy't it berjocht stjoerde - "vds"
- Namme fan de applikaasje of tsjinst dy't it berjocht stjoerde - "sshd"
- Proses ID - [653]
- Berjochttekst - "Akseptearre wachtwurd foar mihail fan 188.19.42.165 poarte 2849 ssh2"
Dit wie in foarbyld fan in suksesfolle ferbining mei SSH.
En hjir is hoe't in mislearre oanmeldingspoging der útsjocht:
Dit bestân registrearret ek kommando's mei avansearre tagongsrjochten
Lit ús iepenje de / var / log / syslog map
In markearre berjocht op 'e skermôfbylding is it berjocht oer it ôfsluten fan' e netwurkynterface.
Foar it sykjen nei ynformaasje fia lange tekstbestannen brûke grep nut. Jo kinne fine alle berjochten ûntfongen fan pptpd tsjinst yn de "/ var / log / syslog" map.
grep 'pptpd' /var/log/syslog
Tidens de diagnoaze kinne jo brûke sturt hulpprogramma dat ferskate lêste rigels bestannen kin werjaan. Kommando "tail -f / var / log / syslog” lit jo logs opnimme yn real-time besjen.
De tsjinst rsyslog is heul fleksibel en krêftich. It kin brûkt wurde foar it rispjen fan logs yn lokale systemen as op bedriuwsnivo. Jo kinne folsleine dokumintaasje fine op 'e offisjele webside https://www.rsyslog.com/
Logs rotaasje yn Linux
Logopname bart kontinu, sadat de grutte fan 'e bestannen konstant groeit. Rotaasjemeganisme soarget foar automatysk argivearjen fan âlde logs en it meitsjen fan nije bestannen. Ofhinklik fan 'e regels kin it deistich, wykliks, moanliks of troch grutte limyt barre. As nije logs wurde oanmakke, kinne âlde gewoan wiske wurde of per e-post ferstjoerd wurde. Logs rotaasje wurdt útfierd troch berikt nut. Jo kinne de haadkonfiguraasje fine yn "/etc/logrotate.confTriemynhâld wurdt ek ferwurke yn "/etc/logrotate.d/Map
Nije regels kinne ynlogd wurde yn it haadkonfiguraasjetriem. It is lykwols it bêste om in apart bestân te meitsjen yn "/etc/logrotate.d/Standert binne d'r in pear triemmen yn dizze map
Litte wy ris nei it bestân sjen "/etc/logrotate.d/rsyslog" dat befettet rotaasjeregels foar logs fan 'e rsyslog betsjinning.
Earst moat de regel it paad nei it logbestân befetsje en gean dan alle rjochtlinen yn kromme heakjes.
- draaie 7 - oantal bestannen om te hâlden - 7
- deistich - meitsje elke dei in nij bestân
- kompresje - âlde bestannen komprimearje en argyfearje
Jo kinne sjen op it skermôfbylding dat yn 'e "/ var / log /"map dêr binne it haadlogboek"syslog” en 7 argiven, dy't oerienkomt mei de regels yn it konfiguraasjetriem.
Jo kinne in mear detaillearre beskriuwing fan logrotate fine yn 'e hantlieding, útfiere de "man logrotate” kommando
Linux logs sammelje - journald
Logs harvesting tsjinst systemd-sjoernaal is in diel fan it inisjalisaasjesysteem systemd. Linux-logbestannen wurde opslein yn "/var/log/journal/” yn in spesjale opmaak en kin iepene wurde mei help fan journalctl nut. Records opmaak is krekt itselde as yn rsyslog.
Befel journalctl sûnder attributen toant alle records, mar it is net geskikt foar gruttere logs. Litte wy nei guon opsjes fan dit hulpprogramma sjen.
journalctl -b- lit alle records sjen sûnt de lêste startjournalctl -S "2020-02-17 12:00" -U "2020-02-17 12:10"- record sjen litte binnen in bepaalde tiidperioadejournalctl -u pptpd- records sjen litte fan in bepaalde tsjinstjournalctl -k- kernelberjochten sjen littejournalctl -p err- berjochten sjen litte fan in bepaalde prioriteit, berjochten mei hegere prioriteit yn dit gefal (crit, alert, emerg)journalctl -f- berjochten yn realtime sjen litte
Foar bettere fleksibiliteit kinne jo dizze opsjes kombinearje. Lit ús sjen litte alle flaters fan de pptpd betsjinning
journalctl -u pptpd -p err
As jo it paad nei it útfierbere bestân as attribút oantsjutte, sil it hulpprogramma alle berjochten sjen litte dy't troch dit bestân ferstjoerd binne. Litte wy alle berjochten sjen litte ferstjoerd troch it bestân "/usr/bin/sudo” sûnt 04:15 op 18 febrewaris 2020. Yn feite sil it alle kommando's sjen litte útfierd mei hegere tagongsrjochten.
journalctl -S "2020-02-18 04:15" /usr/bin/sudo
Om út te finen hoefolle skyfromte-logbestannen nimme om it folgjende kommando út te fieren
journalctl --disk-usage
Om it logbestân te beheinen ta 1Gb, útfiere it folgjende kommando
journalctl --vacuum-size=1G
It iepenjen fan binêre triemmen
Litte wy no wat spesjale bestannen sjen yn 'e "/ var / log /” map dêr't alle oanmeldpogingen wurde opslein. Dizze bestannen binne binêr en kinne allinich mei spesjale programma's iepene wurde.
/var/log/wtmp befettet ynformaasje oer suksesfolle oanmeldpogingen. Brûk it lêste hulpprogramma om it te iepenjen.
/var/log/btmp - befettet alle mislearre oanmeldpogingen. It kin wurde iepene mei lastb mei avansearre tagongsrjochten. Attribute -n definiearret it oantal rigels werjûn fan 'e ein fan' e triem.
/var/log/lastlog - befettet de tiid fan 'e lêste oanmeldingsaksje foar elk akkountrekord. It kin iepene wurde mei lastlog