Upravljanje uporabnikov na strežniku Linux
Raven: Začetnik
Ocenjeni čas: ~30 minut
Cilj: Spoznati orodja ukazne vrstice za ustvarjanje in vzdrževanje računov, nastaviti standardni dostop do storitev in varno ohranjati razpoložljivost.
Uvod
Upravljanje uporabnikov v Linuxu je temeljna veščina vsakega sistemskega skrbnika. Ustrezen nadzor dostopa zagotavlja stabilnost, varnost in sledljivost strežnika. V tem priročniku bomo predstavili osnove dodajanja računov, dodeljevanja pravic (vključno s stopnjevanjem privilegijev v Linuxu) in varnega vzdrževanja standardne konfiguracije storitev.
Predpogoji
Pred začetkom se prepričajte, da so izpolnjeni naslednji pogoji:
- Operacijski sistem: Ubuntu 22.04/24.04 LTS, Debian 12/13, AlmaLinux/Rocky Linux 8/9/10, RHEL 8/9/10
- Dostop: dostop sudo ali root do strežnika prek SSH
- Sistem: delujoč upravljalnik paketov
- Zahtevano znanje: samozavestna uporaba ukazne vrstice Linuxa
Razumevanje ključnih pojmov
Preden naredite spremembe, morate razumeti, kako delujejo računi:
- UID (User ID): enolični številski identifikator, dodeljen vsakemu uporabniku za sledenje lastništvu in dovoljenjem.
- GID (Group ID): primarni številski identifikator, ki uporabnika uvrsti v določeno skupino. Skupine v Linuxu združujejo več uporabnikov zaradi skupnih dovoljenj.
- Domači imenik (home): privzeti imenik (
/home/username), kjer so shranjene osebne datoteke in nastavitve uporabnika. - Prijavna lupina (login shell): ukazni tolmač (na primer
/bin/bash), ki se zažene, ko se prijavi pooblaščen uporabnik. Pooblaščen uporabnik je račun, ki mu je dovoljen dostop do sistema. - Geslo: skrivno zaporedje znakov, ki se uporablja za overjanje uporabnikov v Linuxu. Overjanje je postopek preverjanja identitete uporabnika.
- Adduser: interaktivna skripta (front-end) za ustvarjanje računov, ki se uporablja predvsem v sistemih Debian/Ubuntu.
- Useradd: izvorno, nizkonivojsko izvršljivo orodje za ustvarjanje računov v vseh distribucijah Linux.
- Zaklep računa (Account lock): onemogočanje prijav z geslom za zaščito strežnika.
- Potek veljavnosti računa (Account expiration): samodejno onemogočanje računa na določen datum.
Korak 1: Ustvarjanje novega uporabnika
Za ustvarjanje novega uporabnika uporabite ukaz adduser (v Debianu/Ubuntuju) ali ukaz useradd (v RHEL/AlmaLinuxu).
V spodnjih primerih zamenjajte johndoe z želenim uporabniškim imenom. Za ustvarjanje uporabnika z imenom johndoe zaženite naslednji ukaz:
sudo adduser johndoe
Pozvani boste, da vnesete geslo in neobvezne podatke o uporabniku.
Pričakovani izpis:
Izpis bo vseboval vrstice o ustvarjanju skupine, uporabnika in domačega imenika ter o kopiranju datotek iz /etc/skel. Natančna vrednost UID/GID je odvisna od vašega sistema.
V RHEL/AlmaLinuxu uporabite sudo useradd -m johndoe (stikalo -m zagotovi ustvaritev /home/johndoe) in geslo nastavite ročno z ukazom passwd: sudo passwd johndoe.
Korak 2: Razumevanje ukaza sudo na strežniku Linux
Standardni uporabniki ne morejo spreminjati sistemskih nastavitev ali nameščati programske opreme. Ukaz sudo v Linuxu pooblaščenim uporabnikom omogoča izvajanje ukazov s pravicami root.
2.1 Dodajanje uporabnika v skupino sudo
Najlažji način za dodelitev pravic je, da uporabnika z ukazom usermod dodate v vnaprej določeno skrbniško skupino.
Ubuntu/Debian:
sudo usermod -aG sudo johndoe
RHEL/AlmaLinux:
sudo usermod -aG wheel johndoe
Ukaz usermod doda (-a) uporabnika v dodatno skupino (-G). Uporabnik johndoe zdaj lahko izvaja skrbniška opravila, tako da ukazom doda predpono sudo. Ob uspehu ukaz ne izpiše ničesar. To lahko preverite z ukazom groups johndoe - skupina sudo (ali wheel) bi se morala pojaviti na seznamu.
Korak 3: Spreminjanje lastnosti uporabnika
Morda boste morali zakleniti račun ali spremeniti njegovo geslo.
3.1 Sprememba gesla
Za vsiljeno spremembo gesla ali posodobitev pozabljenega gesla zaženite naslednje z ukazom passwd:
sudo passwd johndoe
Pozvani boste, da vnesete in potrdite novo geslo. Ko je to opravljeno, se lahko uporabnik prijavi z novimi poverilnicami.
3.2 Zaklep računa
Če uporabnik zapusti podjetje, izvedite zaklep računa, da zaščitite strežnik:
sudo usermod -L johndoe
Račun je takoj zaklenjen, kar prepreči vse nove prijave z geslom. Za poznejše odklepanje računa uporabite sudo usermod -U johndoe.
Noben od obeh ukazov ne izpiše ničesar. Stanje lahko preverite z ukazom passwd -S johndoe (stanje L = zaklenjen, P = aktiven).
3.3 Nastavitev poteka veljavnosti računa
Če želite račun samodejno onemogočiti na določen datum, nastavite potek veljavnosti računa:
sudo usermod -e 2026-12-31 johndoe
S tem začasni izvajalci samodejno izgubijo dostop.
Datum poteka lahko preverite z sudo chage -l johndoe. Zaradi obdelave meje UTC lahko prikaže datum en dan prej - to je običajno in račun bo vseeno pravilno potekel.
Korak 4: Varna uporaba ukaza sudo v Linuxu za varnost strežnika
Datoteka sudoers (/etc/sudoers) natančno določa, kdo lahko uporablja sudo in kaj sme izvajati.
Za urejanje datoteke sudoers vedno uporabite visudo. Pred shranjevanjem preveri sintaktične napake in tako prepreči izgubo dostopa.
Priporočena dobra praksa je, da za vsako pravilo ustvarite ločeno datoteko, namesto da urejate glavno datoteko:
sudo visudo -f /etc/sudoers.d/johndoe
To poenostavi povrnitev pravil in zmanjša tveganje za poškodbo glavne konfiguracije sudoers.
Če želite uporabniku johndoe omogočiti ponovni zagon storitve za sinhronizacijo časa brez gesla, dodajte ustrezno vrstico za svoj operacijski sistem:
Ubuntu/Debian:
johndoe ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart systemd-timesyncd
RHEL/AlmaLinux:
johndoe ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart chronyd
Shranite in zaprite datoteko. Uporabnik johndoe zdaj lahko znova zažene storitev, ne da bi bil pozvan k vnosu gesla.
Uporabnik johndoe mora ukaz zagnati kot sudo systemctl restart systemd-timesyncd (ali chronyd) - izrecno prek sudo. Neposreden klic za ponovni zagon storitve brez sudo vrne napako polkit, ki zahteva interaktivno overjanje.
Datotek sudoers nikoli ne urejajte neposredno z nano ali vim. Sintaktična napaka bo onemogočila dostop sudo v celotnem sistemu, za popravilo pa bo potreben zagon v reševalnem načinu.
Korak 5: Brisanje uporabnika
Ko račun ni več potreben, ga odstranite, da strežnik ostane urejen.
Za izbris uporabnika ob ohranitvi njegovih datotek:
sudo deluser johndoe
V RHEL/AlmaLinuxu: sudo userdel johndoe
Če ukaz zaženete brez --remove-home (ali -r), na disku ostaneta /home/johndoe in datoteke uporabnika. To je uporabno za arhiviranje podatkov, vendar se morate zavedati preostalih datotek.
Za izbris uporabnika in njegovega domačega imenika:
sudo deluser --remove-home johndoe
V RHEL/AlmaLinuxu: sudo userdel -r johndoe
Za odstranitev uporabnikove datoteke sudoers, če je bila ustvarjena, zaženite:
sudo rm -f /etc/sudoers.d/johndoe
Uporabniški račun je zdaj popolnoma odstranjen iz sistema.
Preden odstranite uporabnika, se prepričajte, da se nobena storitev v ozadju ne zanaša na njegov UID ali skupine Linux.
Preverjanje
Za preverjanje novega uporabnika in njegovih članstev v skupinah uporabite ukaz id:
id johndoe
Pričakovani izpis:
Izpis bo prikazal UID, GID (ki se lahko razlikuje od 1001) in seznam skupin. Preverite, ali je prisotna skupina sudo (Debian/Ubuntu) ali wheel (RHEL/AlmaLinux). V Debianu/Ubuntuju se na seznamu lahko pojavi tudi skupina users - to je običajno.
Za preizkus dostopa sudo preklopite na novega uporabnika:
su - johndoe
Nato zaženite ukaz, ki zahteva pravice:
sudo ls /root
Če ste pozvani, vnesite geslo uporabnika johndoe (geslo, nastavljeno v 1. koraku), ne gesla root. Videti bi morali vsebino imenika /root.
Odpravljanje težav
- Sintaktične napake v sudoers: če nehote pokvarite datoteko sudoers, jo pogosto lahko popravite z ukazom
pkexec visudoiz druge seje. Čepkexecni na voljo, boste morali strežnik zagnati v obnovitvenem načinu/načinu enega uporabnika in datoteko urediti tam. - Izgubljen dostop sudo: če izgubite dostop sudo, a še imate geslo root, se prijavite neposredno kot root (na primer z
su -) in popravite članstva v skupinah. - Preverjanje pravic uporabnika: če želite natančno preveriti, katere ukaze lahko uporabnik izvaja, uporabite
sudo -l -U johndoe.
Povrnitev sprememb (rollback)
Če morate razveljaviti spremembe iz tega priročnika:
- Uporabnika odstranite iz skupine sudo:
sudo gpasswd -d johndoe sudo(aliwheel). - Razveljavite vse dodatke, narejene prek
visudo. - Izbrišite uporabnika in njegov domači imenik:
sudo deluser --remove-home johndoe(alisudo userdel -r johndoe). - Odstranite njegovo namensko datoteko sudoers:
sudo rm -f /etc/sudoers.d/johndoe.
Zaključek
Pravilna nastavitev računov omogoča varno upravljanje uporabnikov v Linuxu, ne da bi ogrozili varnost sistema. Z razumevanjem ukaza adduser, ukaza usermod in ukaza passwd ter varne konfiguracije sudo ohranjate stabilno in sledljivo okolje.
Različica dokumenta: 1.0
Zadnja posodobitev: maj 2026
Lastnik: Ekipa za tehnično dokumentacijo