Muokataan sivua Käyttäjien hallinta

Siirry navigaatioon Siirry hakuun
Varoitus: Et ole kirjautunut sisään. IP-osoitteesi näkyy julkisesti kaikille, jos muokkaat. Jos kirjaudut sisään tai luot tunnuksen, muokkauksesi yhdistetään käyttäjänimeesi ja saat paremman käyttökokemuksen.

Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.

Nykyinen versio Oma tekstisi
Rivi 1: Rivi 1:
Linuxissa jokaisella käyttäjällä ('maija', 'matti') on oma [[käyttäjä|käyttäjätunnus]]. Lisäksi on aina vähintään pääkäyttäjän [[root]]-tunnus, ja toisinaan luodaan myös jotain tehtävää varten omia ei-henkilökohtaisia käyttäjätunnuksia ('myynti', 'kanslia'). Järjestelmässä on myös teknisiä tunnuksia mm. erilaisia palveluita varten ('mail', 'wwwdata').
Käyttäjien ja ryhmien hallinta Linuxissa


Jokainen käyttäjä kuuluu yhteen tai useampaan [[ryhmä]]än. Ryhmät vastaavat yleensä reaalimaailman ryhmiä, esimerkiksi jonkin projektin osallistujia tai yrityksen tietyn osaston työntekijöitä. Järjestelmä käsittelee sekä käyttäjiä että ryhmiä [[uid]]-numerotunnuksilla, mutta yleensä käyttäjälle näkyy ''uid''-numeroa vastaava nimi.
Linuxissa jokaisella käyttäjällä on oma tunnus, ja käyttäjä kuuluu yhteen tai useampaan ryhmään. Käyttäjien ja ryhmien hallinta on helppoa, lyhyesti tiivistettynä:


Jokaisella tiedostolla ja hakemistolla on joku käyttäjä omistaja ja täsmälleen yksi ryhmä. Siis yksi käyttäjä voi kuulua moneen ryhmään, yksi tiedosto ei. Tässä artikkelissa ei käsitellä tarkemmin tiedostojen oikeuksia, vaan niistä kerrotaan tarkemmin artikkelissa [[tiedoston oikeudet]].
    * useradd kayttaja
    * userdel kayttaja
    * groupadd ryhma
    * groupdel ryhma
    * gpasswd -a kayttaja ryhma
    * gpasswd -d kayttaja ryhma


Käyttäjätunnuksia ja ryhmiä voi hallita vain pääkäyttäjä. Useimmat seuraavat komennot antavat virheilmoituksen, jos muu kuin root käyttää niitä. Poikkeuksena on mm. [[gpasswd]], jota voivat käyttää myös ryhmän ylläpitäjät, jos sellaisia on määritelty, joidenkin komentojen käyttö omia asetuksia muutettaessa sekä [[sudo]]n tai vastaavan järjestelyn kautta käytettävät [[bash-skriptaus|skriptit]].
== Yleistä ==


Jos käytössä on [[NIS]], [[NFS]], [[Samba]] tms., tämä järjestely on huomioitava käyttäjähallinnassa. Alla kuvatut komennot eivät silloin välttämättä toimi odotetulla tavalla.
Linuxissa jokaisella käyttäjällä ('maija', 'matti') on oma käyttäjätunnus. Lisäksi on aina vähintään pääkäyttäjän root -tunnus, ja toisinaan luodaan myös jotain tehtävää varten omia ei-henkilökohtaisia käyttäjätunnuksia ('myynti', 'kanslia'). Järjestelmässä on myös teknisiä tunnuksia mm. erilaisia palveluita varten ('mail', 'wwwdata').


== Käyttäjien luonti ja poisto ==
Jokainen käyttäjä kuuluu yhteen tai useampaan ryhmään. Ryhmät vastaavat yleensä reaalimaailman ryhmiä, esimerkiksi jonkin projektin osallistujia tai yrityksen tietyn osaston työntekijöitä.


