Hur man visar och konfigurerar Linux-loggar på Ubuntu, Debian och CentOS

Hur man visar och konfigurerar Linux-loggar på Ubuntu, Debian och CentOS

Loggar är avgörande för att spåra systemhändelser, felsöka problem och upprätthålla säkerheten i Linux-system. Att kunna visa och konfigurera loggar är en grundläggande färdighet för alla Linux-administratörer. Den här artikeln kommer att guida dig genom processen med att visa, filtrera och konfigurera loggar på de populära Linux-distributionerna Ubuntu, Debian och CentOS.

Introduktion

Linux-loggar registrerar olika händelser som inträffar i systemet, inklusive systemstarter, applikationsaktivitet, säkerhetsrelaterade händelser och felmeddelanden. Loggar kan delas in i två huvudkategorier:

Systemloggar: Registrerar händelser som är relaterade till själva operativsystemet och dess komponenter.
Applikationsloggar: Registrerar händelser som är specifika för installerade applikationer och tjänster.

Att förstå hur man hanterar Linux-loggar är viktigt av flera skäl:

Felsökning av problem: Loggar kan hjälpa dig att identifiera orsaken till systemproblem.
Säkerhetsövervakning: Loggar kan användas för att spåra säkerhetsrelaterade händelser som åtkomstförsök, intrång och attacker.
Systemoptimering: Loggar kan tillhandahålla information om systemprestanda och användningsmönster, vilket kan hjälpa till att identifiera förbättringsområden.

Visa Linux-loggar

Det finns flera verktyg och kommandon som du kan använda för att visa Linux-loggar. De vanligaste metoderna är:

Använda kommandot ”cat”

cat-kommandot kan användas för att visa innehållet i en textfil, inklusive loggfiler. För att visa en loggfil med cat, använd följande syntax:


sudo cat /var/log/syslog

Använda kommandot ”less”

less-kommandot är ett pager-verktyg som låter dig visa loggfiler med rullningsfunktioner. För att visa en loggfil med less, använd följande syntax:


sudo less /var/log/syslog

Använda systemd-journalen

systemd-journald är en loggningstjänst som används i många moderna Linux-distributioner. Den centraliserar alla systemloggar i en enda databas. För att visa systemd-journalloggen, använd följande kommando:


sudo journalctl

Du kan också filtrera journalloggen efter nyckelord med -g-flaggan:


sudo journalctl -g kernel

Konfigurera Linux-loggar

Loggkonfigurationen i Linux styrs vanligtvis av konfigurationsfiler som finns i /etc/rsyslog.conf (för rsyslog) eller /etc/syslog.conf (för syslog). Dessa konfigurationsfiler bestämmer hur loggar hanteras, inklusive:

Loggnivån: Den minsta allvarlighetsgrad för händelser som ska loggas.
Loggfilens rotation: Hur ofta och hur länge loggfiler ska roteras.
Loggplats: Platsen där loggfilerna ska lagras.

Rotera loggfiler

Loggfiler kan bli stora med tiden. För att hantera detta kan du konfigurera loggfiler att roteras, vilket innebär att de automatiskt delas upp i mindre segment eller komprimeras. För att konfigurera loggrotation, redigera loggkonfigurationsfilen (/etc/rsyslog.conf eller /etc/syslog.conf) och lägg till följande rader:


$ModLoad imfile
$FileOwner root
$FileGroup adm
$FileCreateMode 0644
$DirCreateMode 0755
$FileSize 10M
$Rotate 10

Dessa inställningar konfigurerar loggar att roteras när de når 10 MB i storlek och att behålla upp till 10 roterade loggar.

Filtrera loggar

Det kan vara användbart att filtrera loggar efter nyckelord, faciliteter eller allvarlighetsgrad. Det finns flera sätt att filtrera loggar:

Kommandoradsfilter: Du kan använda filterflaggor med kommandon som cat, less och journalctl för att filtrera loggar. Till exempel:


sudo journalctl -g kernel -p err

Detta kommando filtrerar systemd-journalen för felmeddelanden som är relaterade till kärnan.

Loggfilterregler: Du kan skapa loggfilterregler i /etc/rsyslog.d/-katalogen. Dessa regler kan användas för att omdirigera eller filtrera loggmeddelanden baserat på olika kriterier.

Slutsats

Att hantera Linux-loggar är en viktig uppgift för alla systemadministratörer. Genom att förstå hur man visar, filtrerar och konfigurerar loggar kan du effektivt övervaka, felsöka och säkra dina Linux-system. Kom ihåg att regelbundet granska loggarna och vidta lämpliga åtgärder vid behov.

Vanliga frågor

1. Vad är loggrotationsintervallet?

Loggrotationsintervallet bestäms av inställningarna i loggkonfigurationsfilen. Du kan ställa in intervallet manuellt eller använda standardinställningarna.

2. Hur filtrerar man loggar efter allvarlighetsgrad?

Du kan använda filterflaggor eller loggfilterregler för att filtrera loggar efter allvarlighetsgrad. Till exempel, för att filtrera efter felmeddelanden, använd parametern -p err.

3. Hur kan jag hitta alla loggar som är relaterade till en viss applikation?

Du kan använda filterflaggor eller loggfilterregler för att filtrera efter facilitetsnamn eller applikationsnamn. Dokumentet /etc/logger.conf innehåller information om facilitetsnamnen för olika applikationer.

4. Hur lång tid bevaras loggar?

Bevarandetiden för loggar bestäms av inställningarna i loggkonfigurationsfilen. Du kan konfigurera loggar att raderas automatiskt efter en viss tidsperiod eller behållas på obestämd tid.

5. Kan jag granska loggar på distans?

Ja, det finns verktyg som låter dig granska loggar på distans. Ett vanligt verktyg är logwatch, som kan installeras på en central plats och konfigur