A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
Előző változat mindkét oldalon Előző változat | Előző változat Következő változat Következő változat mindkét oldalon | ||
oktatas:linux:felhasznalokezeles [2019/01/14 11:08] |
oktatas:linux:felhasznalokezeles [2021/02/10 06:50] admin [Jelszógenerálás] |
||
---|---|---|---|
Sor 1: | Sor 1: | ||
+ | [[oktatas:linux|< Linux]] | ||
+ | |||
+ | ====== Felhasználókezelés ====== | ||
+ | |||
+ | * **Szerző:** Sallai András | ||
+ | * Copyright (c) Sallai András, 2012, 2013, 2017, 2020 | ||
+ | * Licenc: GNU Free Documentation License 1.3 | ||
+ | * Web: http://szit.hu | ||
+ | |||
+ | ===== 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. | ||
+ | |||
+ | ===== A felhasználók adatai ===== | ||
+ | |||
+ | A felhasználók és csoportok adatai három helyen tárolódnak: | ||
+ | * /etc/passwd | ||
+ | * /etc/shadow | ||
+ | * /etc/group | ||
+ | |||
+ | |||
+ | A passwd fájlban kerül tárolásra a felhasználó neve és GECOS adatok. | ||
+ | A GECOS mezőben a következő tulajdonságokat tárolhatjuk: | ||
+ | * teljes név | ||
+ | * szoba száma, vagy kapcsolattartó személy | ||
+ | * hivatali telefon | ||
+ | * otthoni telefon | ||
+ | * egyéb információk (fax, más e-mail, sorszám, foglalkozás) | ||
+ | |||
+ | A GECOS adatokat vesszővel szeparálva adjuk meg. A felhasználók ha | ||
+ | engedélyezve számukra, a chfn paranccsal változtathatják meg ezeket | ||
+ | az információkat. | ||
+ | |||
+ | A Bell laboratóriumban, a korai Unix rendszerek közül néhány GECOS | ||
+ | gépeket használt a nyomtatáshoz és más szolgáltatásokhoz; így | ||
+ | ezt az információt is hozzáadták a felhasználói információkhoz. | ||
+ | |||
+ | A GECOS lehet General Comprehensive Operating System (GCOS, **[ˈdʒiːkoʊs]**, | ||
+ | vagy eredetileg: GECOS, General Electric Comprehensive Operating Supervisor. | ||
+ | Egy operációs rendszer család, amely 36-bit GE/Honeywell nagygépeken volt | ||
+ | használatos. Az eredeti változatát a General Electric készítette 1962-ben. | ||
+ | Ma is használják, GCOS 7 és GCOS 8 verziók az aktuálisak. | ||
+ | |||
+ | ===== A felhasználók kezelése ===== | ||
+ | |||
+ | Felhasználót két paranccsal vehetünk fel: | ||
+ | * adduser | ||
+ | * useradd | ||
+ | |||
+ | A useradd egy natív ELF bináris, minden linuxos rendszeren jelen van. | ||
+ | Az adduser egy Perl script, ami használja a useradd parancsot. | ||
+ | |||
+ | A useradd egy alacsony szintű eszköz a felhasználók felvételéhez, | ||
+ | szemben az adduser script, amely egy magasabb szintű, interaktív | ||
+ | felhasználókezelést tesz lehetővé. | ||
+ | |||
+ | Az adduser a useradd program mellett használja a chfn és passwd | ||
+ | parancsokat is. | ||
+ | |||
+ | Mivel az adduser így többféle információit is interaktívan kér be, | ||
+ | ezért nem alkalmas parancsállományokban való használatra. Parancs | ||
+ | állományokban való használatra a useradd parancs alkalmas. | ||
+ | |||
+ | Az adduser parancs működése Linux terjesztésenként változik. | ||
+ | Debian és Debian alapú rendszereken bekéri a felhasználó | ||
+ | jelszavát, és a gecos információkat. | ||
+ | |||
+ | ===== adduser ===== | ||
+ | Az adduser csak Debian alapú rendszereken létezik (az rpm alapú rendszereknél | ||
+ | a useradd aliasa 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: | ||
+ | |||
+ | <code bash> | ||
+ | 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 | ||
+ | </code> | ||
+ | |||
+ | 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. | ||
+ | |||
+ | Az adduser beállításai: | ||
+ | /etc/adduser.conf | ||
+ | |||
+ | Egy felhasználó betehető az adduser paranccsal egy **csoportba**: | ||
+ | adduser kati info | ||
+ | A kati felhasználót az info csoportba tesszük; a felhasználónak | ||
+ | már léteznie kell. | ||
+ | |||
+ | |||
+ | ===== getent ===== | ||
+ | |||
+ | Információt szolgáltat egy adatbázisból. Olyan adatbázisból mint passwd, group | ||
+ | |||
+ | <code bash> | ||
+ | getent passwd joska | ||
+ | </code> | ||
+ | |||
+ | |||
+ | <code> | ||
+ | joska:x:1001:1001:Nagy József,,,:/home/joska:/bin/bash | ||
+ | </code> | ||
+ | |||
+ | |||
+ | A informatika csoportról szeretnénk informálódni: | ||
+ | <code bash> | ||
+ | getent group informatika | ||
+ | </code> | ||
+ | |||
+ | ===== useradd ===== | ||
+ | A useradd parancs minden linuxos rendszer része. | ||
+ | Ezzel is felhasználókat tudunk felvenni, de mindent kapcsolókkal kell megadnunk. | ||
+ | |||
+ | <code bash> | ||
+ | useradd -c "Teszt Katalin" -d /home/kati -g users -G info,human,rgazda -k /etc/skel -m -s /bin/bash kati | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ^ 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 ===== | ||
+ | |||
+ | A chage parancs segítségével szabályozhatjuk egy-egy felhasználónak mikor jár le a jelszava. | ||
+ | |||
+ | ==== A joska felhasználónak mikor jár le a jelszava? ==== | ||
+ | chage -l joska | ||
+ | |||
+ | |||
+ | |||
+ | <code bash> | ||
+ | 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 na : 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 | ||
+ | </code> | ||
+ | |||
+ | 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 hozzáférése? ==== | ||
+ | |||
+ | 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: | ||
+ | |||
+ | <code> | ||
+ | -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. | ||
+ | </code> | ||
+ | |||
+ | <code bash> | ||
+ | chage -m 0 -M 99999 -I -1 -E -1 joska | ||
+ | </code> | ||
+ | |||
+ | ==== Figyelmeztetés ==== | ||
+ | |||
+ | Figyelmeztetés mielőtt a jelszó lejár | ||
+ | |||
+ | * <nowiki>-W, --warndays WARN_DAYS</nowiki> | ||
+ | |||
+ | chage -W 7 joska | ||
+ | ==== Jelszó változtatás ==== | ||
+ | |||
+ | A jelszavát nem változtathatja meg: | ||
+ | chage -m 10000 mari | ||
+ | |||
+ | Valójában 10 ezer napig nem változtathatja meg. De azért az elég messze van. | ||
+ | |||
+ | Ugyanezt a passwd paranccsal is beállíthatjuk. | ||
+ | |||
+ | Belépés után kötelező megváltoztatni: | ||
+ | chage -d 0 janos | ||
+ | |||
+ | ===== 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: | ||
+ | |||
+ | <code bash> | ||
+ | addgroup human | ||
+ | Adding group `human' (GID 1003) ... | ||
+ | Kész. | ||
+ | </code> | ||
+ | |||
+ | ===== 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 ===== | ||
+ | |||
+ | Teljesnév beállítása: | ||
+ | usermod -c "Nagy János" janos | ||
+ | |||
+ | 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 <nowiki>--lock</nowiki> 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 joska | ||
+ | |||
+ | usermod --home /home/info/joska joska | ||
+ | |||
+ | usermod --home /home/tanulok/15z/janos 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 | ||
+ | |||
+ | |||
+ | |||
+ | Felhasználó kitiltása: | ||
+ | usermod -L mari | ||
+ | usermod --lock mari | ||
+ | Felhasználó engedése: | ||
+ | usermod -U mari | ||
+ | usermod --unlock mari | ||
+ | |||
+ | Felhasználó kitiltása a másként: | ||
+ | usermod -s /usr/sbin/nologin mari | ||
+ | usermod -s /bin/false mari | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== 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 | ||
+ | Lehetséges kimenet: | ||
+ | <code> | ||
+ | $ id -nG | ||
+ | mari tanulok 15z | ||
+ | </code> | ||
+ | |||
+ | |||
+ | |||
+ | Az adott felhasználó milyen csoportokban van benne: | ||
+ | id -nG mari | ||
+ | |||
+ | Lehetséges kimenet: | ||
+ | <code> | ||
+ | $ id -nG mari | ||
+ | mari tanulok 15z | ||
+ | </code> | ||
+ | ===== groups ===== | ||
+ | |||
+ | Az aktuális felhasználó, milyen csoportokban van benne: | ||
+ | groups | ||
+ | |||
+ | Megadott felhasználó milyen csoportokban van benne: | ||
+ | groups mari | ||
+ | |||
+ | ===== members ===== | ||
+ | |||
+ | apt install members | ||
+ | |||
+ | Adott csoportban, milyen felhasználók vannak: | ||
+ | members informatika | ||
+ | |||
+ | Lehetséges kimenet: | ||
+ | mari bela dani lali | ||
+ | ===== 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 | ||
+ | |||
+ | <code> | ||
+ | joska:$6$wR8ZPo/p$.XKKmA9YCSrK5UuA0BV03mUrVyqT7OSl24n4DX5dYDNolZDhD.YfE0Fn.PVzaDDGrxMwK6x4jZVTz9/0R8jQs1:15407:0:99999:7::: | ||
+ | </code> | ||
+ | |||
+ | {{:oktatas:linux:shadowfile.png|}} | ||
+ | |||
+ | - Felhasználónév | ||
+ | - Jelszó | ||
+ | - Utolsó jelszómódosítás és 1970 január 01-óta eltelt napok száma | ||
+ | - minimum ennyi napnak kell eltelni az újabb jelszómódosításig | ||
+ | - maximum ennyi ideig érvényes a jelszó | ||
+ | - Figyelmeztetés ennyi nappal a jelszó lejárat előtt | ||
+ | - Ha lejár a jelszó, ennyi nap múlva nem léphet be | ||
+ | - 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 [[oktatas:linux:apró_debianos_tippek#kódolók|Apró debianos tippek]] oldalon található. | ||
+ | |||
+ | |||
+ | Másik jelszó generáló program: | ||
+ | apt-get install passwdqc | ||
+ | |||
+ | Jelszó generálása: | ||
+ | pwqgen | ||
+ | |||
+ | |||
+ | Újabb: | ||
+ | apt install whois | ||
+ | |||
+ | /usr/bin/mkpasswd | ||
+ | ===== 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. | ||
+ | |||
+ | <code> | ||
+ | --backup | ||
+ | </code> | ||
+ | |||
+ | Minden állomány backupja, ami a home és a mailspool könyvtárban van. | ||
+ | Az eredmény: | ||
+ | <code> | ||
+ | /$user.tar.bz2 vagy /$user.tar.gz. | ||
+ | </code> | ||
+ | |||
+ | <code> | ||
+ | --backup-to | ||
+ | </code> | ||
+ | A backup fájl helyét is megadhatjuk | ||
+ | |||
+ | <code> | ||
+ | --remove-home | ||
+ | </code> | ||
+ | A felhasznál mailspool és home könyvtárának törlése. | ||
+ | Ha a <nowiki>--backup</nowiki> meg van adva, akkor backup után a fájlok törlésre kerülnek. | ||
+ | |||
+ | <code> | ||
+ | --remove-all-files | ||
+ | </code> | ||
+ | Minden fájl törlése a rendszerben, amelynek a felhasználó a birtokosa. | ||
+ | Ha a <nowiki>--backup</nowiki> 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: | ||
+ | * <nowiki>-f, --full-name FULL_NAME -- Teljes név</nowiki> | ||
+ | * <nowiki>-o, --other OTHER_INFO -- más információ</nowiki> | ||
+ | * <nowiki>-h, --home-phone HOME_PHONE -- otthoni telefonszám</nowiki> | ||
+ | * <nowiki>-r, --room ROOM_NUMBER -- szoba száma</nowiki> | ||
+ | * <nowiki>-w, --work-phone WORK_PHONE-- munka telefonszám</nowiki> | ||
+ | * <nowiki>-R, --root CHROOT_DIR -- munka telefonszám</nowiki> | ||
+ | |||
+ | A gecos információk bekérhetők interaktív módon a következő paranccsal: | ||
+ | chfn janos | ||
+ | |||
+ | <code> | ||
+ | root@iskolazo:~# chfn janos | ||
+ | janos felhasználói információinak cseréje | ||
+ | Add meg az új értéket vagy üss ENTER-t az alapértelmezetthez | ||
+ | TELJES Név [Nagy János]: Peres János | ||
+ | Szobaszám []: 304 | ||
+ | Munkahelyi telefon []: 1154 | ||
+ | Otthoni telefon []: | ||
+ | Egyéb []: | ||
+ | chfn: name with non-ASCII characters: 'Peres János' | ||
+ | </code> | ||
+ | |||
+ | A felhasználó saját maga is megváltoztathatja az engedélyezett | ||
+ | értékeket. | ||
+ | |||
+ | Hogy a felhasználó mit változtathat meg a chfn paranccsal a /etc/login.defs | ||
+ | fájlban szabályozhatjuk. | ||
+ | CHFN_RESTRICT frwh | ||
+ | |||
+ | Ha nincs definiálva semmit nem változtathatunk meg. | ||
+ | A yes = "rwh", a no = "frwh". | ||
+ | |||
+ | Ha nem adunk meg paramétert, akkor interaktív módban indul a | ||
+ | chfn, és bekéri az engedélyezett értékeket. | ||
+ | chfn | ||
+ | |||
+ | |||
+ | ==== finger ==== | ||
+ | |||
+ | apt install finger | ||
+ | |||
+ | |||
+ | finger joska | ||
+ | ===== passwd ===== | ||
+ | |||
+ | Használat például: | ||
+ | <code> | ||
+ | passwd \ | ||
+ | -x <MAX_D> \ | ||
+ | -w <WARN_D> \ | ||
+ | -i <INACTIVE_D> | ||
+ | felhasználó | ||
+ | </code> | ||
+ | |||
+ | A passwd parancs a jelszó beállítására használható. | ||
+ | |||
+ | # passwd | ||
+ | |||
+ | A rendszergazda mások jelszavát is beállíthatja: | ||
+ | # passwd janos | ||
+ | |||
+ | A felhasználó kizárása: | ||
+ | # passwd -l janos | ||
+ | |||
+ | A felhasználó újból engedése: | ||
+ | # passwd -u janos | ||
+ | |||
+ | Jelszó lejárat előtt hány nappal kapjon a felhasználó figyelmeztetést: | ||
+ | # passwd -w 7 janos | ||
+ | A felhasználó jelszavának lejárata előtt figyelmeztetés 7 nappal. | ||
+ | |||
+ | |||
+ | A felhasználó 7 napig nem változtathatja meg a jelszót: | ||
+ | # passwd -n 7 | ||
+ | |||
+ | |||
+ | Jelszóbeállítások lekérdezése: | ||
+ | # passwd -S | ||
+ | # passwd -S janos | ||
+ | |||
+ | A felhasználó jelszavának azonnali "lejáratása": | ||
+ | # passwd -e janos | ||
+ | |||
+ | Adott felhasználó jelszavának törlése: | ||
+ | # passwd -d janos | ||
+ | |||
+ | |||
+ | További kapcsolók: | ||
+ | # passwd -h | ||
+ | |||
+ | A jelszót nem lehet lecserélni adott ideig, szintaktika: | ||
+ | |||
+ | * passwd -n MIN <login-name> | ||
+ | |||
+ | Példa: | ||
+ | # passwd -n 10000 janos | ||
+ | |||
+ | ===== login beállítások ===== | ||
+ | |||
+ | Az /etc/login.defs könyvtárban a felhasználók számára beállítható néhány adottság. | ||
+ | Ilyen a felhasználók levelei hol tárolódjanak. | ||
+ | MAIL_DIR /var/mail | ||
+ | |||
+ | A sikertelen bejelentkezések naplózása a /var/log/faillog fájlba. | ||
+ | FAILLOG_ENAB yes | ||
+ | |||
+ | Az ismeretlen felhasználónevek naplózása sikertelen bejelentkezés esetén. | ||
+ | LOG_UNKFAIL_ENAB no | ||
+ | |||
+ | A sikeres bejelentkezések naplózása: | ||
+ | LOG_OK_LOGINS no | ||
+ | |||
+ | A su tevékenységek naplózása a syslog naplóba: | ||
+ | SYSLOG_SU_ENAB yes | ||
+ | SYSLOG_SG_ENAB yes | ||
+ | |||
+ | A su aktívitás külön naplózása: | ||
+ | SULOG_FILE /var/log/sulog | ||
+ | |||
+ | Alapértelmezett útvonal a rendszergazda számára: | ||
+ | ENV_SUPATH | ||
+ | |||
+ | Alapértelmezett útvonal a felhasználók számára: | ||
+ | ENV_PATH | ||
+ | |||
+ | Jelszavak kontrollálása. Alapértelmezésként, | ||
+ | mikor jár le, mikor változtathatja meg, mikor legyen | ||
+ | figyelmeztetés. | ||
+ | PASS_MAX_DAYS 99999 | ||
+ | PASS_MIN_DAYS 0 | ||
+ | PASS_WARN_AGE 7 | ||
+ | |||
+ | Felhasználók minimális azonosítója useradd esetén: | ||
+ | UID_MIN 1000 | ||
+ | UID_MAX 60000 | ||
+ | |||
+ | |||
+ | Minimális csoportazonosítók: | ||
+ | GID_MIN 1000 | ||
+ | GID_MAX 60000 | ||
+ | |||
+ | A bejelentkezés visszautasítása ennyi sikertelen próbálkozás után: | ||
+ | LOGIN_RETRIES 5 | ||
+ | |||
+ | A maximális sikertelen bejelentkezések után ennyi ideig tiltva: | ||
+ | LOGIN_TIMEOUT 60 | ||
+ | |||
+ | |||
+ | |||
+ | További lehetőségek a /etc/login.defs állományban is találhatók, | ||
+ | vagy nézzük meg az idevonatkozó kézikönyvet: | ||
+ | man login.defs | ||
+ | |||
+ | A felhasználók a chfn paranccsal milyen értékeket cserélhetnek: | ||
+ | CHFN_RESTRICT rwh | ||
+ | |||
+ | * f - full name | ||
+ | * r - room number | ||
+ | * w - work phone | ||
+ | * h - home phone | ||
+ | |||
+ | Ha a felhasználó nem tud belépni a könyvtárába, akkor legyen egy alapértelmezett könyvtár: | ||
+ | DEFAULT_HOME yes | ||
+ | |||
+ | A felhasználó törlésekor a következő parancs fusson le: | ||
+ | USERDEL_CMD /usr/local/bin/sajtScript.sh | ||
+ | |||
+ | Felhasználónévvel azonos csoport létrehozása useradd, törlése userdel esetén: | ||
+ | USERGROUPS_ENAB yes | ||
+ | |||
+ | Az aktuális shell előtt milyen parancs fusson le: | ||
+ | FAKE_SHELL /bin/fakeshell | ||
+ | |||
+ | Azonosítás algoritmusa: | ||
+ | ENCRYPT_METHOD SHA512 | ||
+ | |||
+ | ===== Felhasználócsere ===== | ||
+ | |||
+ | A felhasználót a su paranccsal cserélhetünk. Például mari felhasználóvá válhatunk: | ||
+ | su mari | ||
+ | |||
+ | Ha kötőjelet is használok, akkor a mari felhasználó teljes környezetét kapom: | ||
+ | su - mari | ||
+ | |||
+ | Ehhez a művelethez persze tudni kell a mari felhasználó jelszavát, vagy | ||
+ | rendszergazdaként kell végrehajtani. | ||
+ | |||
+ | Egy csoportot is felvehetünk a sg paranccsal. Például az info csoport felvétele: | ||
+ | |||
+ | sg info | ||
+ | |||
+ | ===== A skel könyvtár ===== | ||
+ | |||
+ | |||
+ | ===== Függelék ===== | ||
+ | |||
+ | ==== Parancsok gyűjteménye ==== | ||
+ | |||
+ | * groupmod | ||
+ | * chfn | ||
+ | * chsh | ||
+ | * finger | ||
+ | * groupdel | ||
+ | * grpck | ||
+ | * newgrp | ||
+ | * id | ||
+ | * login | ||
+ | * su | ||
+ | |||
+ | ==== Felhasználó felvétele ==== | ||
+ | |||
+ | <code> | ||
+ | useradd -m mari | ||
+ | passwd mari | ||
+ | chfn mari | ||
+ | </code> | ||
+ | |||
+ | Felhasználó felvétele jelszó megadással: | ||
+ | <code> | ||
+ | useradd -d /home/mernokok/gaz/mari -s /bin/bash -G mernokok,gaz -m pali \ | ||
+ | --password=$(perl -e 'print crypt("titok","so")') | ||
+ | </code> | ||
+ | |||
+ | A sóból csak 2 karakter lesz figyelembe véve. | ||
+ | |||
+ | |||
+ | <code> | ||
+ | perl -e 'print crypt("titok","so")' | ||
+ | soGxgYrIU3kw6 | ||
+ | </code> | ||
+ | |||
+ | <code> | ||
+ | useradd -d /home/mernokok/gaz/mari -s /bin/bash -G mernokok,gaz -m pali \ | ||
+ | --password=soGxgYrIU3kw6 | ||
+ | </code> | ||
+ | |||
+ | A jelszó legyártáshoz ez is megfelelő: | ||
+ | openssl passwd -1 titok | ||
+ | |||
+ | SHA512-s: | ||
+ | openssl passwd -6 titok | ||
+ | |||
+ | ==== Csoport tagjainak törlése ==== | ||
+ | |||
+ | <code> | ||
+ | #!/bin/bash | ||
+ | |||
+ | # Függőség: | ||
+ | # apt install members | ||
+ | |||
+ | tomb=($(members csoport1)) | ||
+ | for i in ${tomb[*]} | ||
+ | do | ||
+ | echo $i | ||
+ | done | ||
+ | |||
+ | </code> | ||
+ | |||
+ | |||
+ | ===== Forrás ===== | ||
+ | * https://en.wikipedia.org/wiki/General_Comprehensive_Operating_System (2019) | ||
+ | * https://en.wikipedia.org/wiki/Gecos_field (2019) | ||