Käyttäjätunnus lisätään komennolla [[useradd]]. Tämän jälkeen tunnukselle asetetaan [[salasana]] komennolla [[passwd]]. Käytännössä kannattaa myös lisätä [[finger]]-tietoihin käyttäjän nimi komennolla [[chfn]]. Komento [[adduser]] kysyy myös salasanan ja finger-tiedot. Sille voi antaa valitsimen <tt>--system</tt>, jolloin käytetään järjestelmäkäyttäjille (ei-ihmisille) sopivia oletuksia.
Jokaisella tiedostolla ja hakemistolla on joku käyttäjä omistaja ja täsmälleen yksi ryhmä. Siis yksi käyttäjä voi kuulua moneen ryhmään, yksi tiedosto ei. Tämä kirjoitus ei selitä tiedostojen oikeuksia, tarvittaessa lue [http://www.flug.fi/ohjeita/oikeudet.html Opi Linux ja tiedostojen oikeudet Akun ja Iineksen kanssa].


<tt>Useradd</tt> on äärimmäisen yksinkertainen: <tt>useradd ''tunnus''</tt> lisää käyttäjätunnuksen "tunnus". Jos komento onnistuu, se ei tulosta mitään. Tunnuksen on hyvä olla korkeintaan 8 merkkiä pitkä ja koostua pienistä kirjaimista a-z. Myös numeroita käytetään yleisesti, paitsi ensimmäisenä merkkinä. Muita merkkejä ei yleensä kannata käyttää; esimerkiksi kirjaimet 'ä' ja 'ö' saattavat aiheuttaa suuriakin ongelmia.
Käyttäjätunnuksia ja ryhmiä voi hallita vain root. Seuraavat komennot antavat virheilmoituksen, jos muu kuin root käyttää niitä.


<tt>useradd</tt> ja <tt>adduser</tt> luovat haluttaessa [[kotihakemisto]]t ja kopioivat sinne tiedostot hakemistosta <tt>[[Skel|/etc/skel]]</tt>, muuttaen omistajaksi uuden tunnuksen.
== Käyttäjien luonti ja poisto ==


<tt>passwd ''tunnus''</tt> kysyy salasanan juuri luodulle käyttäjälle, kirjoitusvirheiden varalta kahteen kertaan. chfn tunnus kysyy ns. finger-tiedot, jotka näet komennolla <tt>finger ''tunnus''</tt>. Nimi kannattaa aina lisätä heti luonnin jälkeen, jotta vielä ensi vuonna tietää kenen tunnus "vpvirt" olikaan.
Käyttäjätunnus lisätään useradd-komennolla. Tämän jälkeen tunnukselle asetetaan salasana passwd-komennolla. Käytännössä kannattaa myös lisätä finger-tietoihin käyttäjän nimi chfn-komennolla.


Käyttäjien poisto tapahtuu komennolla [[userdel]], joko <tt>userdel ''tunnus''</tt> tai <tt>userdel -r ''tunnus''</tt>. Viimeksimainittu poistaa myös kotihakemiston (ja sähköpostitiedoston). Käyttäjän omistamia tiedostoja voi jäädä muuallekin &ndash; ne löytyvät ennen käyttäjän poistoa komennolla <tt>[[find]] / -user ''tunnus''</tt>. [[deluser]] huolehtii haluttaessa tästä. Jos käyttäjä ehdittiin jo poistaa, pitää komennolla <tt>find / -nouser</tt> etsiä tiedostot joilla ei ole enää omistajaa. Tämänkin jälkeen käyttäjän tiedostoja on esimerkiksi [[varmuuskopiointi|varmuuskopioissa]].
Useradd on äärimmäisen yksinkertainen: useradd tunnus lisää käyttäjätunnuksen "tunnus". Jos komento onnistuu, se ei tulosta mitään. Tunnuksen on hyvä olla korkeintaan 8 merkkiä pitkä ja koostua pienistä kirjaimista a-z. Numerot ja väliviiva ovat myös "turvallisia" merkkejä, mutta esimerkiksi kirjaimet 'ä' ja 'ö' ovat vältettäviä.


Ennen käyttäjän ja käyttäjän tiedostojen poistamista pitää varmistua siitä, etteivät muut käyttäjät tarvitse käyttäjän omistamia tiedostoja. Käytännössä tunnus kannattaa ensisijaisesti poistaa käytöstä lukitsemalla tunnus. Komento <tt>passwd -l ''tunnus''</tt> estää kirjautumisen salasanalla. Kirjautuminen muuta kautta (varsinkin [[SSH]]:n avaimet) saattaa vielä olla mahdollista. Komentotulkin vaihtaminen sellaiseen, joka ei löydy tiedostosta /etc/[[shells]], auttaa joidenkin palvelinten osalta. Tämä onnistuu esimerkiksi komennolla <tt>[[chsh]] -s /bin/[[false]] ''tunnus''</tt>
passwd tunnus kysyy salasanan juuri luodulle käyttäjälle, kirjoitusvirheiden varalta kahteen kertaan. chfn tunnus kysyy ns. finger-tiedot, jotka näet komennolla finger tunnus. Nimi kannattaa aina lisätä heti luonnin jälkeen, jotta vielä ensi vuonna tietää kenen tunnus "vpvirt" olikaan.
 
Käyttäjien poisto tapahtuu userdel-komennolla, joko userdel tunnus tai userdel -r tunnus. Viimeksimainittu poistaa myös kotihakemiston. Silti on mahdollista että käyttäjän omistamia tiedostoja jää jonnekin - ne löytyvät ennen käyttäjän poistoa komennolla find / -user tunnus. Jos käyttäjä ehdittiin jo poistaa, pitää komennolla find / -nouser etsiä tiedostot joilla ei ole enää omistajaa.


== Ryhmien luonti ja poisto ==
== Ryhmien luonti ja poisto ==


Tämä(kin) on helppoa:<tt> [[groupadd]] ''ryhma''</tt> lisää ryhmän ja <tt>[[groupdel]] ''ryhma''</tt> poistaa ryhmän. [[addgroup]] ja [[delgroup]] toimivat vastaavasti, komennolle <tt>addgroup</tt> voi lisäksi antaa valitsimen --system, luotaessa ryhmiä ohjelmien käyttöön.  
Tämä(kin) on helppoa: groupadd ryhma lisää ryhmän ja groupadd ryhma poistaa ryhmän.


Jos ennen ryhmän poistamista tahtoo etsiä sille kuuluvat tiedostot, se onnistuu sanomalla <tt>find / -group ''ryhma''</tt>. Jos tämä unohtui, voi sanoa <tt>find / -nogroup</tt> myöhemmin hakeakseen tiedostot joilta puuttuu ryhmä.
Jos tahtoo ensin etsiä ryhmälle kuuluvat tiedostot, se onnistuu sanomalla find / -group ryhma. Jos tämä unohtui, voi sanoa find / -nogroup myöhemmin hakeakseen tiedostot joilta puuttuu ryhmä.


== Käyttäjät ryhmiin ==
== Käyttäjät ryhmiin ==


Myöskään käyttäjien lisääminen ja poistaminen ryhmistä ei rasita paljoa: <tt>[[gpasswd]] -a ''tunnus'' ''ryhma''</tt> lisää ryhmään ja <tt>gpasswd -d ''tunnus'' ''ryhma''</tt> poistaa ryhmästä.
Myöskään käyttäjien lisääminen ja poistaminen ryhmistä ei rasita paljoa: gpasswd -a tunnus ryhma lisää ryhmään ja gpasswd -d tunnus ryhma poistaa ryhmästä.


Ylläpitäjä voi delegoida ryhmän hallinnan jollekin ryhmän jäsenistä. <tt>gpasswd -A ''tunnus'' ''ryhma''</tt> tekee tunnuksesta "tunnus" ryhmän ylläpitäjän, joka voi käyttää <tt>gpasswd</tt>-komentoa liittääkseen tai poistaakseen käyttäjiä ryhmästä. Ryhmän ylläpitäjä voi antaa ylläpito-oikeuden eteenpäin samalla <tt>gpasswd -A</tt> -komennolla. Ryhmän ylläpito-oikeuksia ei voi suoraan poistaa, mutta toinen ylläpitäjä voi poistaa ylläpitäjän ryhmästä ja liittää takaisin, jolloin ylläpito-oikeus poistuu.
Ylläpitäjä voi delegoida ryhmän hallinnan jollekin ryhmän jäsenistä. gpasswd -A tunnus ryhma tekee tunnuksesta "tunnus" ryhmän ylläpitäjän, joka voi käyttää gpasswd-komentoa liittääkseen tai poistaakseen käyttäjiä ryhmästä. Ryhmän ylläpitäjä voi antaa ylläpito-oikeuden eteenpäin samalla gpasswd -A -komennolla. Ryhmän ylläpito-oikeuksia ei voi suoraan poistaa, mutta toinen ylläpitäjä voi poistaa ylläpitäjän ryhmästä ja liittää takaisin, jolloin ylläpito-oikeus poistuu.


Joissakin [[jakelu]]issa jokaista käyttäjää vastaa henkilökohtainen ryhmä. Tämä on tavallaan kierto sille Linuxin rajoitukselle, että jokaisella tiedostolla pitää olla jokin ryhmä, vaikka se olisi tarkoitettukin vain yhden tunnuksen käyttöön. Käytäntöä voi muuttaa tiedostossa <tt>/etc/default/useradd</tt>, <tt>/etc/adduser.conf</tt> tai vastaavassa. Samalla on määriteltävä korvaava oletusryhmä (usein "users", [[GID|gid]] 100).
Fedora Core -linuxjakelussa jokaista käyttäjää vastaa henkilökohtainen ryhmä. Tämä on tavallaan kierto sille Linuxin rajoitukselle, että jokaisella tiedostolla pitää olla jokin ryhmä, vaikka se olisi tarkoitettukin vain yhden tunnuksen käyttöön.


== Sekalaisia huomioita ==
== Sekalaisia huomioita ==


Todellisuudessa tiedoston omistaja tallennetaan numerona, ja tiedostosta <tt>[[passwd-tiedosto|/etc/passwd]]</tt> katsotaan numeroa vastaava tunnus. Jos viimeksi luodun käyttäjän poistaa ja luo uuden, saa tämä uusi käyttäjä omistukseensa poistetun käyttäjän tiedostot. Ole siis varovainen! Omistajan tapaan myös tiedoston ryhmä on tallennettu numerona.
Todellisuudessa tiedoston omistaja tallennetaan numerona, ja tiedostosta /etc/passwd katsotaan numeroa vastaava tunnus. Jos viimeksi luodun käyttäjän poistaa ja luo uuden, saa tämä uusi käyttäjä omistukseensa poistetun käyttäjän tiedostot. Ole siis varovainen! Omistajan tapaan myös tiedoston ryhmä on tallennettu numerona.
 
Käyttäjätietoja on mahdollista hallita myös muokkaamalla suoraan tiedostoja <tt>[[passwd-tiedosto|/etc/passwd]]</tt> (käyttäjät), <tt>[[group-tiedosto|/etc/group]]</tt> (ryhmät) ja <tt>[[shadow|/etc/shadow]]</tt> (salasanat). Tämä on joskus nopeampaa, mutta ei suositeltavaa, etenkään jos ylläpitäjiä on useampia. Tiedostoja voi myös silloin muokata komennoilla [[vipw]] ja [[vigr]], jotka huolehtivat lukituksista.
 
== Lyhyt tiivistelmä ==
Lyhyt tiivistelmä tärkeimmistä komennoista:
 
    * useradd kayttaja
    * userdel kayttaja
    * groupadd ryhma
    * groupdel ryhma
    * gpasswd -a kayttaja ryhma
    * gpasswd -d kayttaja ryhma
 
[[Debian GNU/Linux|Debian]]issa on käytössä myös vastaavat, hieman monipuolisemmat komennot:
 
    * adduser käyttäjä
    * deluser käyttäjä
    * addgroup ryhmä
    * delgroup ryhmä
    * adduser käyttäjä ryhmä
    * deluser käyttäjä ryhmä
 
==Katso myös==
*[[Käyttäjä]]
*[[Ryhmä]]
*[[Salasana]]
*[[Kotihakemisto]]


[[Luokka:Käyttäjät ja ryhmät]]
Käyttäjätietoja on mahdollista hallita myös suoraan tiedostoja /etc/passwd (käyttäjät), /etc/group (ryhmät) ja /etc/shadow (salasanat). Tämä on joskus nopeampaa, mutta ei suositeltavaa jos ylläpitäjiä on useampia.
[[Luokka:Ohjeet]]
{{Malline:Palvelin}}
Wikin materiaali on kaikkien vapaasti käytettävissä Creative Commons 3.0 - nimi mainittava -lisenssin alaisuudessa. TEKIJÄNOIKEUDEN ALAISEN MATERIAALIN KÄYTTÄMINEN ILMAN LUPAA ON EHDOTTOMASTI KIELLETTYÄ!

Muokataksesi tätä sivua vastaa alla olevaan kysymykseen (lisätietoja):

Peruuta Muokkausohjeet (avautuu uuteen ikkunaan)

Tällä sivulla käytetyt mallineet: