Turvallisuus

Missä ja miten salasanat tallennetaan Linuxiin?

Missä ja miten salasanat tallennetaan Linuxiin?
Käyttäjänimi ja vastaava salasana tietylle tilille on ensisijainen vaatimus, jonka kautta käyttäjä voi käyttää Linux-järjestelmää. Kaikki käyttäjän salasanat tallennetaan tiedostoon tai tietokantaan, jotta käyttäjä voidaan tarkistaa järjestelmään kirjautumisen yhteydessä. Jokaisella käyttäjällä ei ole tarpeeksi taitoja ja asiantuntemusta tämän tiedoston löytämiseksi järjestelmään. Jos kuitenkin saat pääsyn tietokantaan tai tiedostoon, joka säilyttää kaikki kirjautumiskäyttäjän salasanat, pääset helposti Linux-järjestelmään. Kun käyttäjä syöttää käyttäjätunnuksen ja salasanan Linuxiin kirjautumista varten, se tarkistaa syötetyn salasanan hakemiston '/ etc' hakemiston eri tiedostoihin tehdyn merkinnän perusteella.

/ Etc / passwd-tiedostot säilyttävät kaikki tärkeät tiedot, joita tarvitaan käyttäjän kirjautumiseen. Selittääkseen sen yksinkertaisemmilla sanoilla, tiedosto / etc / passwd tallentaa käyttäjän tilitiedot. Tämä tiedosto on pelkkää tekstiä sisältävä tiedosto, joka sisältää täydellisen luettelon kaikista Linux-järjestelmän käyttäjistä. Siinä on tietoja käyttäjänimestä, salasanasta, UID (käyttäjätunnus), GID (ryhmän tunnus), kuoresta ja kotihakemistosta. Tällä tiedostolla on oltava lukuoikeudet, koska monta komentorivin apuohjelmaa käytetään tunnistamaan käyttäjätunnukset käyttäjänimiin. Mutta sillä pitäisi olla rajoitetut kirjoitusoikeudet vain pääkäyttäjä- tai pääkäyttäjätileille.

Tässä artikkelissa kerrotaan, miten ja mihin voit tallentaa järjestelmän käyttäjän tilin salasanat Linux-jakelulle. Olemme toteuttaneet kaikki mielenosoitukset Ubuntu 20: ssä.04-järjestelmä. Voit kuitenkin löytää / etc / passwd-tiedoston mistä tahansa Linux-jakelusta.

Edellytykset

Sinulla on oltava pääkäyttäjän oikeudet järjestelmänvalvojan komentojen suorittamiseen.

Perustiedot tiedostosta / etc / passwd

/ Etc / passwd-tiedosto sisältää tietoja järjestelmän käyttäjätilistä. Kaikki tallennetut kentät erotetaan kaksoispiste ”:” -merkistä.
Kun suoritat seuraavan komennon, näet / etc / passwd-tiedoston jokaisen tiedostomerkinnän:

$ cat / etc / passwd

Yllä oleva komento luetteloi kaikki Linux-järjestelmän käyttäjät.
Seuraavan tyyppinen muoto näkyy päätelaitteen näytössä:

Tiedot / etc / passwd-kentistä Muoto
Yllä olevasta kuvasta:

Käyttäjätunnus: Kenttä yksi edustaa käyttäjän nimeä. Käyttäjätunnuskentän pituus on määritelty 1-32 merkille. Tätä käytetään, kun käyttäjä kirjautuu järjestelmään. Yllä olevassa esimerkissä 'khuzdar' on käyttäjänimi.
Salasana: Yllä olevassa esimerkissä "x" -merkki osoittaa, että salasana on tallennettu salatussa muodossa / etc / shadow-tiedostoon.
Käyttäjätunnus (UID): Käyttäjätunnus on määritettävä erikseen kullekin käyttäjälle. UID-nolla määritetään pääkäyttäjälle ja käyttäjätunnukset 1-99 määritetään ennalta määritetyille tai vakiotileille. Muut UID-tunnukset vuosilta 100-999 määritetään järjestelmänvalvojan tileille tai ryhmille. Yllä olevassa kuvakaappauksessa käyttäjätunnus on 1001.
Ryhmätunnus (GID): Seuraava kenttä edustaa ryhmän tunnusta. GID on tallennettu tiedostoon / etc / group. Yllä olevan esimerkin perusteella käyttäjä kuuluu ryhmätunnukseen 1001.
Tietoja käyttäjätunnuksesta: Seuraava kenttä on tarkoitettu kommentteihin. Tähän kenttään voit lisätä joitain lisätietoja määritetystä käyttäjästä, kuten käyttäjän koko nimen, puhelinnumeron jne. Yllä olevassa esimerkissä käyttäjä ei kuitenkaan anna puhelinnumeroa.
Kotihakemisto: Tämä kenttä näyttää nykyiselle käyttäjälle määritetyn kotihakemiston sijainnin. Jos määritettyä hakemistoa ei ole, siinä näkyy ”/”. Yllä oleva kuva näyttää korostetun käyttäjän sijainnin kotihakemistossa, joka on koti / kbuzdar.
Komento // kuori: Kuoren tai komennon oletusarvoinen absoluuttinen polku on / bin / bash. Tätä kutsutaan kuoreksi. Esimerkiksi sysadmin käyttämällä nologiinikuorta. Se käyttäytyy järjestelmän käyttäjätilien korvaavana kuorena. Jos kuori sijaitsee polulla / sbin / nologin ja käyttäjä haluaa kirjautua suoraan Linux-järjestelmään, / sbin / nologin -kuori sulkee tai poistaa yhteyden.

