Administrationsopgaverne i Linux er komplekse i mange situationer på grund af mængden af processer, tjenester og roller, der udføres hvert sekund, og til dette skal vi tilføje logins, installation af applikationer og ikke glemme alle de hændelser, som hver applikation registrerer i distributionen, der administreres . Heldigvis for administratorer og kontrol- eller revisionspersonale har vi forskellige kommandoer udviklet for at lette administration og kontrol af systemhændelser, og derfor vil Solvetic fokusere på to af de vigtigste kommandoer til dette formål. Syslog og Klogd.
Loggen er som en log, hvor hændelser, fejl, ændringer og processer, der genereres af applikationer eller operativsystemet, registreres for senere at kunne læse denne post og bestemme, hvilke hændelser der er sket, især i tilfælde af fejl eller sårbarheder. Logfilerne på et linux -system findes i / var / log -biblioteket. Linux -logsystemet styres af to dæmoner:
SYSLOGDGenererer systemlogfiler. Syslogd kører automatisk, når du starter et Linux -system, og det er ansvarligt for at gemme rapporter om computerens drift. Den modtager beskeder fra de forskellige dele af systemet, kernen og applikationer, gemmer dem forskellige steder, både lokale og fjernt, efter et kriterium defineret i /etc/syslog.conf konfigurationsfilen.
KLOGDGenerer kernelogfilerne. klogd dirigerer kernelog -meddelelser til systemloggen. Brugeren kan styre håndteringen af kernemeddelelser ved at redigere syslogd -konfigurationsfilen. Disse klogd -applikationer er især nyttige for kerneudviklere.
1. Hvad er og hvordan man bruger Syslogd i Linux -logfiler
Lad os se, hvad det er, og hvordan du bruger Syslogd
Hvad er SyslogdSyslogd (Linux system logging utilities), er en kommando, der giver os en type log, der bruges af mange moderne programmer, takket være Syslogd indeholder hver logget besked mindst én gang og et felt af værtsnavn, hvilket gør overvågningsopgaver meget enklere og lettere at analysere.
Syslogd -kommandoen har en standard BSD -adfærd, og de nye versioner af Syslogd interagerer gennemsigtigt med den version af syslog, der er tilgængelig på standardbibliotekerne, så hvis en binær linket til standarddelte biblioteker ikke fungerer korrekt, viser Syslogd denne adfærd binært.
Trin 1
Hovedkonfigurationsfilen er /etc/syslog.conf, og loggen er normalt angivet med regelposter. Vælgeren (facilitet.prioritet) og handlingen er angivet i hver linje. Noget at huske på er, at moderne Linux-distributioner, Syslogd-kommandoen er blevet erstattet af nye Syslog-implementeringer som rsyslog eller syslog-ng, så hvis vi vil bruge Syslogd, kan vi installere det med følgende kommando:
apt installere inetutils-syslogd
FORSTØRRE
Trin 2
Der skal vi indtaste bogstavet S for at bekræfte download og installation af Syslogd. Når den er installeret, kan vi gå til dens konfigurationsfil, som er placeret i følgende sti /etc/syslog.conf:
nano /etc/syslog.conf
FORSTØRRE
Trin 3
Der finder vi alle de ruter, Syslogd vil bruge til at fange oplysningerne. Den generelle syntaks for Syslogd er som følger:
syslogd [-a socket] [-d] [-f konfigurationsfil] [-h] [-l hostliste] [-m interval] [-n] [-p socket] [-r] [-s list domæne] [-S] [-v] [-x]Trin 4
Blandt de tilgængelige muligheder har vi:
Angiv ekstra stikkontakterDette argument giver os mulighed for at angive de ekstra sockets, som Syslogd skal lytte til, det bruges i tilfælde af, at en dæmon udføres i et chroot () -miljø. Det vil være muligt at gøre brug af op til 19 ekstra stikkontakter.
-en stikkontakt
Aktiver fejlfindingstilstanddette argument aktiverer fejlretningstilstand, som vil holde Syslog i forgrunden og dermed skrive en masse fejlfindingsoplysninger til den aktuelle tty.
-d
KonfigurationsfilDette argument angiver en alternativ konfigurationsfil i stedet for standardfilen /etc/syslog.conf.
-f konfigurationsfil
Bloker fjernbesked videresendelseDenne parameter forhindrer Syslogd i at videresende meddelelser, den modtager fra eksterne værter.
-h
Definer netværksnavnTakket være denne parameter kan der angives et værtsnavn, som kun skal registreres med sit enkle værtsnavn og ikke med FQDN.
-l hostliste (liste over værter)
Definer tidsintervalVed at gøre brug af denne parameter kan vi angive det tidsinterval, der skal bruges, som standard er værdien 20 minutter.
-m interval
Undgå at køre SyslodgDenne parameter forhindrer Syslogd i at køre i baggrunden.
-n
Indstil domænestikDet giver os mulighed for at angive en alternativ Unix -domænestik i stedet for / dev / log
-p stikkontakt
Tillad netværksbeskederDenne indstilling giver installationen mulighed for at modtage beskeder fra netværket ved hjælp af en internetdomæne -socket med Syslog -tjenesten.
-r
Definer domænenavnDenne parameter angiver et domænenavn, der skal fjernes, før du logger på.
-s domæneliste
Aktiver registreringAktiver omfattende logning,
-S
Aktiver den aktuelle versionSe den aktuelle version af Syslogd.
-v
FORSTØRRE
Trin 5
Når vi udfører en af de tilgængelige muligheder, kan vi se alle de opgaver, der udføres internt:
FORSTØRRE
2. Signaler i Syslogd Linux -logfiler
Trin 1
Syslogd er i stand til at reagere på et sæt signaler, en mulighed for at sende et signal til Syslogd er ved at udføre:
dræb -SIGNAL 'cat /var/run/syslogd.pid'Trin 2
Når dette signal udføres, forskellige komponenter som f.eks. Således er Syslogd en praktisk løsning til at analysere Linux -begivenheder.
OPSKRIFTDenne mulighed gør det muligt for Syslogd at udføre en genstartsproces, hvor alle åbne filer lukkes, konfigurationsfilen læses igen, og Syslog -installationen starter igen.
SIGTERMTjenesten udløber.
SIGINT, SIGQUITHvis fejlfinding er aktiveret, ignoreres disse, ellers udløber Syslogd.
SIGUSR1Aktiver eller deaktiver fejlfinding.
SIGCHLDVent på de nye beskeder.
3. Konfigurer Linux syslogd -filen
Syslogd bruger en noget anden syntaks i sin konfigurationsfil end den traditionelle originale BSD -kildefil. Syslogd -konfigurationen udføres via filen /etc/syslogd.conf. Gennem denne fil er det angivet, hvor de forskellige meddelelser skal dirigeres. Du kan efterlade linjer tomme eller kommentere hele linjer med tegnet "#"
For at syslog kan acceptere fjernforbindelser, skal vi tilføje parameteren -r
SYSLOGD_OPTIONS = " - r -m 0"Normalt indtager syslogd port 514, vi skal kontrollere, at firewallen ikke blokerer den for at teste i hvilken port den kører, fra terminalen skriver vi følgende kode
grep syslog / etc / servicesI servicelogfiler på denne linje kan vi se, at "mail, cron, info" logfiler går til meddelelsesmappen
* .info; mail.none; authpriv.none; cron.none / var / log / meddelelserVi vil prøve at sende en besked til alle logfiler med følgende kommando
grep "Testmeddelelse" / var / log / *I dette tilfælde kan vi se, at flere logfiler er med tilladelser nægtet, derfor kan de ikke skrives.
Det ville være nødvendigt at afgøre, om det er nødvendigt at ændre tilladelserne eller ikke i henhold til vores behov. Logfilerne har flere prioritetsniveauer for meddelelserne (fra laveste til højeste prioritet:
Fejl-, fejl- og advarselslogfiler
fejlfinding, info, varsel, advarsel, advare, fejl, fejl, krit, advarsel, fremkald og panik
Beskedtype loggerForskellige meddelelser skriver logfiler
auth, authpriv, cron, daemon, kern, lpr, mail, mark, nyheder, sikkerhed, syslog, bruger, uucpDe vigtigste er
- var / log / meddelelser: her finder vi de logfiler, der kommer med prioritetsinformation (information), meddelelse (meddelelse) eller advarsel (advarsel).
- /var/log/kern.log: kernelogfilerne, genereret af klogd, gemmes her.
- /var/log/auth.log: denne log registrerer logins i systemet, de gange vi laver osv. Mislykkede forsøg registreres i linjer med oplysninger om den ugyldige nøgletype eller ugyldigt login.
- / var / log / dmesg: de oplysninger, der genereres af kernen under systemstart, gemmes i denne fil.
Disse logfiler samler oplysninger hele tiden, så på et tidspunkt kan de tage meget plads, for at løse dette problem kan vi komprimere det eller sikkerhedskopiere, hvis det virkelig er nødvendigt. Nogle ændringer at huske på er:
Brug af jokertegnDet bruges som et jokertegn til alle de ovennævnte prioriteringer og tjenester afhængigt af dets anvendelse (uanset om det er før eller efter skilletegnet `. ').
"*" (Stjerne) =
Marker ikke prioritetAngiver, at der ikke er nogen defineret prioritet for tjenesten for den valgte linje.
"": (Blank, mellemrum, null)
Vælg forskellige tjenesterGiver dig mulighed for at angive flere tjenester med det samme prioritetsniveau på den samme linje.
"," (spise)
Styr forskellige meddelelserGiver dig mulighed for at dirigere beskeder fra forskellige tjenester og prioriteter til den samme modtager.
";" (semikolon)
Vælg meddelelsesprioritetDet giver os mulighed for kun at gemme beskeder med den nøjagtigt angivne prioritet.
"=" (Lig)
4. Hvad er og hvordan man bruger Klogd i Linux -logfiler
Hvad er KlogdKlogd (Kernel Log Daemon), er en systemdæmon, der er udviklet til at opfange og logge beskeder fra Linux -kernen. Funktionen af Klogd -kommandoen er fokuseret på at fange flere kerneinstanser, f.eks. Kilde, prioritering og opløsning af kerneadresser.
I Linux -miljøer har vi to hovedkilder til kerneregisteroplysninger, såsom:
- Filsystemet / proc
- Syscall -grænsefladen (sys_syslog)
Når der modtages en besked fra kernen, læser Klogd -dæmonen det tildelte prioritetsniveau og giver det prioritetsniveauet baseret på syslog -meddelelsen. Ved brug af Klogd vil det også være muligt at ændre visningen af kernemeddelelser i systemkonsollen, i en fælles kerne er standardkonsolens logniveau sat til 7, således at alle meddelelser med et lavere prioritetsniveau til 7 (højeste prioritet ) vises på konsollen. Meddelelser fra prioritetsniveau 7 betragtes som "debugging" -meddelelser og vises derfor ikke på konsollen for ikke at overvælde de andre kernehændelser med information.
Klogd har en funktion kaldet Kernel Address Resolution, hvorved en generel beskyttelsesfejlprotokol automatisk aktiveres, hvis kernen registrerer en intern fejltilstand. Dette er en del af GPF -håndteringsproceduren, hvor kernen udskriver en statusrapport, der angiver status for processoren, når fejlen genereres, inden for dette resultat vil vi se detaljer som f.eks. Indholdet af mikroprocessorregistre, indholdet af kernestakken og en overvågning af de funktioner, der kørte før fejlen.
Processen med at løse de numeriske adresser fra beskyttelsesfejlresultaterne kan udføres manuelt eller gennem ksymoops -programmet, der er inkluderet i kernekilderne. Kommandoen Klogd understøtter problemet med at diagnosticere beskyttelsesfejl i nuværende moduler, der kan indlæses i kerner.
Trin 1
Ligesom Syslogd er Klog blevet erstattet i nuværende distributioner af mere dynamiske kommandoer, så for installationen vil vi udføre følgende. Der indtaster vi bogstavet S for at bekræfte download og installation.
apt installer busybox-syslogd
FORSTØRRE
Trin 2
Klogd -syntaksen er som følger:
klogd [-cn] [-d] [-f fname] [-iI] [-n] [-o] [-p] [-s] [-k fname] [-v] [-x] [-2 ]Trin 3
Disse muligheder er:
Definer logniveauDenne parameter definerer standard -logningsniveauet for konsolmeddelelser til n.
-c n
Fejlretningstilstanddenne indstilling muliggør fejlfindingstilstand.
-d
Log beskederfil logger meddelelser til det angivne filnavn i stedet for syslog -installation.
-F
Identificer dæmoner, der køreridentificerer den aktuelt kørende klogd -dæmon. Begge kontakter styrer indlæsning / genindlæsning af symbolinformation.
-i -I
Stop klogd i baggrundenForhindre Klogd i at køre i baggrunden.
-n
Fuld læsning på meddelelsesbuffereDenne mulighed gør det muligt for Klogd at læse og registrere alle meddelelser, der findes i kernel -meddelelsesbufferne.
-eller
Tving systemopkaldTvinger Klogd -kommandoen til at bruge systemopkaldsgrænsefladen til at kerne beskedbuffere.
-s
Se Klogd versionUdskriv Klogd -versionen.
-v
FORSTØRRE
Trin 4
Hvis vi vil læse alle begivenhederne efter login, vil vi udføre følgende:
klogd -o -f ./krnl.msgTrin 5
Herefter vil det være muligt at få adgang til indholdet af filen:
FORSTØRRE
5. Klogd signalerer på Linux
Kommandoen Klogd kan reagere på otte (8) signaler, som er: SIGHUP, SIGINT, SIGKILL, SIGTERM, SIGTSTP, SIGUSR1, SIGUSR2 og SIGCONT. SIGINT-, SIGKILL-, SIGTERM- og SIGHUP -signalerne gør det muligt for dæmonen at lukke kerne -logkilderne og afslutte processen korrekt, mens SIGTSTP- og SIGCONT -signalerne bruges til at starte og stoppe kerneloggen.
Trin 1
For eksempel, hvis vi vil afmontere / proc -filsystemet, skal vi udføre følgende kommandoer:
# kill -TSTP pid # umount / proc # kill -CONT pidTrin 2
Nogle filer til brug med Klogd er:
- / proc / kmsg: er kildefilen til klogd -kernemeddelelser
- /var/run/klogd.pid: er den fil, der indeholder proces -id for klogd
- /boot/System.map, /System.map, /usr/src/linux/System.map - Disse er standardplaceringerne for kernelsystemkort.
Som vi kan se, har vi disse to nyttige og væsentlige kommandoer til en korrekt og fuldstændig styring af kernehændelser i Linux.