Správa uživatelských účtů v Linuxu

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(Vytvoření stránky)
 
(Příkaz usermod: Opraven název skupiny správců a doplněno, že se může lišit.)
 
(Není zobrazeno 27 mezilehlých verzí od 1 uživatele.)
Řádka 1: Řádka 1:
[[Category:VSE]]
+
[[Category:VSE]][[Category:Informatika]][[Category:OSY]][[Category:Linux]][[Category:Uživatelské účty]]
[[Category:Informatika]]
+
[[Category:OSY]]
+
  
*Zdroje
+
 
**abclinuxu.cz > Clanky > Navody > Unixove-nastroje-5-opravneni-chmod-chown-chgrp <http://www.abclinuxu.cz/clanky/navody/unixove-nastroje-5-opravneni-chmod-chown-chgrp>
+
<div class="Poznamka">Všechny probírané akce lze samozřejmě provést i v grafickém rozhraní. Přesné provedení se ale liší.</div>
**L* GUIDE
+
 
**Student chápe systém nastavení uživatelských práv v systému Linux. Umí své soubory zpřístupnit ostatním uživatelům.
+
== Co se máte naučit ==
**Student umí přidat nového uživatele, nastavit si heslo.
+
* Vytvořit uživatelský účet v příkazovém řádku GNU/Linuxu
**Pracuje s uživatelským adresářem, zná zkratku ~.
+
* Vytvořit skupinu uživatelů a
*UID
+
* Znát strukturu konfiguračních souborů <tt>/etc/passwd</tt> a <tt>/etc/group</tt>.
**User IDentificator
+
 
**identifikátor uživatele
+
== Vytvoření uživatelského účtu ==
**v souboru /etc/passwd <#_Freemind_Link_828580762>
+
<div class="Upozorneni">Tyto příkazy smí provádět pouze správce počítače!</div>
**Perličky
+
=== Příkaz adduser ===
***stejné uživatelské jméno neznamená stejného uživatele
+
* intuitivní, „user-friendly“ — vhodný pro ruční vytváření uživatelských účtů
***Dva uživatelé se stejným UID.
+
** zeptá se na všechny potřebné údaje
***UID 0 => root
+
** volá příkazy <code>useradd</code>, <code>usermod</code>, <code>groupadd</code> a další
*Správa uživatelů
+
* bývá v&nbsp;distribucích založených na Debianu, v&nbsp;ostatních distribucích to bývá jen alias pro příkaz <code>useradd</code>
**Nastavování hesla
+
adduser karel
***passwd
+
 
***root může
+
=== Příkaz useradd ===
****passwd username
+
* Na rozdíl od <code>adduser</code> je třeba pomocí parametrů nastavit parametry uživatelského účtu.
**Přidávání uživatelů
+
*Parametry:
***Grafika
+
**-m
***adduser
+
***vytvoří uživatelskou složku v /home
****zeptá se na všechny potřebné údaje
+
**-g
***useradd
+
***přiřadí uživateli primární skupinu
****Ubuntu
+
**-N
*****useradd -m -n -s /bin/bash bittnerova_pavlina
+
***Nevytvoří zároveň skupinu se stejným jménem (standardně se vytváří)
******useradd -m -g IE2010 bittnerova_pavlina
+
**-s
*****passwd bittnerova_pavlina
+
***nastaví default-ní shell
*****parametry useradd
+
**-p
******-m
+
***nastaví úvodní heslo
*******vytvoří uživatelskou složku v /home
+
*** musíme ale zadat heslo zašifrované funkcí crypt()
******-g
+
*** praktičtější je nastavit heslo dodatečně příkazem <code>passwd</code> nebo použít <code>adduser</code>
*******přiřadí uživateli primární skupinu
+
useradd -m -s /bin/bash bittnerova_pavlina<br />passwd bittnerova_pavlina
******-n
+
 
