LFCA: Opi käyttäjätilien hallintaa – Osa 5


Linux-järjestelmänvalvojana sinun tehtäväsi on varmistaa kaikkien IT-toimintojen sujuvuus organisaatiossasi. Koska jotkin IT-toiminnot ovat kietoutuneet toisiinsa, järjestelmänvalvojalla on yleensä monia hattuja, mukaan lukien tietokannan tai verkon ylläpitäjä.

Tämä artikkeli on LFCA-sarjan osa 5. Tässä osassa tutustut yleisiin järjestelmänhallintakomentoihin, joilla voit luoda ja hallita käyttäjiä Linux-järjestelmässä.

Käyttäjätilien hallinta Linuxissa

Yksi Linux-järjestelmänvalvojan tärkeimmistä tehtävistä on käyttäjien luominen ja hallinta Linux-järjestelmässä. Jokaisella käyttäjätilillä on kaksi yksilöllistä tunnistetta: käyttäjätunnus ja käyttäjätunnus (UID).

Pohjimmiltaan Linuxissa on 3 pääkäyttäjäluokkaa:

Pääkäyttäjä

Pääkäyttäjä on Linux-järjestelmän tehokkain käyttäjä, ja se luodaan yleensä asennuksen aikana. Pääkäyttäjällä on ehdoton valta Linux-järjestelmässä tai missä tahansa muussa UNIX-tyyppisessä käyttöjärjestelmässä. Käyttäjä voi käyttää kaikkia komentoja, tiedostoja ja hakemistoja ja muokata järjestelmää haluamallaan tavalla.

Pääkäyttäjä voi päivittää järjestelmän, asentaa ja poistaa paketteja, lisätä tai poistaa muita käyttäjiä, myöntää tai peruuttaa käyttöoikeuksia ja suorittaa mitä tahansa muita järjestelmän hallintatehtäviä ilman rajoituksia.

Pääkäyttäjä voi tehdä järjestelmässä melkein mitä tahansa. Linuxin ja UNIXin kaltaisten järjestelmien oletus on, että tiedät hyvin, mitä teet järjestelmällä. Pääkäyttäjä voi kuitenkin helposti rikkoa järjestelmän. Sinun tarvitsee vain suorittaa kohtalokas komento, ja järjestelmä on savussa.

Tästä syystä komentojen suorittamista pääkäyttäjänä ei suositella. Sen sijaan hyvä käytäntö edellyttää, että sinun tulee määrittää sudo-käyttäjä. Tämä tarkoittaa sudo-oikeuksien myöntämistä tavalliselle käyttäjälle tiettyjen hallinnollisten tehtävien suorittamiseksi ja joidenkin tehtävien rajoittaminen vain pääkäyttäjälle.

Tavallinen käyttäjä

Tavallinen käyttäjä on normaali kirjautumiskäyttäjä, jonka järjestelmänvalvoja voi luoda. Yleensä on olemassa säännös luoda sellainen asennuksen aikana. Voit kuitenkin luoda niin monta tavallista käyttäjää kuin tarvitaan asennuksen jälkeen.

Tavallinen käyttäjä voi suorittaa vain tehtäviä ja käyttää tiedostoja ja hakemistoja, joihin hän on valtuutettu. Tarvittaessa tavalliselle käyttäjälle voidaan myöntää korotetut oikeudet järjestelmänvalvojan tason tehtävien suorittamiseen. Tavalliset käyttäjät voidaan myös poistaa tai poistaa käytöstä tarvittaessa.

Palvelutili

Tämä on ei-kirjautumistili, joka luodaan, kun ohjelmistopaketti asennetaan. Palvelut käyttävät tällaisia tilejä prosessien suorittamiseen järjestelmässä. Niitä ei ole suunniteltu tai tarkoitettu suorittamaan mitään rutiini- tai hallinnollisia tehtäviä järjestelmässä.

Käyttäjien hallintatiedostot

Tietoja käyttäjistä Linux-järjestelmässä on tallennettu seuraaviin tiedostoihin:

  • /etc/passwd-tiedosto
  • /etc/group-tiedosto
  • /etc/gshadow-tiedosto
  • /etc/shadow-tiedosto

