Ubuntu Kasutajahaldus: Kuidas Vaadata, Lisada, Muuta ja Kustutada Kasutajaid

目次

1. Sissejuhatus

Ubuntu on populaarne Linuxi distributsioon, mida kasutavad paljud kasutajad ja mida kasutatakse laialdaselt alates isiklikust kasutamisest kuni ettevõtete serverikeskkondadeni. Ubuntu süsteemi haldamisel on kasutajakontode haldamine hädavajalik. Eelkõige on süsteemi registreeritud kasutajate loendi kontrollimine kasulik turvalisuse haldamiseks ja kontode korrastamiseks.

See artikkel selgitab üksikasjalikult, kuidas Ubuntus kasutajate loendit kontrollida. Tutvustame kõike alates põhikäskudest kuni üksikasjaliku teabe hankimiseni, et see oleks kasulik nii algajatele kui ka edasijõudnutele.

2. Kuidas Ubuntus kasutajate loendit kontrollida

Ubuntus saab kasutajateabe hõlpsasti hankida, kasutades konkreetseid faile või käske. Kasutajate loendit saate kontrollida järgmistel viisidel:

2.1 Kasutajate loendi kuvamine, kasutades /etc/passwd

Ubuntus salvestatakse kogu kasutajateave faili /etc/passwd. Selle faili kuvamisel saate vaadata kõiki registreeritud kasutajaid.

Käsu näide

cat /etc/passwd

Selle käsu käivitamisel kuvatakse teave järgmises vormingus:

root:x:0:0:root:/root:/bin/bash
user1:x:1000:1000:User One,,,:/home/user1:/bin/bash
user2:x:1001:1001:User Two,,,:/home/user2:/bin/bash

Iga rea väljad on eraldatud kooloniga (:) ja sisaldavad järgmist teavet:

  1. Kasutajanimi
  2. Parool (praegu peidetud ‘x’ abil)
  3. Kasutaja ID (UID)
  4. Grupi ID (GID)
  5. Kasutaja info (kommentaar)
  6. Kodukataloog
  7. Vaikimisi kest (shell)

Kuna see fail sisaldab ka süsteemikasutajaid, kasutage ainult tavaliste sisselogimiseks lubatud kasutajate eraldamiseks järgmist meetodit:

2.2 Ainult kasutajanimede hankimine

Ainult kõigi kasutajanimede loetlemiseks kasutage järgmist käsku:

cut -d: -f1 /etc/passwd

Või võite kasutada käsku awk:

awk -F':' '{ print $1 }' /etc/passwd

Väljundi näide:

root
user1
user2

2.3 Konkreetse kasutaja otsimine

Konkreetse kasutaja olemasolu kontrollimiseks kasutage käsku grep.

grep 'user1' /etc/passwd

Selle käsu käivitamisel kuvatakse ainult user1-ga seotud teave.

2.4 Gruppide loendi hankimine, kasutades /etc/group

Kasutaja kuuluvate gruppide kontrollimiseks vaadake faili /etc/group.

cat /etc/group | cut -d: -f1

Samuti saate kontrollida konkreetse kasutaja kuuluvaid gruppe järgmise käsuga:

groups user1

Väljundi näide:

user1 : user1 sudo

See näitab, et user1 kuulub ka gruppi sudo.

3. Kuidas kontrollida praegu sisselogitud kasutajaid

Ubuntus on mitu võimalust süsteemi praegu sisselogitud kasutajate kontrollimiseks. Konkreetsete käskude abil saate hankida teavet praeguste sessioonide kohta ja üksikasjaliku sisselogimisteabe.

3.1 Sisselogitud kasutajate kontrollimine käsuga who

Käsk who loetleb kõik praegu sisselogitud kasutajad.

Käsu näide

who

Väljundi näide

user1    tty1         2025-02-16 10:05
user2    pts/0        2025-02-16 11:30

Iga välja kirjeldus

  1. Kasutajanimi (sisselogitud kasutaja)
  2. Terminali nimi (füüsiline konsool tty1 või kaugühendus pts/0)
  3. Sisselogimise aeg

Käsk who on lihtne ja mugav sisselogitud kasutajate kiireks kontrollimiseks.

3.2 Üksikasjaliku teabe kontrollimine käsuga w

Käsk w pakub üksikasjalikumat teavet kui käsk who.

Käsu näide

w

Väljundi näide

 11:35:25 up 2:15,  2 users,  load average: 0.03, 0.02, 0.00
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
user1    tty1                      10:05    1:30m  0.10s  0.10s -bash
user2    pts/0    192.168.1.10      11:30    0.00s  0.05s  0.02s sshd

Iga välja kirjeldus

  • Süsteemi tööaeg (up 2:15)
  • Praegu sisselogitud kasutajate arv (2 users)
  • CPU koormus (load average)
  • Kasutajanimi (USER)
  • Ühendatud terminal (TTY)
  • Kaugühenduse allikas (FROM)
  • Sisselogimise aeg (LOGIN@)
  • Tühikäiguaeg (IDLE)
  • CPU kasutus (JCPU, PCPU)
  • Käivitatav protsess (WHAT)

Eelkõige kuvatakse SSH kaudu sisselogitud kasutajate kaug-IP-aadress väljal FROM, mis on kasulik ka kaugjuurdepääsu haldamiseks ja jälgimiseks.

3.3 Sisselogitud kasutajate lihtne kontrollimine käsuga users

Kui soovite lihtsalt sisselogitud kasutajanimede loendit, on käsk users mugav.

Käsu näide

users

Väljundi näide

user1 user2

See käsk on käsu who lihtsustatud versioon ja kuvab ainult kasutajanimed.

3.4 Praeguse kasutaja kontrollimine käsuga whoami

Kui soovite kontrollida praeguses sessioonis töötavat kasutajat, kasutage käsku whoami.

Käsu näide

whoami

Väljundi näide

user1

See käsk kuvab ainult praeguses terminalis töötava kasutajanime, mis on kasulik kontrollimaks, kas käsud käivitatakse kindla kasutajana.

3.5 Hiljutise sisselogimise ajaloo kontrollimine käsuga last

Käsk last võimaldab teil vaadata varem sisselogitud kasutajate ajalugu.

Käsu näide

last

Väljundi näide

user1    pts/0        192.168.1.10     Mon Feb 15 10:20   still logged in
user2    tty1                          Mon Feb 15 09:30 - 10:00  (00:30)
root     tty1                          Sun Feb 14 22:15 - 23:45  (01:30)

Iga välja kirjeldus

  • Kasutajanimi
  • Ühendatud terminal (tty1, pts/0 jne)
  • Kaugühenduse allikas (IP-aadress)
  • Sisselogimise algusaeg
  • Väljalogimise aeg (still logged in tähendab, et kasutaja on endiselt sisse logitud)
  • Sisselogimise koguaeg (00:30 = 30 minutit)

See käsk on kasulik varem sisselogitud kasutajate jälgimiseks ja ebaseadusliku juurdepääsu tuvastamiseks.

4. Kuidas kontrollida kasutaja üksikasjalikku teavet

Ubuntus on mitu käsku registreeritud kasutajate üksikasjaliku teabe hankimiseks. Kontrollides konkreetse kasutaja UID-d, gruppe ja sisselogimiskesta, saate seadistada ja hallata sobivaid õigusi.
Siin selgitame üksikasjaliku teabe kontrollimist, kasutades käske id, finger ja chage.

4.1 Kasutaja UID, GID ja gruppide kontrollimine käsuga id

Käsku id kasutades saate kontrollida kasutaja UID-d (kasutaja ID), GID-d (grupi ID) ja kuuluvaid gruppe.

Käsu näide
id user1
Väljundi näide
uid=1001(user1) gid=1001(user1) groups=1001(user1),27(sudo),1002(docker)
Iga elemendi kirjeldus
  • uid=1001(user1)Kasutaja ID (kasutaja identifitseerimisnumber süsteemis)
  • gid=1001(user1)Grupi ID (põhigrupp)
  • groups=1001(user1),27(sudo),1002(docker)Kuuluvate gruppide loend

See teave on kasulik kontrollimaks, millistesse gruppidesse konkreetne kasutaja kuulub.

Praeguse kasutaja teabe kontrollimiseks
id

Selle käsu käivitamisel kuvatakse praeguse kasutaja ID-teave.

4.2 Kasutaja kuuluvate gruppide kontrollimine käsuga groups

Konkreetse kasutaja kuuluvate gruppide lihtsaks kontrollimiseks kasutage käsku groups.

Käsu näide
groups user1
Väljundi näide
user1 : user1 sudo docker

Grupiteavet saab hankida ka käsuga id, kuid kui soovite lihtsalt grupi nime kontrollida, on käsk groups mugav.

Praeguse kasutaja gruppide kontrollimiseks
groups

Selle käsu käivitamisel kuvatakse praeguse kasutaja kuuluvate gruppide loend.

4.3 Üksikasjaliku kasutajateabe hankimine käsuga finger

Käsk finger võimaldab teil hankida üksikasjalikumat teavet, näiteks kasutaja täisnime, sisselogimisteabe ja kesta tüübi.

Paigaldusjuhised

finger pole vaikimisi installitud, seega installige see esmalt järgmise käsuga:

sudo apt install finger
Käsu näide
finger user1
Väljundi näide
Login: user1                    Name: User One
Directory: /home/user1           Shell: /bin/bash
Last login: Mon Feb 16 10:20 (UTC) on pts/0
Iga elemendi kirjeldus
  • Login → Kasutajanimi
  • Name → Määratud tegelik nimi (võib olla tühi)
  • Directory → Kasutaja kodukataloog
  • Shell → Kasutatav kest
  • Last login → Viimane sisselogimise kuupäev ja kellaaeg

Süsteemiadministraatorid saavad käsku finger kasutada, et hõlpsasti kontrollida, millist kesta milline kasutaja kasutab jne.

4.4 Parooli kehtivusaja kontrollimine käsuga chage

Süsteemiadministraatorid saavad käsku chage kasutada konkreetse kasutaja parooli kehtivusaja ja viimase muutmise kuupäeva kontrollimiseks.

Käsu näide
sudo chage -l user1
Väljundi näide
Last password change            : Jan 15, 2025
Password expires                : Mar 15, 2025
Password inactive               : never
Account expires                 : never
Minimum number of days between password change : 7
Maximum number of days between password change : 60
Number of days of warning before password expires : 5
Iga elemendi kirjeldus
  • Last password change → Parooli viimase muutmise kuupäev
  • Password expires → Parooli kehtivusaeg
  • Password inactive → Periood, mille järel parool muutub kehtetuks
  • Account expires → Kuupäev, millal konto aegub
  • Minimum number of days between password change → Minimaalne päevade arv paroolimuutuste vahel
  • Maximum number of days between password change → Parooli kehtivusaeg
  • Number of days of warning before password expires → Hoiatuspäevade arv enne parooli aegumist

Süsteemiadministraatorid saavad seda teavet kasutada paroolihalduspoliitika seadistamiseks ja turvalisuse parandamiseks.

5. Kasutajate haldamine Ubuntus (lisamine, kustutamine, muutmine)

Ubuntus on süsteemiadministraatoritel oluline kasutajaid õigesti hallata. Uute kasutajate lisamine, kustutamine ja olemasolevate kasutajate teabe muutmine võib parandada süsteemi turvalisust ja töö efektiivsust. See jaotis selgitab kasutajate haldamise meetodeid, kasutades käske adduser, deluser ja usermod.

5.1 Kasutaja lisamine

Uue kasutaja loomiseks Ubuntus kasutage käsku adduser või useradd.

5.1.1 Käsk adduser (soovitatav)

adduser on mugav interaktiivne käsk kasutajate lisamiseks.

Käsu näide
sudo adduser newuser
Interaktiivse voo näide
Adding user `newuser' ...
Adding new group `newuser' (1002) ...
Adding new user `newuser' (1002) with group `newuser' ...
Creating home directory `/home/newuser' ...
Copying files from `/etc/skel' ...
Enter new UNIX password: ********
Retype new UNIX password: ********
passwd: password updated successfully
Changing the user information for newuser
Enter the new value, or press ENTER for the default
        Full Name []: 
        Room Number []: 
        Work Phone []: 
        Home Phone []: 
        Other []: 
Is the information correct? [Y/n] 
Loomise tulemused
  • Kasutajakonto
  • Eraldi grupp
  • Kodukataloog (/home/newuser)
  • Sisselogimiseks vajalik parool
  • Põhiline kasutajateave

See meetod on kõige tavalisem ja algajatele lihtsasti kasutatav käsk.

5.1.2 Käsk useradd (edasijõudnutele)

Käsk useradd erineb käsust adduser, olles lihtsam ja mõeldud skriptidele, kuid see ei loo automaatselt kodukatalooge.

Käsu näide
sudo useradd -m -s /bin/bash newuser
sudo passwd newuser
Valikute selgitus
  • -m → Loo kodukataloog
  • -s /bin/bash → Määrab sisselogimiskestaks /bin/bash

Seda käsku kasutades peate parooli eraldi määrama.

5.2 Kasutaja kustutamine

Mittevajalike kasutajakontode kustutamiseks kasutage käsku deluser või userdel.

5.2.1 Käsk deluser (soovitatav)

deluser on käsu adduser kustutusversioon ja võimaldab kasutajaid lihtsalt kustutada.

Käsu näide
sudo deluser newuser
Kodukataloogi kustutamine koos kasutajaga
sudo deluser --remove-home newuser

Selle käsu käivitamisel kustutatakse ka kasutaja kodukataloog (/home/newuser).

5.2.2 Käsk userdel (edasijõudnutele)

Käsk userdel pakub peenemat kontrolli.

Käsu näide
sudo userdel newuser
Kustutamine koos kodukataloogiga
sudo userdel -r newuser

userdel on otsesem meetod kui deluser, kuid seda tuleks kasutada ettevaatusega.

5.3 Kasutaja muutmine

Olemasoleva kasutajateabe muutmiseks kasutage käsku usermod.

5.3.1 Kasutajanime muutmine

Käsu näide
sudo usermod -l newname oldname

Selle käsu käivitamisel muudetakse oldname nimeks newname.

5.3.2 Kodukataloogi muutmine

Kui soovite kasutaja kodukataloogi muuta, kasutage valikut -d.

Käsu näide
sudo usermod -d /new/home/path user1
Praeguse kodukataloogi teisaldamine uude asukohta
sudo usermod -d /home/newuser -m user1

5.3.3 Kasutaja kuuluvuse muutmine

Konkreetse kasutaja teise gruppi lisamiseks või tema kuuluvuse muutmiseks kasutage usermod -aG.

Kasutaja lisamine gruppi sudo
sudo usermod -aG sudo user1
Praeguse grupi kontrollimine
groups user1

5.3.4 Kasutaja parooli muutmine

Administraator saab konkreetse kasutaja parooli muutmiseks kasutada käsku passwd.

Käsu näide
sudo passwd user1
Väljundi näide
Enter new UNIX password: ********
Retype new UNIX password: ********
passwd: password updated successfully

See käsk muudab kasutaja user1 parooli.

6. Rakendusnäited erinevate stsenaariumide jaoks

Ubuntu kasutajahaldus ei tähenda ainult loendite kontrollimist, lisamist või kustutamist, vaid ka haldusmeetodite teadmist vastavalt konkreetsele olukorrale. See jaotis tutvustab näiteid käskude kasutamise kohta tavaliste stsenaariumide korral.

6.1 Kasutajate otsimine kindlate kriteeriumide alusel

6.1.1 Administraatorite (sudo õigustega kasutajate) loendi kuvamine

Süsteemiadministraatorid, kes soovivad kontrollida sudo õigustega kasutajaid, saavad otsida failist /etc/group käsuga getent.

Käsu näide
getent group sudo
Väljundi näide
sudo:x:27:user1,user2

Väljundi selgitus

  • sudo:x:27: → sudo grupi teave
  • user1,user2 → sudo gruppi kuuluvad kasutajad

Seda meetodit kasutades saate kiiresti kontrollida administraatori õigustega kasutajaid.

6.1.2 Sisselogitavate kasutajate loendi kuvamine

Tavaliselt sisaldab /etc/passwd ka süsteemikasutajaid, kuid tegelikult sisselogitavate kasutajate kontrollimiseks on mugav otsida vaikekestaga kasutajaid.

Käsu näide
grep '/bin/bash' /etc/passwd
Väljundi näide
user1:x:1001:1001::/home/user1:/bin/bash
user2:x:1002:1002::/home/user2:/bin/bash

Selle meetodi eelised

  • Kuvatakse ainult kasutajad, kellel on /bin/bash või /bin/sh
  • Välja jäetakse nologin-seadistusega kasutajad (nt süsteemikontod)

6.1.3 Süsteemikasutajate (sisselogimatu) loendi kuvamine

Süsteemikasutajatel on tavaliselt seadistatud /usr/sbin/nologin või /bin/false, seega saate neid kontrollida järgmise käsuga:

Käsu näide
grep -E '/usr/sbin/nologin|/bin/false' /etc/passwd
Väljundi näide
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
syslog:x:104:110::/home/syslog:/bin/false

Süsteemikontode kontrollimine aitab vältida nende juhuslikku kustutamist.

6.2 Kuidas perioodiliselt kustutada mittevajalikke kasutajaid

6.2.1 Viimati sisselogitud kasutajate loendi kuvamine

Kui kustutate kaua aega sisse logimata kasutajaid, kontrollige sisselogimise ajalugu käsuga lastlog.

Käsu näide
lastlog
Väljundi näide
Username         Port     From             Latest
root            tty1                      Mon Feb 12 14:02:08 +0000 2025
user1           pts/0    192.168.1.10      Mon Jan 15 10:30:12 +0000 2025
user2           pts/1    192.168.1.20      Never logged in
  • Never logged in → Kasutaja, kes pole kunagi sisse loginud

Selle teabe põhjal saate otsustada, kas mittevajalik konto kustutada.

Konto kustutamise käsk
sudo deluser user2 --remove-home

6.2.2 Parooli viimase muutmise kuupäeva kontrollimine

Käsku chage kasutades saate kontrollida, millal kasutaja viimati oma parooli muutis.

Käsu näide
sudo chage -l user1
Väljundi näide
Last password change            : Jan 15, 2025
Password expires                : Mar 15, 2025
Password inactive               : never

Kui parooli pole pikka aega muudetud, on võimalik turvameetmena nõuda sunnitud muutmist.

Sunnitud parooli muutmine
sudo passwd --expire user1

See nõuab, et kasutaja määrab järgmisel sisselogimisel uue parooli.

6.3 SSH kaudu ühendatud kasutajate kontrollimine

Kaugjuhtimisel on oluline kontrollida praegu SSH-ga ühendatud kasutajaid.

Käsu näide
who | grep pts
Väljundi näide
user1    pts/0        192.168.1.10     11:30

See võimaldab teil kontrollida kaugühendusega kasutajaid ja nende IP-aadresse.

6.4 Kõigi kasutajate teabe CSV-vormingusse eksportimine

Süsteemiadministraatorid, kes soovivad kõigi kasutajate teavet loendina salvestada, saavad kasutada käsku getent.

Käsu näide
getent passwd | awk -F: '{print $1 "," $3 "," $4 "," $6}' > users.csv
Väljund (users.csv sisu)
root,0,0,/root
user1,1001,1001,/home/user1
user2,1002,1002,/home/user2
  • Kasutajanimi, UID, GID, kodukataloog CSV-vormingus
  • Saab analüüsida Excelis või arvutustabelites

7. KKK (Korduma Kippuvad Küsimused)

Siia on koondatud Ubuntu kasutajahaldusega seotud sagedased küsimused. Teave on abiks tõrkeotsingul ja haldamisel.

7.1 Kas /etc/passwd otse muutmine on ohutu?

Vastus

Otse muutmine on ebasoovitatav. /etc/passwd on süsteemi oluline fail ja vale muutmine võib takistada sisselogimist.

Soovitatav meetod

Käsu usermod või vipw kasutamine võimaldab turvaliselt muuta.

Ohutu redigeerimise meetod
sudo vipw

See võimaldab teil muuta /etc/passwd lukustatud ja turvalises keskkonnas.

7.2 Mis vahe on käskudel who ja users?

Vastus

KäskKirjeldus
whoKuvab praegu sisselogitud kasutajad üksikasjalikult (sisselogimise aeg, terminal)
usersKuvab lihtsalt sisselogitud kasutajanimed

Näide

who

Väljundi näide

user1    tty1         2025-02-16 10:05
user2    pts/0        2025-02-16 11:30
users

Väljundi näide

user1 user2

who pakub üksikasjalikumat teavet.

7.3 Kuidas kontrollida konkreetse kasutaja sisselogimise ajalugu?

Vastus

Käsk last võimaldab teil kontrollida konkreetse kasutaja sisselogimise ajalugu.

Käsu näide
last user1
Väljundi näide
user1    pts/0        192.168.1.10     Mon Feb 15 10:20   still logged in
user1    tty1                          Mon Feb 10 09:30 - 10:00  (00:30)

See võimaldab teil kontrollida, millisest terminalist/IP-aadressilt sisselogimine toimus.

7.4 Kuidas muuta kasutaja parooli?

Vastus

Administraator saab konkreetse kasutaja parooli muutmiseks kasutada käsku passwd.

Käsu näide
sudo passwd user1
Väljundi näide
Enter new UNIX password: *************
Retype new UNIX password: ********
passwd: password updated successfully

Parooli muutnud kasutaja peab järgmisel sisselogimisel kasutama uut parooli.

7.5 Kas on võimalik kasutaja ajutiselt keelata?

Vastus

Saate kasutaja ajutiselt keelata, kasutades käsku usermod.

Konto lukustamine
sudo usermod -L user1

See käsk lukustab ajutiselt kasutaja user1 konto ja takistab sisselogimist.

Konto avamine
sudo usermod -U user1

See käsk võimaldab kasutaja user1 sisselogimise taastada.

7.6 Kuidas lisada konkreetne kasutaja sudo gruppi?

Vastus

Saate lisada konkreetse kasutaja gruppi sudo, kasutades käsku usermod.

Käsu näide
sudo usermod -aG sudo user1

Pärast lisamist saab kasutaja user1 kasutada sudo käske.

7.7 Kuidas muuta kasutaja kodukataloogi?

Vastus

usermod -d kasutamine võimaldab teil muuta kasutaja kodukataloogi.

Käsu näide
sudo usermod -d /new/home/path -m user1
Väljundi näide
user1 home directory has been moved to /new/home/path

See käsk muudab kasutaja user1 kodukataloogi uueks asukohaks.

7.8 Kuidas kasutaja ja tema andmed täielikult kustutada?

Vastus

Saate kasutaja ja tema kodukataloogi kustutada, kasutades käsku deluser või userdel.

Käsu näide
sudo deluser --remove-home user1

Või

sudo userdel -r user1

See käsk kustutab täielikult kasutaja user1 ja tema kodukataloogi /home/user1.

7.9 Kuidas kontrollida praegu sisselogitud kasutaja üksikasjalikku tegevust?

Vastus

Käsk w võimaldab teil kontrollida sisselogitud kasutajate üksikasjalikku tegevust.

Käsu näide
w
Väljundi näide
 11:35:25 up 2:15,  2 users,  load average: 0.03, 0.02, 0.00
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
user1    tty1                      10:05    1:30m  0.10s  0.10s -bash
user2    pts/0    192.168.1.10      11:30    0.00s  0.05s  0.02s sshd
  • Sisselogitud kasutajad
  • Kaugühenduse IP
  • Praegused protsessid (WHAT veerg)
  • Süsteemi koormus (load average)

See võimaldab teil kontrollida, milline kasutaja mida praegu teeb.