Pockar runt i dina Linux-systemfiler, kanske du har stött på en fil i /etc katalog namngiven skugga. Det låter kanske läskigt, men det är verkligen en säker, nödvändig och användbar fil för systemadministration.

Idag ska vi titta närmare på innehållet i /etc/shadow filen och vad den kan berätta om ditt system.

Vad är / etc / shadow?

Mystiskt som det låter är filens funktion ganska enkel. De /etc/shadow filen innehåller information om ett Linux-systemets användare, deras lösenord och tidsregler för sina lösenord.

När du skapar eller ändra ett lösenord i Linux, systemet haschar och lagrar det i skuggfilen. Alla lösenordsregler som tilldelats av administratören, som utgångsdatum och inaktivitetsperioder, kommer också att finnas kvar. Skuggfilen kan sedan berätta autentiseringsprotokoll om en användares lösenord är korrekt, till exempel eller när det har gått ut.

Du bör aldrig redigera skuggfilen direkt. Det underhålls av automatiserade processer och inte avsedd för vanliga användare att modifiera. Ändå kan informationen som den innehåller vara värdefull för dig, så det är värt en titt.

instagram viewer

Vad finns i Linux-skuggfilen?

För att se skuggfilens innehåll öppnar du en terminal och ger ut katt kommando på det:

sudo cat / etc / shadow

Du får en uppmaning som ber dig om ditt lösenord. Förutsatt att du har administrativa behörigheter ser du en utskrift av textsträngar som liknar detta (ellipsar markerar var strängen klipptes för att passa din skärm):

muo1: $ 6 $ IK2... $ 20a...: 18731: 0: 99999: 7

Det ser kryptiskt ut, och en del av det är faktiskt krypterad text. Strängen följer dock en viss konstruktion och innehåller specifika informationsbitar, avgränsade av kolon (:) karaktär.

Här är en komplett layout av strängen:

[användarnamn]: [lösenord]: [datum för senaste lösenordsändring]: [lägsta lösenordsålder]: [maximal lösenordsålder]: [varningsperiod]: [inaktivitetsperiod]: [utgångsdatum]: [oanvänd]

Låt oss titta närmare på vart och ett av dessa fält:

1. Användarnamn

Allt som följer i strängen är associerat med detta användarnamn.

2. Lösenord

Lösenordsfältet består av ytterligare tre fält, avgränsade med dollartecken: $ id $ salt $ hash.

  • id: Detta definierar krypteringsalgoritmen som används för att kryptera ditt lösenord. Värden kan vara 1 (MD5), 2a (Blåsfisk), 2 år (Eksblowfish), 5 (SHA-256), eller 6 (SHA-512).
  • salt: Detta är saltet som används för att kryptera och autentisera lösenordet.
  • hash: Detta är användarens lösenord som det visas efter hashing. Skuggfilen håller en hashversion av ditt lösenord så att systemet kan kontrollera mot varje försök att ange ditt lösenord.

Läs mer: Grundläggande krypteringsvillkor definierade

Ibland innehåller lösenordsfältet bara en asterisk (*) eller utropstecken (!). Det betyder att systemet har inaktiverat användarens konto eller att användaren måste autentisera på annat sätt än ett lösenord. Detta är ofta fallet för systemprocesser (även känd som pseudo-användare) som du sannolikt också hittar i skuggfilen.

3. Datum för senaste lösenordsändring

Här hittar du senaste gången den här användaren ändrade sitt lösenord. Observera att systemet visar datumet i Unix-tid formatera.

4. Lägsta lösenordsålder

Här hittar du antalet dagar som användaren måste vänta efter att ha bytt lösenord innan de ändrar det igen.

Om minimum inte är inställt kommer värdet här att vara 0.

5. Maximal lösenordsålder

Detta definierar hur länge en användare kan gå utan att ändra sitt lösenord. Ofta ändra ditt lösenord har sina fördelar, men som standard kommer värdet att ställas in i generösa 99 999 dagar. Det är nära 275 år.

6. Varningsperiod

Det här fältet bestämmer antalet dagar innan ett lösenord har nått sin högsta ålder, under vilken användaren kommer att få påminnelser om att ändra sitt lösenord.

7. Inaktivitetsperiod

Detta är antalet dagar som kan passera efter att användarens lösenord har nått sin högsta ålder innan systemet inaktiverar kontot. Tänk på detta som en "respitperiod" under vilken användaren har en andra chans att ändra sitt lösenord, även om det tekniskt har löpt ut.

8. Utgångsdatum

Detta datum är slutet på inaktivitetsperioden när systemet automatiskt inaktiverar användarens konto. När inaktiverad kan användaren inte logga in förrän en administratör aktiverar det igen.

Det här fältet kommer att vara tomt om det inte är inställt, och om det är inställt kommer datumet att visas i epoktid.

9. Oanvänd

Detta fält tjänar för närvarande inget syfte och är reserverat för potentiell framtida användning.

Skuggfilen förklaras

Skuggfilen är verkligen inte mystisk alls. Kom dock ihåg att om du vill ändra lösenord och lösenordsregler bör du undvika att redigera skuggfilen direkt och istället välja att använda verktyg som är avsedda för detta ändamål.

När du lägger till en ny användare i ditt Linux-system, kommer /etc/shadow filen ändras automatiskt för att lagra autentiseringsinformationen om användaren.

E-post
Hur man lägger till en användare i Linux

Behöver du ge en familjemedlem eller vän tillgång till din Linux-dator? Så här lägger du till en användare i Linux och ger dem ett eget konto.

Läs Nästa

Relaterade ämnen
  • Linux
  • Systemadministration
Om författaren
Jordan Gloor (41 artiklar publicerade)

Jordanien är en handledare och journalist som brinner för att göra Linux tillgängligt och stressfritt för alla. Han har en BA på engelska och en sak för varmt te. Under de varma årstiderna tycker han om att cykla i Ozarks kullar där han bor.

Mer från Jordan Gloor

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e-böcker och exklusiva erbjudanden!

Ett steg till…!

Bekräfta din e-postadress i e-postmeddelandet som vi just skickade till dig.

.