Linuxin käyttäjäryhmät. Käyttäjät ja ryhmät Linuxissa. Lisätään poista muokkaavia käyttäjiä Tilin vahvistus

Käyttöoikeuksien jakamisen perusta Linux-käyttöjärjestelmässä on käyttäjän käsite. Käyttäjälle, joka omistaa tiedoston, annetaan tietyt oikeudet työskennellä sen kanssa, nimittäin lukea, kirjoittaa ja suorittaa. Luku-, kirjoitus- ja suoritusoikeudet määritetään myös erikseen kaikille muille käyttäjille. Koska kaikki Linuxissa on tiedostoja, tällaisen järjestelmän avulla voit säädellä pääsyä mihin tahansa toimintoon tässä käyttöjärjestelmässä asettamalla tiedostojen käyttöoikeudet. Mutta jopa Linuxia luodessaan kehittäjät ymmärsivät, että tämä ei selvästikään riittänyt.

Siksi käyttäjäryhmät keksittiin. Käyttäjät voivat yhdistyä ryhmiin myöntääkseen ryhmille tarvittavat oikeudet päästä tiettyihin tiedostoihin ja vastaavasti toimiin. Tässä artikkelissa tarkastellaan Linuxin käyttäjäryhmiä, miksi niitä tarvitaan, kuinka käyttäjä lisätään ryhmään ja miten ryhmiä hallinnoidaan.

Kuten jo sanoin, Linuxin ryhmät ilmestyivät tämän käyttöjärjestelmän kehityksen alussa. Ne on suunniteltu parantamaan oikeuksien hallintaominaisuuksia. Katsotaanpa pientä esimerkkiä, otetaanpa organisaatio, jossa on vain yksi tietokone, meillä on ylläpitäjät ja käyttäjät. Jokaisella henkilöllä on oma tili tietokoneellamme. Järjestelmänvalvojat voivat mukauttaa järjestelmää, mutta käyttäjien on parempi olla antamatta vapaata kättä, jotta ne eivät rikkoisi jotain. Siksi järjestelmänvalvojat yhdistetään admin-ryhmään, ja sille annetaan pääsy kaikkiin laitteisiin, itse asiassa kaikkiin dev-hakemiston tiedostoihin, ja käyttäjät yhdistyvät käyttäjäryhmään, ja tälle ryhmälle annetaan kyky lukea ja kirjoittaa. tiedostot yhteiseen hakemistoon, jonka avulla he voivat jakaa työsi tuloksia. Voisimme määrittää oikeudet jokaiselle käyttäjälle erikseen, jolloin hän voi käyttää tiettyä tiedostoa, mutta tämä on liian hankalaa. Siksi ryhmät keksittiin. Sanot, ei hätää, voinko nimittää sinut? Kuvittele nyt, että käyttäjämme ovat prosesseja. Tässä tulee esiin ryhmien kauneus: ryhmiä ei käytetä niinkään käyttäjien pääsyn tarjoamiseen, vaan ohjelmaoikeuksien hallintaan, erityisesti heidän pääsynsä laitteistoon. Palveluille ja käyttäjälle, jonka puolesta se käynnistetään, luodaan erilliset ryhmät, palvelu voi olla useiden ryhmien jäsen, mikä antaa sille pääsyn tiettyihin resursseihin.

Katsotaan nyt kuinka tarkastella Linux-ryhmiä.

Ryhmät Linuxissa

Kaikki järjestelmässä luodut ryhmät sijaitsevat /etc/group-tiedostossa. Katsomalla tämän tiedoston sisältöä saat selville luettelon Linux-ryhmistä, jotka ovat jo järjestelmässäsi. Ja tulet yllättymään.

Normaalin pääkäyttäjän ja käyttäjien lisäksi täällä on pari tusinaa muuta ryhmää. Nämä ovat ohjelmien luomia ryhmiä ohjaamaan näiden ohjelmien pääsyä jaettuihin resursseihin. Jokainen ryhmä sallii tietyn tiedoston tai hakemiston lukemisen tai kirjoittamisen järjestelmässä, mikä säätelee käyttäjän oikeuksia ja siten käyttäjänä käynnissä olevaa prosessia. Tässä voidaan ajatella, että käyttäjä on sama kuin prosessi, koska prosessilla on kaikki sen käyttäjän oikeudet, josta se käynnistetään.

Tarkastellaan lähemmin jokaista ryhmää ymmärtääksemme paremmin, miksi niitä tarvitaan:

  • demoni- Palvelut, jotka tarvitsevat mahdollisuuden kirjoittaa tiedostoja levylle, käynnistetään tämän ryhmän ja demon-käyttäjän puolesta.
  • sys- ryhmä tarjoaa pääsyn ytimen lähteisiin ja sisältää järjestelmään tallennettuja tiedostoja
  • synkronointi- voit suorittaa /bin/sync-komennon
  • pelejä- Sallii pelien kirjoittaa asetustiedostonsa ja historiansa tiettyyn kansioon
  • mies- voit lisätä sivuja hakemistoon /var/cache/man
  • lp- mahdollistaa rinnakkaisporttilaitteiden käytön
  • postia- voit kirjoittaa tietoja postilaatikoihin /var/mail/
  • välityspalvelin- välityspalvelinten käyttämä, ei pääsyä tiedostojen kirjoittamiseen levylle
  • www-data- Web-palvelin alkaa tästä ryhmästä, se antaa pääsyn /var/www-merkintään, jossa web-asiakirjatiedostot sijaitsevat
  • lista- voit tarkastella viestejä hakemistossa /var/mail
  • ei ryhmää- käytetään prosesseissa, jotka eivät voi luoda tiedostoja kiintolevylle, vaan vain lukea niitä, käytetään yleensä yhdessä ei-ketään-käyttäjän kanssa.
  • adm- voit lukea lokeja /var/log-hakemistosta
  • tty- Kaikki laitteet /dev/vca sallivat luku- ja kirjoitusoikeudet tämän ryhmän käyttäjille
  • levy- avaa pääsyn kiintolevyille /dev/sd* /dev/hd*, voimme sanoa, että tämä on analoginen pääkäyttäjälle.
  • puhelinsoitto- täysi pääsy sarjaporttiin
  • CD-ROM- pääsy CD-ROM-levylle
  • pyörä- voit suorittaa sudo-apuohjelman oikeuksien laajentamiseksi
  • audio- ääniohjaimen hallinta
  • src- täydellinen pääsy /usr/src/-hakemiston lähteisiin
  • varjo- sallii /etc/shadow-tiedoston lukemisen
  • utmp- sallii kirjoittamisen tiedostoihin /var/log/utmp /var/log/wtmp
  • video- voit työskennellä videoohjaimen kanssa
  • plugdev- voit asentaa ulkoisia laitteita USB, CD jne.
  • henkilöstöä- sallii kirjoittamisen /usr/local-kansioon

