Eszközök a webhelyen


oktatas:linux:felhasználókezelés

< Linux

Felhasználókezelés

  • Szerző: Sallai András
  • Copyright © Sallai András, 2012, 2013, 2017
  • Licenc: GNU Free Documentation License 1.3

Bevezetés

Lesz néhány parancs, amely csak a Debian GNU/Linux rendszerben létezik. Ilyen az adduser vagy addgroup parancs. Ezek könnyebbé teszik egy átlagos felhasználó felvételét, azonban néha speciális felhasználókat kell felvenni (például egy démonhoz tartozó háttérfelhasználó, akinek a nevében fut majd a szolgáltatás), vagy éppen én szeretném a felhasználót speciális módon létrehozni, vagy egyszerűen csak scriptet írok.

adduser

Az adduser csak Debian alapú rendszereken létezik (az rpm alapú rendszereknél egy useradd egy alisa szokott lenni). Egy felhasználót interaktívan vehetünk fel vele. A következő példában egy kati nevű felhasználót veszünk fel:

adduser kati
Adding user `kati' ...
Adding new group `kati' (1002) ...
Adding new user `kati' (1002) with group `kati' ...
Creating home directory `/home/kati' ...
Copying files from `/etc/skel' ...
Adja meg az új UNIX jelszót: 
Írja be újra a UNIX jelszót: 
passwd: a jelszó sikeresen frissült
kati felhasználói információinak cseréje
Add meg az új értéket vagy üss ENTER-t az alapértelmezetthez
	TELJES Név []: Teszt Katalin
	Szobaszám []: 
	Munkahelyi telefon []: 
	Otthoni telefon []: 
	Egyéb []: 
Is the information correct? [Y/n] y

A program megáll először a jelszóbekérésnél, majd az egyéb adatok bekérésénél, a végén rákérdez, hogy az adatok rendben vannak-e. Az y vagy egy Enter lenyomása után a felhasználó létrejött könyvtárával együtt. Sőt a /etc/skel könyvtár tartalmát is megkapta.

Így is használhatjuk:

adduser --home /home/kati --shell /bin/bash --gecos "Teszt Katalin"

Részletek adduser(8) kézikönyvben.

getent

Információt szolgáltat egy adatbázisból. Olyan adatbázisból mint passwd, group

getent passwd joska
joska:x:1001:1001:Nagy József,,,:/home/joska:/bin/bash

A joska csoportról szeretnénk informálódni:

getent group joska

useradd

A useradd parancs minden linuxos rendszer része. Ezzel is felhasználókat tudunk felvenni, de mindent kapcsolókkal kell megadnunk.

useradd -c "Teszt Katalin" -d /home/kati -g users -G info,human,rgazda -k /etc/skel -m -s /bin/bash kati
A useradd kapcsolói
-c megjegyzés
-d home könyvtár
-g elsődleges csoport
-G másodlagos csoport vagy csoportok
-m hozzuk létre a home könyvtárát
-s milyen shellt kapjon
-u UID mi legyen a uid-je
-k honnan másoljuk alapértelmezett fájlokat

chage

Felhasználói jelszó lejárása

A joska felhasználónak mikor jár le a jelszava?

chage -l joska
chage -l joska
Utolsó jelszóváltás					: dec 13, 2011
Jelszó lejár					: soha
Jelszó inaktív					: soha
Hozzáférés lejár						: soha
A jelszómódosítások közti legkevesebb nap		: 0
A jelszómódosítások közti legtöbb nap		: 99999
A jelszó lejárata előtt figyelmeztetés napok száma	: 7

99999 nap körülbelül: ~273 év

A joska felhasználó jelszava járjon le 10 nap múlva

chage -M 10 joska

Mikor járjon le a jelszava?

chage -E "2009-05-31" joska

Inaktív napok után lezárás

Jóskának 10 inaktív nap után lezárjuk a jelszavát.

chage -I 10 joska
chage --inactive 10 joska

Alapértelmezés visszaállítása

Az alábbi kapcsolókat használjuk:

-m 0 A napok minimális száma amíg lejár a jelszó.
-M 99999 A jelszó maximum 99999 nap múlva jár le.
-I -1 (minusz egy) A jelszó sosem lesz inaktív. 
-E -1 (minusz egy) A fiók sosem jár le.
chage -m 0 -M 99999 -I -1 -E -1 joska

Figyelmeztetés

Figyelmeztetés mielőtt a jelszó lejár

  • -W, --warndays WARN_DAYS
chage -W 7 joska

addgroup

Az addgroup valójában egy link az adduser parancsra. Kézikönyve is megegyezik vele.

Csoport felvétele:

addgroup info

groupadd

Csoport felvétele

Ha egy felhasználót felvettünk egy csoportba, a csoport tagsága csak az újbóli belépés után lesz érvényes.

A groupadd parancs minden linuxos rendszerben megtalálható.

Van egy másik csoportok felvételére kitalált parancs, ez az addgroup. A groupadd parancstól csak annyiban különbözik, hogy tájékoztatást ír a képernyőre két sorban a felvétel sikeréről.

Például a „human” nevű csoport felvétele:

groupadd human

vagy:

addgroup human
Adding group `human' (GID 1003) ...
Kész.

gpasswd

A gpasswd parancs a /etc/group állomány adminisztrálására lett megalkotva.

A „kati” nevű felhasználó felvétele a „human” csoportba:

gpasswd -a kati human

A „kati” nevű felhasználó törlése a „human” csoportból:

gpasswd -d kati human

usermod

A mari felhasználó felvétele a human csoportba:

usermod -a -G human mari

A -a hatására hozzáfűzés történik, vagyis a többi csoport megmarad. Ha elhagyjuk a -a kapcsolót, akkor a többi csoport törlődik.

usermod -G human,gazdasag,rgazda mari

A joska felhasználó kitiltása:

usermod --lock --expiredate 1970-01-01 joska
usermod -L -e 1970-01-01 joska

Az expiredate értéke bármi lehet ami régebbi mint az aktuális dátum.

A --lock a jelszó használatot tiltja. Azonban nem tiltja a kulcs alapú azonosítást. Ezért vettük vissza lejárati dátumot.

Magunk is letilthatjuk a felhasználó jelszavas bejelentkezését ha egy „!” („felkiáltó jelet”) teszek a jelszó elé:

joska:!$1$R8Z4PoEr$OSi234nDisere2ERda83dD82DSIK8ls:15407:0:99999:7:::  

A felhasználó számára új bejelentkezési könyvtárat állítunk be:

usermod -d /home/info/joska
usermod --home /home/info/joska
usermod --home /home/tanulok/15z/janos

Alap csoport beállítása:

usermod -g info mari

Shell beállítása:

usermod -s /bin/ksh mari
usermod --shell /bin/ksh kati

A jelszót nem lehet lecserélni adott ideig:

  • passwd -n MIN <login-name>
# passwd -n 10000 janos

id

Ha egy felhasználó belépett saját csoporttagságairól az id parancs segítségével tájékozódhat.

A parancs önmagában kiadva is hatásos:

id

De lássuk paraméterezve.

Az aktuális felhasználó milyen csoportokban van benne:

id -nG

Az adott felhasználó milyen csoportokban van benne:

id -nG mari

vipw

A passwd, illetve a shadow fájl szerkesztése. Tulajdonképpen a vi szövegszerkesztőben nyitja meg a /etc/passwd fájl tartalmát.

Az EDITOR környezeti változóval más szerkesztő is megadható. Például az mcedit használata:

export EDITOR=mcedit; vipw

vigr

A csoportfájl szerkesztése.

Mint a vipw, csak a csoportfájlt szerkesztjük.

A shadow fájl

A régi unixos rendszerekben a jelszavak a passwd fájlban voltak. Ebben a fájlban vannak tárolva a felhasználók egyéb adatai, mint teljes név, szoba, stb. Ezek nyilvános adatok, így mindenki számára olvashatók. A Linuxokon felmerült az igény a jelszavak külön fájlban való elhelyezésére. Így került az /etc/shadow állományba. Az átlagos felhasználó ezeket nem tudja olvasni.

A /etc/shadow fájl tartalmazza a kódolt jelszót. Például

joska:$6$wR8ZPo/p$.XKKmA9YCSrK5UuA0BV03mUrVyqT7OSl24n4DX5dYDNolZDhD.YfE0Fn.PVzaDDGrxMwK6x4jZVTz9/0R8jQs1:15407:0:99999:7:::

  1. Felhasználónév
  2. Jelszó
  3. Utolsó jelszómódosítás és 1970 január 01-óta eltelt napok száma
  4. minimum ennyi napnak kell eltelni az újabb jelszómódosításig
  5. maximum ennyi ideig érvényes a jelszó
  6. Figyelmeztetés ennyi nappal a jelszó lejárat előtt
  7. Ha lejár a jelszó, ennyi nap múlva nem léphet be
  8. 1970 január 01 után ennyi nap letelte után lejár a jelszó

Jelszógenerálás

Néha szükségünk lehet arra, hogy új rendszerünkbe a felhasználóknak jelszót generáljunk.

Egyik erre alkalmas program a makepasswd. Használatához telepíteni kell a makepasswd csomagot:

apt-get install makepasswd

A makepasswd alapértelmezetten 8 és 10 karakter közötti jelszót generál. Kapcsolóval szabályozhatjuk hány karakteres legyen. Például nyolc karakteres:

makepasswd --chars 8

Ha több jelszót szeretnénk generálni, a count kapcsolóval megtehetjük.

makepasswd --chars 18 --count 10

A jelszó kódolt formájának generálása az Apró debianos tippek oldalon található.

Másik jelszógeneráló program:

apt-get install passwdqc

Jelszó generálása:

pwqgen

Felhasználó törlése

userdel

Töröljük a felhasználót:

userdel joska

Töröljük a felhasználót és a könyvtára tartalmát:

userdel -r joska

deluser

deluser --remove-home
deluser --remove-all-files
deluser --backup
deluser --backup-to

Az /etc/deluser.conf segítségével érdemes szabályozni. Részletekért nézzük meg a deluser.conf(5) kézikönyvet.

--backup

Minden állomány backupja, ami a home és a mailspool könyvtárban van. Az eredmény:

/$user.tar.bz2 vagy /$user.tar.gz.
--backup-to

A backup fájl helyét is megadhatjuk

--remove-home

A felhasznál mailspool és home könyvtárának törlése. Ha a --backup meg van adva, akkor backup után a fájlok törlésre kerülnek.

--remove-all-files

Minden fájl törlése a rendszerben, amelynek a felhasználó a birtokosa. Ha a --backup meg van adva, a törlés a backup után történik.

chfn

A finger információ (teljes név, iroda, telefon, stb) módosítása.

# chfn -f János janos
# chfn --full-name "Nagy János" janos
$ getent passwd janos

Kapcsolók:

  • -f, --full-name
  • -o, --office -- irodai szobaszám
  • -p, --office-phone -- irodai telefonszám
  • -h, --home-phone -- otthoni telfonszám

finger

apt install finger
finger joska

Függelék

További parancsok:

  • groupmod
  • chfn
  • chsh
  • finger
  • groupdel
  • grpck
  • newgrp
  • id
  • login
  • su
oktatas/linux/felhasználókezelés.txt · Utolsó módosítás: 2017/10/02 20:22 (külső szerkesztés)