Hae käyttäjää tiedostosta / etc / passwd

Voit etsiä tiettyä käyttäjää tiedostolla / etc / passwd käyttämällä grep-komentoa. Haluamme esimerkiksi etsiä käyttäjätunnusta 'kbuzdar' tiedostosta / etc / passwd seuraavan syntaksin avulla, jolloin voimme etsiä helposti määritetyltä käyttäjältä ja säästää aikaa:

$ grep käyttäjänimi / etc / passwd

Yllä oleva syntakse muuttuu seuraavaksi:

$ grep kbuzdar / etc / passwd


Tai

$ grep -w '^ kbuzdar' / etc / passwd

Näytä / etc / passwd-tiedoston käyttöoikeudet

Kuten edellä mainitsimme, kaikkien muiden käyttäjien, paitsi root, pitäisi pystyä lukemaan / etc / passwd -tiedoston käyttöoikeudet ja että omistajan on oltava pääkäyttäjä tai root.
Kirjoita seuraava tarkistaaksesi tiedoston lukuoikeudet:

$ ls -l / etc / passwd

Seuraava lähtönäyte näytetään päätelaitteessa:

Luetaan / etc / passwd-tiedosto

Voit lukea / etc / passwd -tiedoston Linux-järjestelmässäsi käyttämällä seuraavaa bash-komentosarjaa tai suorittaaksesi alla olevan kirjoituksen, kun taas loop-komentoja päätelaitteessa.
Luo tekstitiedosto ja liitä siihen seuraava koodi:

#!/ bin / bash
# yhteensä seitsemän kenttää tiedostosta / etc / passwd tallennettu nimellä $ f1, f2…, $ f7
kun IFS =: lue -r f1 f2 f3 f4 f5 f6 f7
tehdä
echo "Käyttäjä $ f1 käyttää komentoa $ f7 ja tallentaa tiedostot hakemistoon $ f6."
tehty < /etc/passwd

While-silmukan avulla se lukee kaikki seitsemän kenttää ja näyttää sitten iteratiivisesti tiedostojen sisällön päätelaitteessa.
Tallenna yllä oleva tiedosto nimellä 'readfile.sh '.

Suorita nyt yllä oleva tiedosto seuraavalla komennolla:

$ bash lukutiedosto.sh

Tutki / etc / shadow-tiedostoa

/ Etc / shadow-tiedosto sisältää kaikki tähän tiedostoon tallennetut salatut salasanat, jotka ovat luettavissa vain pääkäyttäjille.
Suoritetaan seuraava komento sisällön näyttämiseksi:

$ sudo cat / etc / shadow

Näet kaikki salasanat salatussa muodossa:

Johtopäätös

Olemme nähneet yllä olevasta artikkelista kaikki käyttäjän tilitiedot ja salasanat, jotka on tallennettu Linux-järjestelmään / etc / passwd-tiedostoon. Voit lukea tämän tiedoston, mutta vain pääkäyttäjillä on "kirjoitusoikeudet". Lisäksi olemme myös nähneet kaikki salatut salasanat, jotka on tallennettu tiedostoon / etc / shadow. Voit myös tutkia / etc / group-tiedostoa saadaksesi lisätietoja käyttäjän ryhmästä.

Best Linux Distros for Gaming in 2021
The Linux operating system has come a long way from its original, simple, server-based look. This OS has immensely improved in recent years and has no...
Kuinka siepata ja suoratoistaa pelisessiosi Linuxissa
Aikaisemmin pelaamista pidettiin vain harrastuksena, mutta ajan myötä pelialalla tapahtui valtava kasvu tekniikan ja pelaajien määrän suhteen. Peliala...
Parhaat pelit, joita voi seurata käsien seurannalla
Oculus Quest esitteli äskettäin loistavan ajatuksen seurannasta ilman ohjaimia. Yhä kasvavan määrän pelejä ja aktiviteetteja, jotka tukevat tukea joko...