Nyt kun tiedät, miksi käytät ryhmiä Linuxissa ja mitä ne oletuksena ovat, katsotaanpa LInux-ryhmien hallintaa.

Linux Group Management

Voit myös hallita ryhmiä graafisen käyttöliittymän avulla. KDE:ssä on Kuser-niminen ohjelma, joka on suunniteltu erityisesti tätä varten, ja Gnomessa se tehdään järjestelmäasetusten avulla. Lisäksi suosituilla jakeluilla on erilliset työkalut, kuten YaST OpenSUSEssa tai Ubuntu-asetukset. Mutta luulen, että selvität sen graafisen käyttöliittymän avulla. Ja tarkastelemme Linux-ryhmien hallintaa terminaalin kautta. Ensin käsitellään tiedostoja ja vasta sitten käyttäjiä.

Kun tiedosto luodaan, sille määritetään sen luoneen käyttäjän ensisijainen ryhmä. Se on juuri näin:

Tästä näet, että kaikkien kansioiden omistaja on sergiy ja ryhmä myös sergiy. Totta, koska nämä käyttäjät olen luonut. Mutta mennään pidemmälle:

Tässä näemme, että sd*-levylaitteet on määritetty levyryhmään, mikä tarkoittaa, että tähän ryhmään kuuluva käyttäjä voi käyttää niitä. Tai toinen esimerkki:

Kaikki on kuten edellisessä kappaleessa keskustelimme. Mutta järjestelmä ei voi vain asettaa näitä ryhmiä, vaan voit itse muuttaa tiedostoryhmiä manuaalisesti; tätä varten on chgrp-komento:

chgrp-ryhmän_nimi tiedoston_nimi

Luodaan esimerkiksi tiedostotesti:

Ja vaihdetaan ryhmää sitä varten:

Jos haluat luoda linux-ryhmän, voit tehdä tämän newgrp-komennolla:

sudo groupadd -testi

Käyttäjien tilanne on hieman monimutkaisempi. Käyttäjällä on pääryhmä, joka määritetään luonnin aikana, sekä useita muita. Pääryhmä eroaa tavallisista siinä, että kaikissa käyttäjän kotihakemiston tiedostoissa on tämä ryhmä, ja kun sitä muutetaan, vaihtuu myös näiden hakemistojen ryhmä. Myös kaikki käyttäjän luomat tiedostot saavat tämän ryhmän. Lisäryhmiä tarvitaan, jotta voimme antaa käyttäjille mahdollisuuden käyttää erilaisia ​​resursseja lisäämällä heidät näihin ryhmiin Linuxissa.

Käyttäjän Linux-ryhmien hallinta tapahtuu usermod-komennolla. Katsotaanpa sen syntaksia ja vaihtoehtoja:

$usermod vaihtoehtoja Käyttäjätunnus

  • -G- lisäryhmiä, joihin sinun on lisättävä käyttäjä
  • -g vaihda käyttäjän ensisijainen ryhmä
  • -R poista käyttäjä ryhmästä.

Voit lisätä käyttäjän ryhmään usermod-komennolla:

sudo usermod -G -ryhmän_nimi käyttäjänimi

Voit lisätä käyttäjän linux-ryhmään väliaikaisesti käyttämällä newgrp-komentoa. Uusi kuori avautuu, ja siinä käyttäjällä on tarvittavat käyttöoikeudet, mutta sulkemisen jälkeen kaikki palaa entiseen tapaan:

sudo newgrp ryhmän_nimi

Lisätään esimerkiksi käyttäjämme levyryhmään, jotta pääsemme suoraan kiintolevyille ilman sudo-komentoa:

sudo usermod -G -levy sergiy

Nyt voit liittää levyjä ilman sudo-komentoa:

liitä /dev/sda1 /mnt

Voit tarkastella linux-ryhmiä, joissa käyttäjä on jäsenenä komennolla:

Voit myös käyttää id-komentoa. Ensimmäisessä tapauksessa näemme vain luettelon Linux-ryhmistä; toisessa tapauksessa ryhmä ja käyttäjätunnus on lisäksi ilmoitettu. Jos haluat lisätä käyttäjän Linux-ryhmään, käytä ensisijaisen ryhmän -g-vaihtoehtoa.

Luodaan käyttäjä vivek ja lisätään hänet kehittäjäryhmään. Kirjaudu sisään pääkäyttäjänä:

Lisätään esimerkiksi käyttäjä vivek:

useradd -g käyttäjiä -G-järjestelmänvalvojat,ftp,www,kehittäjät -s/bin/bash -sxxxx-d/home/ghost -m vivek

  • -d kotihakemisto
  • -s aseta aloituskuori (/bin/sh) - voit muuttaa sen sitten tiedostossa /etc/passwd
  • -s Salasana
  • -g ensisijainen ryhmä, johon käyttäjä on määritetty (ryhmän on oltava olemassa)
  • -G muut ryhmät, joihin käyttäjä on liitetty
  • -m luo käyttäjälle kotihakemisto
  • xxxx-merkkinen käyttäjän salasana

Varmistetaan, että kehittäjäryhmä on olemassa:

# grep-kehittäjät /etc/group

Jos ryhmää ei ole, käytä komentoa ryhmälisää luodaksesi uuden kehittäjäryhmän:

Nyt käytetään komentoa usermod lisää käyttäjä vivek kehittäjäryhmään:

# adduser vivek kehittäjät && newgrp kehittäjät

Varmistetaan, että käyttäjä on lisätty kehittäjäryhmään:

#id vivek
Lähtö:
uid=1122(vivek) gid=1125(vivek) ryhmät=1125(vivek),1124(kehittäjät)

Aseta/vaihda vivek-käyttäjän salasana:

Leikitään ryhmien kanssa

Käsketään vivek-käyttäjää osallistumaan vain kehittäjäryhmään

usermod-G-kehittäjät vivek

Käsketään vivek-käyttäjää osallistumaan vain ylläpitäjät, ftp, www, kehittäjät ryhmiin syöttämällä:

# usermod -G-järjestelmänvalvojat,ftp,www,kehittäjät vivek

Poistetaan käyttäjä vivek joistakin ryhmistä (osoita ryhmät hänelle uudelleen):

# usermod -G ftp,www vivek

nyt vivek ei sisälly järjestelmänvalvojien ja kehittäjien ryhmiin.

Huomautus: tiimi usermod ei muuta käyttäjätunnusta, jos kyseinen käyttäjä on tällä hetkellä kirjautuneena järjestelmään.

userdel- poista käyttäjä

Poista esimerkiksi käyttäjä vivek:

  • -r poista käyttäjä kotihakemiston kanssa

Yksityiskohtainen SYNTAKSI

käyttäjälisää [-u tunniste[-o] [-i]] [-g ryhmä] [-G ryhmä[[,ryhmä] . . .]] [-d luettelo] [-s kuori] [-c kommentti] [-m [-k skel_dir]] [-f epäaktiivinen] [-e mennä umpeen] [-s passgen] [-a tapahtuma[, . . .]] reg_name

Yksityiskohtainen kuvaus

Puhelu useradd yleensä lisää uuden käyttäjämerkinnän järjestelmän tietotiedostoihin tunnistaminen ja henkilöllisyyden todentaminen(Identification and Authentication – I&A). Poikkeuksen ovat käyttäjät verkkotietopalvelu(Network Information Service tai lyhenne NIS). Sen avulla voit myös määrittää käyttäjälle jäsenyyden lisäryhmiin (valinnainen -G) ja luo sille aloitushakemisto (valinnainen -m). Uusi sisäänkirjautuminen on estetty, kunnes komento suoritetaan passwd.

Välittömästi asennuksen jälkeen eri parametrien vakioarvot näkyvät tiedostossa /etc/default/useradd. Alla lueteltujen oletusarvoja vaativien vaihtoehtojen oletusarvoja voidaan muuttaa komennolla defadm.

Tällä komennolla luotujen järjestelmätiedostojen pituusrajoitus on 512 merkkiä riviä kohden. Jos useille vaihtoehdoille annetaan pitkiä argumentteja, tämä rajoitus voidaan rikkoa.

Seuraavia vaihtoehtoja tuetaan:

-u-tunniste Käyttäjätunnus (UID). Tämän luvun tulee olla ei-negatiivinen kokonaisluku, joka ei ole suurempi kuin MAXUID, määritelty kohdassa sys/param.h. Oletusarvo on seuraava käytettävissä oleva (ainutlaatuinen) ei-vanha UID, joka on suurempi kuin 99. Tämä vaihtoehto ohitetaan, jos verkkotietopalvelu (NIS) hallinnoi uutta kirjautumista. Lisätietoja tästä on alla olevasta "Verkkotietopalvelun rekisteröintinimet" -osiosta.
-o Tämän vaihtoehdon avulla voit kopioida UID:n (tehdä siitä ei-ainutlaatuisen). Koska suojaus järjestelmän kokonaisuutena sekä eheys kirjausketju(kirjausketju) ja kirjanpitotiedot(kirjanpitotiedot) riippuu erityisesti kunkin UID:n yksilöllisestä vastaavuudesta tietylle henkilölle, tämän vaihtoehdon käyttöä ei suositella (jotta varmistetaan, että käyttäjän toimet otetaan huomioon).
-i Mahdollistaa vanhan UID:n käytön.
-g ryhmä Olemassa olevan ryhmän kokonaislukutunniste tai symbolinen nimi. Tämä vaihtoehto määrittää ydinryhmä(ensisijainen ryhmä) uudelle käyttäjälle. Oletuksena käytetään tiedostossa määritettyä vakioryhmää /etc/default/useradd
-G-ryhmä[[,ryhmä] . . .] Yksi tai useampi elementti pilkuilla erotetussa luettelossa, joista jokainen edustaa olemassa olevan ryhmän kokonaislukutunnistetta tai symbolista nimeä. Tämä luettelo määrittelee jäsenyys lisäryhmiin(lisäryhmäjäsenyys) käyttäjälle. Toistukset jätetään huomiotta. Luettelon elementtien lukumäärä ei saa ylittää NGROUPS_MAX - 1, koska lisäryhmien kokonaismäärä käyttäjälle plus pääryhmälle ei saa ylittää NGROUPS_MAX. Tämä vaihtoehto ohitetaan, jos verkkotietopalvelu (NIS) hallinnoi uutta kirjautumista. Katso "Verkkotietopalvelun rekisteröintinimet" alla.
-d hakemisto Aloita hakemisto(kotihakemisto) uuden käyttäjän. Tämän kentän pituus saa olla enintään 256 merkkiä. Oletus on HOMEDIR/reg_name, Missä HOMEDIR- perushakemisto uusien käyttäjien alkuhakemistoille ja reg_name- uuden käyttäjän rekisteröintinimi.
-s kuori Ohjelman täydellinen polku, jota käytetään käyttäjän alkuperäisenä komentotulkina välittömästi rekisteröinnin jälkeen. Tämän kentän pituus saa olla enintään 256 merkkiä. Oletuksena tämä kenttä on tyhjä, mikä pakottaa järjestelmän käyttämään vakiokomentotulkkia /usr/bin/sh. Arvona kuori olemassa oleva suoritettava tiedosto on määritettävä.
-c kommentti Mikä tahansa tekstimerkkijono. Tyypillisesti tämä on lyhyt kuvaus kirjautumisnimestä, ja sitä käytetään nyt ilmaisemaan oikean käyttäjän suku- ja etunimi. Nämä tiedot tallennetaan käyttäjätietueeseen tiedostoon /etc/passwd. Tämän kentän pituus saa olla enintään 128 merkkiä.
-m Luo uuden käyttäjän kotihakemiston, jos sitä ei vielä ole olemassa. Jos hakemisto on jo olemassa, lisättävällä käyttäjällä on oltava oikeus käyttää määritettyä hakemistoa.
-k skel_dir Kopioi hakemiston sisällön skel_dir uuden käyttäjän kotihakemistoon tavallisen "luuranko"-hakemiston sisällön sijaan, /etc/skel. Luettelo skel_dir täytyy olla olemassa. Tavallinen "luuranko"-hakemisto sisältää vakiotiedostoja, jotka määrittelevät käyttäjän työympäristön. Järjestelmänvalvojan määrittämä hakemisto skel_dir voi sisältää samanlaisia ​​tiedostoja ja hakemistoja, jotka on luotu tiettyyn tarkoitukseen.
-f ei-aktiivinen Rekisteröintinimen käyttökertojen välinen enimmäismäärä päiviä ennen kuin nimi on jo julistettu mitättömäksi. Tyypillisesti arvot ovat positiivisia kokonaislukuja.
-e vanhentumassa Päivämäärä, josta alkaen rekisteröintinimeä ei voida enää käyttää; Tämän päivämäärän jälkeen kukaan käyttäjä ei voi käyttää tätä kirjautumistunnusta. (Tämä vaihtoehto on hyödyllinen luotaessa väliaikaisia ​​kirjautumisia.) Syötä argumentin arvo mennä umpeen(esittää päivämäärää) voi olla missä tahansa muodossa (paitsi Julian päivämäärä). Voit esimerkiksi kirjoittaa 10/6/99 tai 6. lokakuuta 1999.
-p passgen Osoittaa, että FLAG-kenttä tiedostossa /etc/shadow on asetettava määritettyyn arvoon. Tähän kenttään päästään komennolla passwd määrittääksesi, onko salasanageneraattori kelvollinen tietylle käyttäjälle. Jos vaihtoehto -s ei nimenomaisesti määritelty, merkintä tarkistetaan FORCED_PASS tiedostossa /etc/default/useradd määrittääksesi vastaavan kentän arvon /etc/shadow. Jos tallentaa FORCED_PASS ei sisään /etc/default/useradd, merkinnän vastaavassa kentässä /etc/shadow sillä ei ole väliä. Jos arvo FORCED_PASS on yhtä kuin 1, sisääntulo /etc/shadow saa arvon 1. Jos arvo passgen ei ole tyhjä eikä tulostettava ASCII-merkki, annetaan diagnostiikkasanoma.
-tapahtuma Luettelo tapahtumatyypeistä tai luokista pilkuilla erotettuina, muodostaen tarkastusmaski(tarkastusmaski) käyttäjälle. Heti järjestelmän asennuksen jälkeen käyttäjälle ei ole olemassa standardia auditimaskia, mutta se voidaan asettaa tiedostoon /etc/default/useradd komentoa käyttämällä defadm. Tätä vaihtoehtoa voidaan käyttää vain, jos Auditing Utilities on asennettu. (Jos haluat selvittää, mitä paketteja järjestelmään on asennettu, suorita komento pkginfo.)
reg_name Tulostettava merkkijono, joka määrittää uuden käyttäjän kirjautumisnimen. Se ei saa sisältää kaksoispisteitä ( : ) ja rivinvaihtomerkit ( \n). Sen ei myöskään pitäisi alkaa isolla kirjaimella.

Huomaa, että monia yllä käsiteltyjen parametrien oletusarvoja voidaan muuttaa komennolla defadm, suunniteltu toimimaan tiedoston kanssa /etc/default/useradd. Nämä oletusarvot koskevat vain paikallisia käyttäjiä. NIS-käyttäjille oletusarvot asetetaan Network Information Service -tietokannassa. Jos haluat muuttaa NIS-oletusasetuksia, sinun on määritettävä asetukset komentorivillä.

Verkkotietopalvelun rekisteröintinimet

Jos kirjautumisnimi alkaa merkillä + , (Esimerkiksi, +Chris), käyttäjämäärittelyä hallinnoi verkkotietopalvelu (NIS). Oletusarvot määritetään NIS-tietokannan eikä tiedoston perusteella /etc/defaults/useradd. Vaihtoehtojen argumenttiarvot -u, -g Ja -G ohitetaan äänettömästi, jos nämä vaihtoehdot on määritetty. Sen sijaan käyttäjätunnuksen ja ryhmätunnuksen arvot otetaan NIS-tietokannasta. Katso lisätietoja ohjesivulta. passwd. Huomaa, että kun lisäät NIS-käyttäjää, sisäänkirjautumisen tulee olla jo olemassa NIS-tietokannassa. Esimerkiksi kirjautumisnimen lisääminen Chris NIS-käyttäjänimenä, Chris on jo oltava NIS-tietokannassa. Sitten sinun täytyy soittaa useradd rekisteröintinimellä +Chris ilmaisemaan, että käyttäjä on lisättävä Chris NIS-käyttäjänä, ei paikallisena käyttäjänä.

TIEDOSTOT

/etc/default/useradd
/etc/group
/etc/passwd
/etc/security/ia/ageduid
/etc/security/ia/audit(jos Auditing Utilities on asennettu)
/etc/security/ia/index
/etc/security/ia/master
/etc/shadow
/etc/skel

DIAGNOSTIIKKA

Tiimi useradd poistuu palautuskoodilla 0, jos onnistuu. Jos virheitä ilmenee, seuraavat viestit voivat tulla näyttöön:


Virheellinen komentorivisyntaksi.
Komentorivin syntaksi oli virheellinen.
Vaihtoehdossa määritettiin virheellinen argumentti.
Virheellinen argumentti annettiin vaihtoehdon kanssa.
Optiossa -u määritetty tunniste on jo käytössä, mutta -o-optiota ei ole määritetty.
Optiolla -u määritetty uid on jo käytössä ja -o-optiota ei ole määritetty.
-g-vaihtoehdolla määritettyä ryhmää ei ole olemassa.
-g-vaihtoehdolla määritettyä ryhmää ei ole olemassa.
Annettu kirjautumisnimi ei ole ainutlaatuinen.
Määritetty kirjautumistunnus ei ole ainutlaatuinen.
Muutos /etc/group epäonnistui. Kirjautumistunnus lisätään /etc/passwd-tiedostoon, mutta ei /etc/group-tiedostoon.
Ei voi päivittää /etc/group. Kirjautumistunnus lisättiin /etc/passwd-tiedostoon, mutta ei /etc/group-tiedostoon.
Aloitushakemistoa ei voitu luoda (optiolla -m) tai skel_dir kopiointi aloitushakemistoon epäonnistui.
Kotihakemiston luominen epäonnistui (-m-vaihtoehdolla) tai skel_dir-tiedoston kopiointi kotihakemistoon ei onnistu.
Tunnus ei ole tarpeeksi vanha. Valitse toinen.
uid ei ole vanhentunut tarpeeksi. Valitse toinen.
Virheellinen -a-vaihtoehto määritettiin; järjestelmäpalvelua ei ole asennettu.
Virheellinen vaihtoehto -a määritettiin; järjestelmäpalvelua ei ole asennettu.
Määritetty valvontatapahtuman tyyppi tai luokka on virheellinen.
Virheellinen tarkastustapahtumatyyppi tai luokkatapahtuma määritettiin.

Järjestelmät, jotka tarjoavat usean käyttäjän pääsyn, olipa kyseessä käyttöjärjestelmä, ohjelmisto, sisällönhallintajärjestelmä (CMS), on erittäin tärkeää, että sinulla on työkalut käyttäjien luotettavaan hallintaan (heidän tilinsä tai tilinsä, käyttäjien määritykset, kotihakemistot jne.). ). ), sekä itse käyttäjien käyttöoikeuksien järjestämiseen ja hallintaan. Tällaisissa tapauksissa käyttäjien (tarkemmin sanoen heidän tilien) asiantunteva ja harkittu hallinta on keskeinen näkökohta, josta riippuu koko järjestelmän turvallisuus, vakaus ja siten myös luotettavuus. Nykyaikaisissa Linux-jakeluissa on automatisoidut käyttäjien hallintajärjestelmät selkeällä graafisella käyttöliittymällä (GUI), jonka avulla voit nopeasti ja kätevästi suorittaa rutiinitoimintoja (kuten todellisuudessa käy ilmi) käyttäjien hallintaan ja tilien konfigurointiin. On kuitenkin erittäin tärkeää tietää ja ymmärtää, miten ja mitä varsinaisia ​​prosesseja ja muutoksia itse järjestelmässä tapahtuu käyttäjähallinnan aikana.

Käyttäjien lisääminen Linuxissa

Jos haluat lisätä järjestelmään uuden käyttäjän nimeltä John, suorita komento:

$sudo useradd john

Tämä luo seuraavan merkinnän /etc/passwd-tiedostoon:

John:x:535:20: :/home/john:/bin/sh

Kuitenkin joukkue useradd on paljon suuremmat mahdollisuudet, esim.

$ sudo useradd -c "John Silver" -d /koti/merirosvot/john -g merirosvot -G john -m -s /bin/bash john

Tämä komento lisää järjestelmään käyttäjän koko nimellä "John Silver" ja kirjautumisnimellä "john". Kun hänet sisällytetään pääryhmään "pirates", lisätään hänet myös toiseen lisäryhmään "john" ja osoitetaan hänelle kotihakemisto osoitteessa /home/pirates/john. Tämän seurauksena vastaava merkintä /etc/passwd-tiedostossa on suunnilleen tällainen:

John:x:535:30:John Silver:/home/pirates/john:/bin/bash

Tiimi useradd luo automaattisesti käyttäjän kotihakemiston, jos sitä ei ole jo luotu. A myös kopioi tiedostoja /etc/skel/ siihen.

Täydellinen luettelo parametreista useradd

Käyttö: useradd [valinnat] KÄYTTÄJÄ
käyttäjälisäys -D
useradd -D [valinnat]

Vaihtoehdot:
-b, --base-dir BAZ_KAT-perushakemisto uuden kotihakemistolle
tili
-c, --kommentti KOMMENTTI-kenttä uuden tilin GECOS
-d, --home-dir uuden tilin DOM_KAT-kotihakemisto
-D, --oletukset näyttää tai muuttaa asetuksia
oletuksena käyttäjälisälle
-e, --expiredate DATE_STATE uuden tilin viimeinen voimassaolopäivä
-f, — ei-aktiivinen KÄYTTÖÖNOTTO uuden tilin salasanan käyttämättömyyden ajanjakso
-g, --gid RYHMÄN nimi tai uuden ensisijaisen ryhmän tunnus
tili
-G, --groups RYHMÄT lista uusista lisäryhmistä
tili
-k, --skel CAB_SHAB käyttää vaihtoehtoista hakemistoa malleilla
-K, --key KEY=ARVO korvaa oletusarvon
tiedostosta /etc/login.defs
-l, --no-log-init älä lisää käyttäjää lastlog-tietokantoihin ja
virheloki
-m, --create-home luo käyttäjän kotihakemiston
-M, --no-create-home eivät luo käyttäjän kotihakemistoa
-N, --no-user-group älä luo ryhmää, jolla on sama nimi kuin
käyttäjä
-o, --non-unique sallii käyttäjien luomisen
toistuvat (ei ainutlaatuiset) UID:t
-s, --password PASSWORD salattu salasana uudelle tilille
-r, --järjestelmä luo järjestelmätili
-R
-s, --shell SHELL uuden rekisteröintikuori
tili
-u, --uid UID:n uuden tilin käyttäjätunnus
-U, --user-group luo ryhmä, jolla on sama nimi kuin
käyttäjä
-Z, --selinux-user SEUSER käyttää määritettyä SEUSER:lle
SELinux mukautettu kartoitus

Kotihakemiston luominen ja määrittäminen käyttäjälle

Yleensä kotihakemisto luodaan automaattisesti, kun käyttäjä lisätään järjestelmään. Mutta on aikoja, jolloin kotihakemistoa ei jostain syystä luoda. Ja sitten on tarvetta luoda se. Luo käyttäjän kotihakemisto käyttämällä tavallista mkdir-komentoa. Tämän jälkeen sinun on kopioitava tarvittavat konfigurointiskriptit kotihakemistoon (käyttäjän työympäristön järjestämiseksi), sitten chown- ja chmod-komennoilla asetettava omistaja- ja käyttötilat hakemistoon ja sen sisältöön. Tämä on parasta tehdä sen jälkeen, kun kaikki määritystiedostot on kopioitu kohdehakemistoon. Esimerkiksi:

$ mkdir /home/john/ $ cd /etc/skel/ $ cp -Rp . /home/john/ $ chown -R john:john /home/john/ $ chmod -R 644 /home/john/ $ find /home/john/ -type d -exec chmod 755 () \;

Kuten näet, asetustiedostot kopioitiin hakemistosta /etc/skel/ - tähän on tallennettu esimerkkejä käynnistyskokoonpanoista, joita voidaan muokata tarpeen mukaan. Muuten, muokattu kopio /etc/skel/-hakemiston tiedostoista tulee tallentaa usr/local/etc/skel-hakemistoon. Kotihakemiston omistajaa asetettaessa on huolehdittava siitä, että (jos chown-komentoa käytetään huolimattomasti) käyttäjä ei joudu pseudohakemiston ".." eli ylemmän hakemistotason omistajaksi. joka on usein /home-hakemisto, jota turvallisuussyistä ei voida hyväksyä.

Salasanan luominen käyttäjälle

Turvallisuussyistä tililläsi on oltava vahva salasana. Mikä tulee asettaa heti käyttäjätilin luomisen jälkeen:

$ sudo passwd_uuden_käyttäjän_nimi

Esimerkiksi käyttäjälle jonh:

$ sudo passwd john Uusi salasana: Anna uusi salasana uudelleen: passwd: Kaikki todennustiedot on päivitetty onnistuneesti.

Tilin todentaminen

Ennen kuin siirrät tilillesi kirjautumistiedot ja alkuperäisen salasanan uudelle käyttäjälle, se on vahvistettava. Voit tehdä tämän lopettamalla nykyisen istunnon. Ja kirjaudu sisään uuden käyttäjän nimellä (jonka tili on vahvistettava). Ja suorita seuraavat komennot peräkkäin:

$ pwd $ ls -al

Ensimmäinen näyttää nykyisen käyttäjän kotihakemiston, toinen näyttää luettelon kaikista (myös piilotetuista) tiedostoista ja alihakemistoista kotihakemistossa, ilmoittaen niiden omistajan ja käyttötavat.

Tilin hallinta

Kuten aiemmin todettiin, Linux-järjestelmien käyttäjien hallintaan on olemassa joukko erikoistuneita apuohjelmia tilien (käyttäjien) lisäämiseen, muokkaamiseen ja poistamiseen - useradd, usermod ja userdel. He noudattavat määrättyä toimintojen järjestystä lopullisen tavoitteen saavuttamiseksi - esimerkiksi uuden käyttäjän lisäämisen yhteydessä komento useradd tuottaa vastaavasti koko edellä kuvatun "toimintosarjan". Jokainen näistä apuohjelmista voidaan määrittää joustavasti määritystiedostojen avulla, joita Linux-jakelun kehittäjät muuten käyttävät erittäin aktiivisesti. Loppujen lopuksi eri Linux-järjestelmissä näiden apuohjelmien toiminta vaihtelee hieman, vaikka apuohjelmat ovat oleellisesti identtisiä. Alla on taulukko, joka näyttää komennot ja asetustiedostot joidenkin järjestelmien käyttäjien hallintaan käyttämällä apuohjelmaa esimerkkinä useradd:

Järjestelmä Joukkueet Asetustiedostot Kommentti
Ubuntu useradd /etc/login.defs
lisää käyttäjä /etc/default/useradd Perl versio
/etc/adduser.conf
SUSE useradd /etc/login.defs
/etc/default/useradd
/etc/default/passwd
/usr/sbin/useradd.local Paikalliset asetukset
/usr/sbin/userdel.local Paikalliset asetukset
/usr/sbin/userdel-pre.local Paikalliset asetukset
/usr/sbin/userdel-post.local Paikalliset asetukset
punainen hattu useradd /etc/login.defs
/etc/default/useradd
Solaris useradd /etc/default/(login,passwd)
/etc/security/policy.conf

Käyttäjien poistaminen

Käyttäjien poistamiseksi järjestelmästä käytä userdel-komentoa, esimerkiksi komentoa

userdel john

Poistaa käyttäjän john, mutta usein (kuten komento useradd, muuten) ei "puhtaassa" muodossa, vaan Perl-kuorten muodossa tilin poistokomentosarjan avulla. Esimerkiksi Ubuntu-jakeluissa käytetään deluser-komentoa, joka on yleinen Perl-komentosarja. Joka puolestaan ​​kutsuu itse userdel-komentoa poistamaan ja puhdistamaan kaiken, mitä komento on aiemmin tehnyt useradd. Tässä tapauksessa käytetään komentosarjatiedostoa (yleensä tiedosto /etc/deluser.conf Ubuntussa ja /etc/login.defs RedHatissa). Tämän avulla voit asettaa seuraavat asetukset userdel-komennolle:

Käyttö: userdel [valinnat] KÄYTTÄJÄ

Vaihtoehdot:
-f, -- pakottaa poistamaan käyttäjät ja tiedostot, vaikka ne olisivatkin käytössä
-r, --remove poista kotihakemisto ja postilaatikko
-R, --root CAT_CHROOT-hakemisto, johon chroot
-Z, --selinux-user poistaa kaikki käyttäjäkartoitukset
SELinux käyttäjälle

Tiedosto /etc/passwd – paikallisten tilien kuvaus

Jos järjestelmä ei käytä automaattista hakemistonhallintapalvelua (esimerkiksi LDAP, NIS), /etc/passwd-tiedosto on tiedosto, joka tallentaa tietoja järjestelmän tuntemista käyttäjätileistä. Järjestelmä käyttää tätä tiedostoa aina, kun käyttäjä yrittää todentaa, etsii tarvittavaa käyttäjätunnusta ja määrittää kotihakemistonsa. Tämän tiedoston muoto on sellainen, että jokainen sen rivi vastaa yhtä tiettyä käyttäjää (tiliä), joka (rivillä) luettelee tilin attribuutit (kentät) kaksoispisteellä erotettuna:

  1. Käyttäjätunnus.
  2. Käyttäjän salasana (salattu) tai "paikkamerkki"-salasana.
  3. Käyttäjätunnus.
  4. Käyttäjäryhmän tunnus (oletus).
  5. GECOS-tiedot - koko nimi, toimisto, puhelinnumerot jne.
  6. Kotihakemisto.
  7. Rekisteröinnin kuori.

/etc/passwd-tiedoston sisältö saattaa näyttää tältä: Kuten näet, kaikkien merkintöjen toinen kenttä sisältää "x", salasanan paikkamerkin. Linux-järjestelmissä salatut salasanat tallennetaan erikseen /etc/shadow-tiedostoon. Jos automaattista hakemistonhallintapalvelua käytetään yhdessä /etc/passwd-tiedoston kanssa, sama tiedosto sisältää "+"-merkillä alkavia merkintöjä. Nämä merkinnät sisältävät ohjeita hakemistonhallintapalvelujen integroimiseksi järjestelmään. Tilikenttiä kannattaa vilkaista nopeasti:

  • Käyttäjätunnus tai kirjautumisnimi- yksilöllinen nimi, joka on käännettävä tietyn järjestelmän rekisteröintinimien muodostamista koskevien sääntöjen mukaisesti. Linuxissa kirjautumisnimi voi olla enintään 32 merkkiä pitkä. Vain pieniä kirjaimia ja numeroita saa käyttää. Rekisteröintinimen tulee alkaa kirjaimella.
  • Salattu salasana- Kuten jo todettiin, paikallisten tilien salasanat tallennetaan tiedostoon /etc/shadow salatussa muodossa. Linuxissa crypt-, MD5- ja Blowfish-algoritmeja käytetään salaustyökaluina salasanojen salaamiseen. Salasanan vähimmäispituus on 5 merkkiä ja enimmäispituus 8 merkkiä
  • käyttäjätunnus on etumerkitön kokonaisluku, jonka perusteella järjestelmä "tunnistaa" yksittäiset käyttäjät, joten järjestelmä ja ohjelmistoympäristö käyttävät käyttäjätunnuksia, kun taas käyttäjätunnuksia käytetään selkeyden ja käyttäjien esittämisen helpottamiseksi järjestelmässä. Tunnusnumero 0 on varattu pääkäyttäjälle, ja 500:n jälkeen on suositeltavaa antaa tunnukset oikeille käyttäjille, koska järjestelmässä voi olla monia "tunnistamattomia" käyttäjiä, kuten bin tai daemon - tämä säilyttää luettelon käyttäjät järjestyksessä ja välttää sekaannukset. Linux-järjestelmät tarjoavat myös pseudo-user nobody, jonka tunniste on -1 tai -2. Tyypillisesti tätä pseudo-käyttäjää käytetään, kun järjestelmän pääkäyttäjä yrittää käyttää tiedostoja, jotka on asennettu toisesta tietokoneesta, joka ei luota alkuperäiseen tietokoneeseen.
  • Ryhmän tunnus- etumerkitön kokonaisluku, joka on samankaltainen kuin käyttäjätunnus ja joka on tarkoitettu osoittamaan yksilöllisiä käyttäjäryhmiä järjestelmässä. Ryhmänumero 0 on varattu juuriryhmälle. Ryhmiä käytetään pääasiassa kätevään tiedostojen hallintaan ja jakamiseen. Kuten käyttäjätunnuksissa, järjestelmä varaa ryhmät (kuten bin) itse järjestelmän käyttöön.
  • AlaGECOS– tiedot, joilla ei ole selkeästi määriteltyä määritystä, heijastavat lisätietoja käyttäjästä: hänen koko nimensä, puhelinnumerot, tiedot asemasta ja osastosta jne. Tämän kentän tietoja voidaan muuttaa komennolla chfn.
  • Kotihakemisto- "paikka" tiedostojärjestelmäpuussa, joka on varattu tietyn käyttäjän tietojen tallentamiseen. Turvallisuussyistä tämän hakemiston pitäisi olla vain hakemiston omistavan käyttäjän käytettävissä. Jos rekisteröinnin yhteydessä ei ole kotihakemistoa, käyttäjätiedot sijoitetaan / hakemistoon. Lisäksi, jos DEFAULT_HOME-vaihtoehto /etc/login.defs-tiedostossa, joka määrittää oletuskotihakemiston, on asetettu arvoon ei, käyttäjän valtuutus/rekisteröinti on mahdotonta.
  • Rekisteröinnin kuori- komentotulkin (tai muun ohjelman) komentotulkki, joka käynnistetään, kun käyttäjä kirjautuu tililleen. Linuxissa käytetään tulkkia