*******vytvoří i skupinu se stejným jménem
+
=== Příkaz <code>newusers</code> ===
******-s
+
* Příkazu předáme soubor s účty a hesly:
*******nastaví default-ní shell
+
newusers seznam_uctu.txt
******-p
+
* Bohužel musíme zadávat ručně i UID.
*******nastaví úvodní heslo
+
* Obsah souboru <tt>seznam_uctu.txt</tt> může vypadat například takto:
*******ale kryptované funkcí crypt()
+
franta:password:1001:1001:Vedouci:/home/franta:/bin/bash
*******takže spíše dodatečně přes passwd
+
josef:password:1002:1002:Manager:/home/josef:/bin/bash
****heslo je pak potřeba nastavit ručně
+
alice:password:1050:uctari:Ucetni:/home/alice:/bin/bash
***newusers
+
* Bezpečnostní doporučení:
****cyberciti.biz > Tips > Linux-how-to-create-multiple-users-accounts-in-batch <http://www.cyberciti.biz/tips/linux-how-to-create-multiple-users-accounts-in-batch.html>
+
** Soubor vytvořte v domovském adresáři uživatele <tt>root</tt>,
****soubor s uživatelskými jmény a hesly
+
** nastavte práva na <code>0600</code>,
****ale je třeba zadat i UID
+
** soubor po použití smažte.
****touch /root/batch-user-add.txt
+
 
****chmod 0600 /root/batch-user-add.txt
+
Více viz: [http://www.cyberciti.biz/tips/linux-how-to-create-multiple-users-accounts-in-batch.html cyberciti.biz > Tips > Linux-how-to-create-multiple-users-accounts-in-batch] nebo <code>man newusers</code>.
****obsah /root/batch-user-add.txt
+
 
*****user1:password:1001:513:Student Account:/home/user1:/bin/bash
+
== Změna vlastností a zrušení uživatele ==
*****user2:password:1002:513:Sales user:/home/user2:/bin/bash
+
 
*****user100:password:1100:513:Sales user:/home/user100:/bin/bash
+
<div class="Upozorneni">Tyto příkazy smí provádět pouze správce počítače!</div>
*****tom:password:1110:501:Guest Account:/home/guest:/bin/menu
+
 
*****jerry:password:1120:501:Guest Account:/home/guest:/bin/menu
+
=== Příkaz usermod ===
****newusers /root/batch-user-add.txt
+
* Například zařazení uživatele do skupiny:
***Změna vlastností a zrušení uživatele
+
usermod -aG ''skupina'' ''uzivatel''
****usermod
+
<div class="Varovani">POZOR! Změna se projeví až po dalším přihlášení! Nebo ji můžete aktivovat příkazem:
*****usermod -a -G admin simunek
+
newgrp ''skupina''
******Všichni admini jsou ve skupině admin
+
</div>
*****usermod -aG skupina uzivatel
+
<div class="Priklad">
****userdel
+
; Příklad:
****POZN* V nouzi
+
Povolte uživateli volat příkaz sudo (nastavte uživateli oprávnění správce)
****Například když napíši usermod -G vmuser simunek, čímž se vymažu ze skupiny admin.
+
* Využívá toho, že všichni správci jsou zařazeni v&nbsp;specifické skupině. Název skupiny se liší v&nbsp;různých distribucích, příkladem může být <tt>sudo</tt> (Debian) či <tt>wheel</tt> (Red Hat).
****Boot z Live CD
+
* Viz také [[Oprávnění pro přístup k souborům]].
****Ruční úprava /etc/passwd a /etc/group
+
usermod -a -G sudo ''novyadmin''
**Vytvoření skupiny, přiřazení uživatelů do skupiny
+
</div>
***Uživatel může být ve více skupinách, ve skupině může být více uživatelů.
+
 
***Vytvoření, zrušení
+
=== Příkaz chage ===
****groupadd
+
* Omezení platnosti uživatelského účtu a&nbsp;nutnost změnit heslo.
****groupdel
+
<div class="Priklad">
***Přiřazení uživatelů
+
; Příklad:
****groupmod
+
Uživatel <code>karel</code> si vždy po 60 dnech musí změnit heslo:
****usermod <#_Freemind_Link_490610556>
+
chage -M 60 karel
**Soubory:
+
</div>
***/etc/group
+
 
****man -s 5 group
+
=== Příkaz userdel ===
***/etc/passwd
+
* Smaže uživatelský účet.
****Jak zjistit uživatelské jméno, které jsem si vytvořil při instalaci Ubuntu???
+
 
****Co udělá?
+
== Zjištění informací o uživateli ==
*****cat /etc/passwd | cut -d : -f 1 | sort
+
 
***UK* Vytvoření účtu.
+
Příkaz <code>id</code>
***Vytvořte pro každého z vás uživatelský účet na počítači, u kterého pracujete.
+
* Standardně pracuje s UID a GID, přepínač <code>-n</code> to mění.
***Vytvořte skript, kterým nastavíte x uživatelů.
+
* Další přepínače zjišťují doplňující informace.
***Vytvořte skupinu treti_b. Přiřaďte uživatele.
+
* Př: Do kterých skupin uživatel patří?
***Zkontrolujte v konfiguračních souborech.
+
id -Gn student
**Složka ~
+
* Neuvedeme-li uživatele, bere se aktuálně přihlášený.
***~/Desktop
+
 
*Přepínání uživatelů
+
Alternativy:
**su + sudo <#Freemind_Link_1014734255>
+
echo $USER
**su
+
whoami
***nebo sudo -i
+
who
**spuštění jednoho příkazu jako admin
+
 
***sudo
+
 
**spuštění grafického programu jako admin
+
== Vytvoření skupiny, přiřazení uživatelů do skupiny ==
***gksu
+
* Uživatel může být ve více skupinách, ve skupině může být více uživatelů.
****například gparted
+
* Jedna skupina je ale pro uživatele „primární“, obvykle má název stejný jako je jeho uživatelské jméno.
***v KUbuntu
+
 
****kdesu
+
=== Vytvoření, zrušení skupiny ===
 +
* <code>groupadd</code>
 +
* <code>groupdel</code>
 +
 
 +
=== Přiřazení uživatelů ===
 +
* <code>groupmod</code>
 +
* <code>usermod</code>: viz [[Správa_uživatelských_účtů#Příkaz_usermod|výše]].
 +
 
 +
=== Výpis uživatelů ve skupině ===
 +
* Seznam uživatelů je v souboru <tt>/etc/group</tt>.
 +
* Viz také [[Konfigurační soubory GNU/Linuxu - Uživatelské účty]].
 +
grep ^''skupina'': /etc/group
 +
<div class="Priklad">
 +
Pro zajímavost:
 +
* Co vlastně příkaz <code>grep ^''skupina'': /etc/group</code> přesně dělá?
 +
* Šel by upravit, aby vypsal JEN jména uživatelů ve skupině??? ;)
 +
</div>
 +
 
 +
 
 +
== Konfigurační soubory ==
 +
 
 +
Informace o uživatelských účtech jsou uloženy v [[Konfigurační_soubory|konfiguračních souborech]]. Konkrétně se jedná o soubory:
 +
/etc/passwd
 +
/etc/group
 +
/etc/shadow
 +
/etc/sudoers
 +
Více viz [[Konfigurační soubory GNU/Linuxu - Uživatelské účty]].
 +
 
 +
 
 +
== Zjištění informací o uživatelích a skupinách ==
 +
 
 +
; Poslední přihlášení
 +
last
 +
* Poslední přihlášení
 +
lastb
 +
* Poslední nezdařené přihlášení
 +
 
 +
; Informace o uživateli
 +
Tyto informace lze získat i z&nbsp;konfiguračních souborů.
 +
id
 +
 
 +
 
 +
== Úkoly ==
 +
* Jak zjistit uživatelská jména uživatelů, kteří mají účet na tomto počítači?
 +
* Co udělá příkaz:
 +
cat /etc/passwd | cut -d : -f 1 | sort
 +
* Vytvořte na svém počítači uživatelské účty pro sebe a svého kolegu. Nastavte účtům heslo.
 +
* Vytvořte uživatelskou skupinu <tt>treti_b</tt>.
 +
* Zařaďte vytvořené účty do skupiny <tt>treti_b</tt>.
 +
* Zkontrolujte v konfiguračních souborech, že vytváření proběhlo v pořádku.
 +
* Vyzkoušejte připojení ze sousedního počítače (řekněte kolegovi jeho heslo a login a nechte ho, ať se přihlásí ze sousedního počítače). (Viz také [[Vzdálené připojení k počítači]].)
 +
* Jak se liší „administrátorský“ účet od běžného?
 +
 
 +
 
 +
== Zdroje ==
 +
* [http://www.abclinuxu.cz/clanky/navody/unixove-nastroje-5-opravneni-chmod-chown-chgrp AbcLinuxu.cz > Unixové nástroje, oprávnění, chmod-chown-chgrp]

Aktuální verze z 23. 2. 2023, 08:31


Všechny probírané akce lze samozřejmě provést i v grafickém rozhraní. Přesné provedení se ale liší.

Obsah

Co se máte naučit

Vytvoření uživatelského účtu

Tyto příkazy smí provádět pouze správce počítače!

Příkaz adduser

adduser karel

Příkaz useradd

useradd -m -s /bin/bash bittnerova_pavlina
passwd bittnerova_pavlina

Příkaz newusers

newusers seznam_uctu.txt
franta:password:1001:1001:Vedouci:/home/franta:/bin/bash
josef:password:1002:1002:Manager:/home/josef:/bin/bash
alice:password:1050:uctari:Ucetni:/home/alice:/bin/bash

Více viz: cyberciti.biz > Tips > Linux-how-to-create-multiple-users-accounts-in-batch nebo man newusers.

Změna vlastností a zrušení uživatele

Tyto příkazy smí provádět pouze správce počítače!

Příkaz usermod

usermod -aG skupina uzivatel
POZOR! Změna se projeví až po dalším přihlášení! Nebo ji můžete aktivovat příkazem:
newgrp skupina
Příklad

Povolte uživateli volat příkaz sudo (nastavte uživateli oprávnění správce)

  • Využívá toho, že všichni správci jsou zařazeni v specifické skupině. Název skupiny se liší v různých distribucích, příkladem může být sudo (Debian) či wheel (Red Hat).
  • Viz také Oprávnění pro přístup k souborům.
usermod -a -G sudo novyadmin

Příkaz chage

Příklad

Uživatel karel si vždy po 60 dnech musí změnit heslo:

chage -M 60 karel

Příkaz userdel

Zjištění informací o uživateli

Příkaz id

id -Gn student

Alternativy:

echo $USER
whoami
who


Vytvoření skupiny, přiřazení uživatelů do skupiny

Vytvoření, zrušení skupiny

Přiřazení uživatelů

Výpis uživatelů ve skupině

grep ^skupina: /etc/group

Pro zajímavost:

  • Co vlastně příkaz grep ^skupina: /etc/group přesně dělá?
  • Šel by upravit, aby vypsal JEN jména uživatelů ve skupině??? ;)


Konfigurační soubory

Informace o uživatelských účtech jsou uloženy v konfiguračních souborech. Konkrétně se jedná o soubory:

/etc/passwd
/etc/group
/etc/shadow
/etc/sudoers

Více viz Konfigurační soubory GNU/Linuxu - Uživatelské účty.


Zjištění informací o uživatelích a skupinách

Poslední přihlášení
last
lastb
Informace o uživateli

Tyto informace lze získat i z konfiguračních souborů.

id


Úkoly

cat /etc/passwd | cut -d : -f 1 | sort


Zdroje

Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje