Mobilné Správy, Gadgety, Blogy's Secenziami

Ako Linux ukladá a spravuje heslá používateľov

Ako Linux ukladá a spravuje heslá používateľov 1

Zaujímalo by vás, ako Linux efektívne riadi prostredie pre viacerých používateľov? V tomto článku vysvetlíme, ako Linux ukladá a spravuje heslá a prihlásenia používateľov.

Skúmam súbor / etc / passwd

Keď užívateľ zadá užívateľské meno a heslo, Linux skontroluje heslo zadané oproti záznamu vo viacerých súboroch v adresári „/ etc“.

„/ Etc / passwd“ je jedným z najdôležitejších súborov, v ktorom sú uložené podrobnosti o používateľovi.

zobraziť / etc / passwd súbor

Posledná položka v tomto súbore zodpovedá používateľom „uhlíka“. Dvojbodky sú oddelené niekoľkými poliami informácií (:).

    uhlík: meno používateľa, ktorému táto položka zodpovedá. x: označuje, že pre používateľa existuje heslo. Heslo je však uložené v súbore „/ etc / shadow“. Ak namiesto x ukazuje a! symbol znamená, že heslo neexistuje.1000: ID užívateľa tohto používateľa.1000: ID skupiny skupiny, do ktorej tento používateľ patrí.carbon,,:: označenie viacerých polí informácií vrátane celého mena a telefónnych čísel. Tu neboli poskytnuté žiadne telefónne čísla./home/carbon: umiestnenie domovského adresára priradeného tomuto používateľovi./bin/bash: predvolený shell priradený tomuto používateľovi.

Vytvorme si iného používateľa, pre ktorého boli uložené nejaké telefónne čísla. Používateľ „pluto“ sa pridá do systému pomocou príkazu adduser.

pole GECOS užívateľa Linuxu

Pri opätovnom pohľade na súbor „etc / passwd“ si môžeme zobraziť úplné informácie pre používateľa „pluto“. Pole, ktoré obsahuje zoznam všetkých mien a čísel oddelených čiarkami, sa nazýva „pole GECOS“.

zobrazenie / etc / passwd s podrobnosťami o telefóne

Vždy, keď je užívateľ vytvorený, hodnoty domovského adresára a predvoleného shellu, ktoré je potrebné priradiť, sú špecifikované v súbore „/etc/adduser.conf“.

adduser.conf

ID používateľov pre vytvorených používateľov začínajú od 1 000 a bežia až do 59999.

Užívateľ „uhlík“ bol schopný prezerať položky súboru „/ etc / passwd“ jednoducho pomocou príkazu cat. Pozrime sa na jeho povolenia.

/ etc / passwd povolenie súboru

Do súboru môže zapisovať iba užívateľ root. Ostatní používatelia môžu súbor čítať iba. Pretože tento súbor je čitateľný pre všetkých, nie je ideálne ukladať heslá tu. Namiesto toho je uložený v inom súbore s názvom „/ etc / shadow“.

Preskúmanie súboru / etc / shadow

Teraz sa pokúsime zobraziť uložené heslo pre používateľov „uhlíkových“ a „pluto“ v súbore „/ etc / shadow“.

/ etc / tieňové povolenie bolo zamietnuté

Keď sa pozrieme na povolenia pre súbor „/ etc / shadow“, vidíme, že do súboru môže čítať a zapisovať iba používateľ root. Súbor môžu čítať iba členovia skupiny „tieň“. V skutočnosti je „tieňová“ skupina prázdna, ale pre tento súbor sa vyžaduje syntakticky.

/ etc / shadow file povolenie

Po prihlásení ako „root“ môžeme zobraziť posledných desať riadkov „/ etc / shadow“. Pre každý záznam v „/ etc / passwd“ je v tomto súbore zodpovedajúca položka. Formát bude nasledujúci:

pluto:$6$JvWfZ9u....:18283:0:99999:7:::

zobraziť / etc / tieňové záznamy