Ymmärretään jokainen tiedosto ja mitä se tekee:

Tiedosto /etc/passwd

/etc/passwd-tiedosto sisältää melko paljon tietoja käyttäjistä, jotka sisältyvät useisiin eri kenttiin. Voit tarkastella tiedoston sisältöä käyttämällä cat-komentoa kuvan osoittamalla tavalla.

cat /etc/passwd

Tässä pätkä tuotosta.

tecmint:x:1002:1002:tecmint,,,:/home/tecmint:/bin/bash

Keskitytään ensimmäiseen riviin ja täsmennetään eri kenttiä. Alkaen äärivasemmalta, meillä on seuraavat:

  • Käyttäjänimi: Tämä on käyttäjän nimi, tässä tapauksessa tecmint.
  • Salasana: Toinen sarake edustaa käyttäjän salattua salasanaa. Salasanaa ei tulosteta pelkkänä tekstinä, vaan käytetään x-merkillä varustettua paikkamerkkiä.
  • UID: Tämä on käyttäjän ID. Se on yksilöllinen tunniste jokaiselle käyttäjälle.
  • GID: Tämä on ryhmän tunnus.
  • Lyhyt kuvaus tai yhteenveto käyttäjästä.
  • Tämä on polku käyttäjän kotihakemistoon. Tecmint-käyttäjille meillä on /home/tecmint.
  • Tämä on sisäänkirjautumiskuori. Tavallisille kirjautuneille käyttäjille tämä esitetään yleensä muodossa /bin/bash. Palvelutileillä, kuten SSH tai MySQL, tämä esitetään yleensä muodossa /bin/false.

/etc/group-tiedosto

Tämä tiedosto sisältää tietoja käyttäjäryhmistä. Kun käyttäjä luodaan, komentotulkki luo automaattisesti ryhmän, joka vastaa käyttäjän käyttäjänimeä. Tämä tunnetaan ensisijaisena ryhmänä. Käyttäjä lisätään ensisijaiseen ryhmään luonnin yhteydessä.

Jos esimerkiksi luot käyttäjän nimeltä bob, järjestelmä luo automaattisesti ryhmän nimeltä bob ja lisää käyttäjän bob ryhmään.

cat /etc/group

tecmint:x:1002:

/etc/group-tiedostossa on 3 saraketta. Vasemmalta katsottuna meillä on:

  • Ryhmän nimi. Jokaisen ryhmän nimen on oltava yksilöllinen.
  • Ryhmän salasana. Yleensä edustaa x-paikkamerkki.
  • Ryhmätunnus (GID)
  • Ryhmän jäsenet. Nämä ovat jäseniä, jotka kuuluvat ryhmään. Tämä kenttä jätetään tyhjäksi, jos käyttäjä on ryhmän ainoa jäsen.

HUOMAA: käyttäjä voi olla useiden ryhmien jäsen. Samoin ryhmässä voi olla useita jäseniä.

Vahvista ryhmät, joihin käyttäjä kuuluu, suorittamalla komento:

groups username

Jos haluat esimerkiksi tarkistaa ryhmät, joihin käyttäjä tecmint kuuluu, suorita komento:

groups tecmint

Tulos vahvistaa, että käyttäjä kuuluu kahteen ryhmään: tecmint ja sudo.

tecmint : tecmint sudo

Tiedosto /etc/gshadow

Tämä tiedosto sisältää salattuja tai varjostettuja salasanoja ryhmätileille, ja turvallisuussyistä tavalliset käyttäjät eivät voi käyttää sitä. Sitä voivat lukea vain pääkäyttäjä ja käyttäjät, joilla on sudo-oikeudet.

sudo cat /etc/gshadow

tecmint:!::

Äärimmäisenä vasemmalla oleva tiedosto sisältää seuraavat kentät:

  • Ryhmän nimi
  • Salattu ryhmän salasana
  • Ryhmän ylläpitäjä
  • Ryhmän jäsenet

Tiedosto /etc/shadow