Tiedosto /etc/group – käyttäjäryhmien luominen ja poistaminen

Uuden ryhmän lisääminen Linuxissa tapahtuu komennolla

$groupadd ryhmän_nimi

jossa ryhmän_nimi on uuden ryhmän nimi. Tämä komento luo uuden merkinnän /etc/group-tiedostoon

Tämän tiedoston muoto on sama kuin /etc/passwd. Esimerkki /etc/group-tiedoston sisällöstä:
Kuten näet, jokainen rivi sisältää neljä kenttää:

  1. Ryhmän nimi.
  2. Salattu salasana tai salasanan paikkamerkki.
  3. Ainutlaatuinen ryhmän tunniste.
  4. Luettelo tähän ryhmään kuuluvista käyttäjistä, joka sisältää käyttäjätunnukset pilkuilla erotettuina ilman välilyöntejä.

Mielenkiintoinen asia tässä on salasanakenttä. Ryhmäsalasanan tarkoitus on antaa käyttäjille mahdollisuus liittyä ryhmään newgrp-komennolla. Itse ryhmän salasana asetetaan gpasswd-komennolla, jonka jälkeen se tallennetaan salatussa muodossa /etc/gshadow-tiedostoon. On kuitenkin huomattava, että ryhmien salasanoja käytetään erittäin harvoin. Järjestelmänvalvojien tulee valvoa /etc/passwd- ja /etc/group-tiedostojen sisältöä ja koordinoida niitä keskenään, koska joskus syntyy tilanteita, kun käyttäjä on määritetty ryhmän jäseneksi /etc/passwd-tiedostossa ja samaan aikaan saman käyttäjän /etc/group-tiedostossa.ei ilmoitusta. On huomattava, että tässä tapauksessa käyttäjää pidetään ryhmän jäsenenä, mutta on silti erittäin suositeltavaa, että molempien tiedostojen sisältö on johdonmukainen.

Oletuksena Linux-jakeluissa (paitsi SUSE) käyttäjää luotaessa (apuohjelma useradd) luodaan hänen samanniminen ryhmänsä, johon hänet sisällytetään välittömästi. Tämä on tarkoitettu eliminoimaan mahdollisimman paljon eri käyttäjien mahdollisuutta päästä käsiksi toistensa tiedostoihin.

Voit poistaa käyttäjäryhmän komennolla

$groupdel ryhmän_nimi

Tämä komento poistaa merkinnän tiedostosta /etc/group.

Tiedosto /etc/shadow – salasanojen tallentaminen

Erillistä /etc/shadow-tiedostoa käytetään piilotettujen tai varjosalasanojen tallentamiseen. Pääsy siihen on vain pääkäyttäjän käytettävissä. On myös huomattava, että /etc/shadow- ja /etc/passwd-tiedostot liittyvät käsitteellisesti toisiinsa, mutta järjestelmätasolla niiden välillä ei käytännössä ole vuorovaikutusta. Paitsi että varjossa oleva kirjautumisnimen sisältävä kenttä on otettu passwd:stä. Nuo. Varjoa muokatessa muutokset eivät automaattisesti näy passwd:ssä - nämä tiedostot tallennetaan erikseen ja järjestelmä käsittelee ne toisistaan ​​riippumatta. Tiedoston /etc/shadow muoto on samanlainen kuin /etc/passwd ja jokainen rivi sisältää seuraavat kentät:

  1. Rekisteröinnin nimi.
  2. Salasana on salattu.
  3. Päivämäärä, jolloin salasana viimeksi vaihdettiin.
  4. Päivien vähimmäismäärä salasanan vaihtamisen välillä.
  5. Päivien enimmäismäärä salasanan vaihtamisen välillä.
  6. Päivien lukumäärä ennen salasanan vanhenemisviestin lähettämistä.
  7. Päivien määrä (salasanan vanhenemisen jälkeen), kunnes tili peruutetaan automaattisesti.
  8. Tilin voimassaoloaika.
  9. Varattu kenttä.

/etc/shadow-tiedoston merkintä näyttää tältä:

John:$md5$em5JhGE$a$iQhgS70sakdRaRFyy7Ppj. :14469:0:180:14: : :


On huomattava, että kaksi ensimmäistä kenttää ovat pakollisia. Päivämääräkenttien muoto vastaa 1.1.1970 jälkeen kuluneiden päivien määrää. Kuten jo todettiin, rekisteröintinimikenttä täytetään vastaavalla arvolla /etc/passwd-tiedostosta. Linuxissa seitsemäs kenttä sisältää arvon, joka määrittää, kuinka kauan (päivinä) salasanan vanhenemisen jälkeen tili poistetaan automaattisesti käytöstä. Tämä tulkinta eroaa Solaris- ja HP-UX-järjestelmissä käytetystä. Kahdeksannessa kentässä voit käyttää usermod-komentoa muodossa vvvv-kk-hh asettaaksesi tilin vanhenemispäivän.

Jos löydät virheen, korosta tekstinpätkä ja napsauta Ctrl+Enter.




Ylös