Aj v tomto súbore má každá položka viac polí oddelených dvojbodkami (:). Rozlúštime záznam pre používateľa „pluto“.

    pluto: meno používateľa, ktorému táto položka zodpovedá6$ JvWfZ9u. $ YGFIqOJ ….: Heslo užívateľa hashed uložené spolu s informáciami o použitom algoritme hashovania. Okrem toho sa na vygenerovanie hashovania hesla spolu s heslom v obyčajnom texte použije hodnota soli.
{ plaintext password, salt} -> hashed password

Spracujme obsah v tejto oblasti. Symbol $ sa používa ako oddeľovač na oddelenie troch polí.

$6  $JvWfZ9u.  $yGFIqOJ....
    $6 : použitý algoritmus hashovania. Tu je zoznam potenciálnych algoritmov hashovania.

      $1 : MD5 $ 2a: Blowfish $ 2y: Eksblowfish $5 : SHA-256 $6 : SHA-512

    $ JvWfZ9u. : hodnota soli. $ yGFIqOJ ….: hashed password.

Výsledná hodnota hash sa uloží ako šifrované heslo pre používateľa. Hodnota soli je jedinečná pre každého používateľa. Aj keď dvaja používatelia majú rovnaké otvorené heslo, použitím jedinečnej soli by sa vygenerovala jedinečná hodnota hash.

Nasleduje zvyšné polia v tejto položke,

    18283: Označuje počet dní od januára 1, 1970, kedy bolo heslo naposledy zmenené0: toto pole sa používa na označenie počtu dní, po ktorých môže byť heslo zmenené. Hodnota 0 znamená, že heslo je možné kedykoľvek zmeniť.99999: toto pole označuje počet dní, po uplynutí ktorých sa musí heslo zmeniť. Hodnota 99999 označuje, že si užívateľ môže heslo uchovať tak dlho, ako je potrebné.7 : ak je nastavená doba platnosti hesla, toto pole udáva počet dní, na ktoré má používateľ upozorniť na uplynutie platnosti hesla .::: Tri ďalšie polia sú súčasťou tohto záznamu, aj keď sú tu prázdne. Prvý označuje počet dní, ktoré čakajú po uplynutí platnosti hesla, po uplynutí ktorého bude účet zablokovaný. Druhá udáva počet dní od januára 1, 1970, že účet bol zablokovaný. Tretie pole je vyhradené pre budúce použitie. Prázdne polia označujú, že platné heslo pre tohto používateľa ešte neuplynula a jeho platnosť nebude čoskoro ukončená.

Celkovo sa uvádza, že posledných sedem polí týkajúcich sa platnosti hesla obsahuje informácie o politike ochrany hesiel.

Predvolené hodnoty zodpovedajúce „Policy Aging Policy“ sú uvedené v súbore „/etc/login.defs“. Tieto hodnoty môžu byť pre používateľa zmenené pomocou príkazu change.

login.defs

A čo skupinové informácie?

Informácie o používateľovi a heslá sú uložené v súboroch „/ etc / passwd“ a „/ etc / shadow“. Informácie o skupine sú uložené aj v súbore „/ etc / group“.

zobraziť / etc / group záznamy

Vyššie uvedené sú skupiny patriace používateľom „uhlík“ a „pluto“. Keď je užívateľ vytvorený v systéme Linux, je tento užívateľ okamžite priradený ku skupine s rovnakým menom ako meno používateľa.

Členovia skupiny môžu zdieľať skupinové heslo aj pri činnostiach týkajúcich sa skupiny. Hodnota x znamená, že informácie o hesle pre túto skupinu by boli v súbore „/ etc / gshadow“.

Prístup k „/ etc / gshadow“ je však obmedzený na „root“ užívateľa.

/ etc / gshadow povolenie bolo odmietnuté

Užívateľ root môže zobraziť položky „/ etc / gshadow“, ktoré sú podobné ako „/ etc / shadow“. Pri pohľade na položku pre skupinu „uhlík“ vidíme, že druhé pole má hodnotu !, čo znamená, že pre túto skupinu neexistuje heslo.

Heslo 11

Dávať to všetko dokopy

Keď sa používateľ chce prihlásiť, hash zadaného hesla sa nájde pomocou hodnoty soli tohto používateľa v „/ etc / shadow“. Potom sa porovná s uloženým hashom. Ak sa hodnoty zhodujú, používateľovi je udelený prístup.

súvisiace:

Je tento článok užitočný? Áno nie