/etc/shadow-tiedosto tallentaa käyttäjien todelliset salasanat tiivistetyssä tai salatussa muodossa. Jälleen kentät on erotettu kaksoispisteellä ja niissä on esitetty muoto.

sudo cat /etc/shadow

tecmint:$6$iavr8PAxxnWmfh6J$iJeiuHeo5drKWcXQ.BFGUrukn4JWW7j4cwjX7uhH1:18557:0:99999:7:::

Tiedostossa on 9 kenttää. Alkaen äärivasemmalta meillä on:

  • Käyttäjänimi: Tämä on kirjautumisnimesi.
  • käyttäjän salasana. Tämä esitetään tiivistetyssä tai salatussa muodossa.
  • viimeinen salasanan vaihto. Tämä on päivämäärä salasanan vaihtamisesta, ja se lasketaan aikakauden päivämäärästä lähtien. Aikakausi on 1. tammikuuta 1970.
  • Salasanan vähimmäisikä. Tämä on päivien vähimmäismäärä, jonka täytyy kulua ennen kuin salasana voidaan asettaa.
  • Salasanan enimmäisikä. Tämä on päivien enimmäismäärä, jonka jälkeen salasana on vaihdettava.
  • Varoitusjakso. Kuten nimestä voi päätellä, tämä on päivien lukumäärä juuri ennen salasanan vanhenemista, jolloin käyttäjälle ilmoitetaan salasanan lähestyvästä vanhenemisesta.
  • Ei-aktiivisuusjakso. Kuinka monta päivää salasanan vanhenemisen jälkeen käyttäjätili poistetaan käytöstä ilman, että käyttäjä vaihtaa salasanaa.
  • Viimeinen voimassaolopäivä. Päivämäärä, jolloin käyttäjätili vanheni.
  • Varattu kenttä. – Tämä jätetään tyhjäksi.

Käyttäjien lisääminen Linux-järjestelmään

Debian- ja Ubuntu-jakeluissa käyttäjien lisäämiseen käytetään adduser-apuohjelmaa.

Syntaksi on melko yksinkertainen ja suoraviivainen.

adduser username

Jos haluat esimerkiksi lisätä käyttäjän nimeltä bob, suorita komento

adduser bob

Tulosteesta luodaan käyttäjä nimeltä bob, joka lisätään äskettäin luotuun ryhmään nimeltä bob. Lisäksi järjestelmä luo myös kotihakemiston ja kopioi siihen asetustiedostoja.

Sen jälkeen sinua pyydetään antamaan uuden käyttäjän salasana ja vahvista se. Shell pyytää myös käyttäjän koko nimeä ja muita valinnaisia tietoja, kuten huoneen numero ja työpuhelin. Nämä tiedot eivät todellakaan ole välttämättömiä, joten se on turvallista ohittaa. Paina lopuksi 'Y' vahvistaaksesi, että annetut tiedot ovat oikein.

Käytä RHEL- ja CentOS-pohjaisissa järjestelmissä useradd-komentoa.

useradd bob

Aseta seuraavaksi käyttäjän salasana passwd-komennolla seuraavasti.

passwd bob

Käyttäjien poistaminen Linux-järjestelmästä

Käyttäjän poistamiseksi järjestelmästä on suositeltavaa ensin lukita käyttäjä kirjautumasta järjestelmään kuvan osoittamalla tavalla.

passwd -l bob

Halutessasi voit varmuuskopioida käyttäjän tiedostot tar-komennolla.

tar -cvf /backups/bob-home-directory.tar.bz2  /home/bob

Lopuksi voit poistaa käyttäjän yhdessä kotihakemiston kanssa käyttämällä deluser-komentoa seuraavasti:

deluser --remove-home bob

Lisäksi voit käyttää userdel-komentoa kuvan mukaisesti.

userdel -r bob

Nämä kaksi komentoa poistavat käyttäjän kokonaan kotihakemistojensa rinnalta.

Johtopäätös

Tämä oli yleiskatsaus käyttäjien hallintakomentoihin, jotka osoittautuvat hyödyllisiksi erityisesti toimistoympäristön käyttäjätilejä hallittaessa. Kokeile heitä aika ajoin parantaaksesi järjestelmänhallintataitojasi.