|   |   | 
| Řádka 9: | Řádka 9: | 
|  | * vysvětlit význam souborů <tt>/etc/passwd</tt>, <tt>/etc/group</tt> a <tt>/etc/shadow</tt> |  | * vysvětlit význam souborů <tt>/etc/passwd</tt>, <tt>/etc/group</tt> a <tt>/etc/shadow</tt> | 
|  |  |  |  | 
| − | == UID == | + | == Systémy správy oprávnění uživatelů == | 
| − | **User IDentificator | + | V dalších kapitolách budeme mluvit o klasickém nastavování odvozenému ze systému Unix. Další možnosti: | 
| − | **identifikátor uživatele | + | * ACL | 
| − | **v souboru /etc/passwd <#_Freemind_Link_828580762> | + | ** standard POSIX | 
| − | **Perličky | + | ** stále jen práva rwx, ale lze je nastavovat jednotlivým uživatelům | 
| − | ***stejné uživatelské jméno neznamená stejného uživatele | + | * [http://www.abclinuxu.cz/clanky/bezpecnost/nebojte-se-selinuxu-1-uvod-prvni-spusteni SELinux] | 
| − | ***Dva uživatelé se stejným UID. | + | ** Například distribuce Fedora | 
| − | ***UID 0 => root | + | * A další... | 
|  | + | ** AppArmor (Novell/SUSE) | 
|  | + | ** ... | 
|  |  |  |  | 
| − | == Nastavování hesla == | + | == UID (User IDentificator) == | 
| − | ***passwd | + | * číslo | 
| − | ***root může | + | * identifikuje uživatele v systému | 
| − | ****passwdusername | + | * uloženo v souboru /etc/passwd | 
|  |  |  |  | 
| − | == Přidávání uživatelů == | + | == Nastavení hesla == | 
| − | ***Grafika | + | * Příkaz passwd | 
| − | ***adduser
 | + | * Administrátor může nastavit heslo i jinému uživateli: | 
| − | ****zeptá se na všechny potřebné údaje
 | + |  passwd username | 
| − | ***useradd
 | + |  | 
| − | ****Ubuntu
 | + |  | 
| − | *****useradd -m -n -s /bin/bash bittnerova_pavlina
 | + |  | 
| − | ******useradd -m -g IE2010 bittnerova_pavlina
 | + |  | 
| − | *****passwdbittnerova_pavlina
 | + |  | 
| − | *****parametry useradd | + |  | 
| − | ******-m
 | + |  | 
| − | *******vytvoří uživatelskou složku v /home
 | + |  | 
| − | ******-g
 | + |  | 
| − | *******přiřadí uživateli primární skupinu
 | + |  | 
| − | ******-n
 | + |  | 
| − | *******vytvoří i skupinu se stejným jménem
 | + |  | 
| − | ******-s
 | + |  | 
| − | *******nastaví default-ní shell
 | + |  | 
| − | ******-p
 | + |  | 
| − | *******nastaví úvodní heslo
 | + |  | 
| − | *******ale kryptované funkcí crypt()
 | + |  | 
| − | *******takže spíše dodatečně přes passwd
 | + |  | 
| − | ****heslo je pak potřeba nastavit ručně
 | + |  | 
| − | ***newusers
 | + |  | 
| − | ****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 s uživatelskými jmény a hesly
 | + |  | 
| − | ****ale je třeba zadat iUID
 | + |  | 
| − | ****touch /root/batch-user-add.txt
 | + |  | 
| − | ****chmod 0600 /root/batch-user-add.txt
 | + |  | 
| − | ****obsah /root/batch-user-add.txt
 | + |  | 
| − | *****user1:password:1001:513:Student Account:/home/user1:/bin/bash
 | + |  | 
| − | *****user2:password:1002:513:Sales user:/home/user2:/bin/bash
 | + |  | 
| − | *****user100:password:1100:513:Sales user:/home/user100:/bin/bash
 | + |  | 
| − | *****tom:password:1110:501:Guest Account:/home/guest:/bin/menu
 | + |  | 
| − | *****jerry:password:1120:501:Guest Account:/home/guest:/bin/menu
 | + |  | 
| − | ****newusers /root/batch-user-add.txt
 | + |  | 
| − | ***Změna vlastností a zrušení uživatele
 | + |  | 
| − | ****usermod
 | + |  | 
| − | *****usermod -a -G admin simunek
 | + |  | 
| − | ******Všichni admini jsou ve skupině admin
 | + |  | 
| − | *****usermod -aG skupina uzivatel
 | + |  | 
| − | ****userdel
 | + |  | 
| − | **Vytvoření skupiny, přiřazení uživatelů do skupiny
 | + |  | 
| − | ***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í
 | + |  | 
| − | ****groupadd
 | + |  | 
| − | ****groupdel
 | + |  | 
| − | ***Přiřazení uživatelů
 | + |  | 
| − | ****groupmod
 | + |  | 
| − | ****usermod <#_Freemind_Link_490610556>
 | + |  | 
|  |  |  |  | 
| − | == Konfigurační soubory == | + | == Přepínání uživatelů == | 
| − | ***/etc/group
 | + |   | 
| − | ****man -s 5 group
 | + | === Přepnutí identity na jiného uživatele === | 
| − | ***/etc/passwd
 | + | * Příkaz su | 
| − | ****Jak zjistit uživatelské jméno, které jsem si vytvořil při instalaci Ubuntu???
 | + | * Příkaz sudo -i | 
| − | ****Co udělá?
 | + |   | 
| − | *****cat /etc/passwd | cut -d : -f 1 | sort
 | + | === Spuštění jednoho příkazu s právy administrátora === | 
| − | ***UK* Vytvoření účtu.
 | + | * Příkaz sudo | 
| − | ***Vytvořte pro každého z vás uživatelský účet napočítači, u kterého pracujete.
 | + | ** pro spouštění programů/příkazů pracujících s textovým rozhraním (a také některé program pracující v grafickém rozhraní) | 
| − | ***Vytvořte skript, kterým nastavíte x uživatelů.
 | + | ** pouze vybraní uživatelé smí volat sudo, tito uživatelé jsou zařazeni do skupiny admin (Ubuntu 10.10) | 
| − | ***Vytvořte skupinu treti_b. Přiřaďte uživatele.
 | + | * Spuštění grafického programu s právy administrátora | 
| − | ***Zkontrolujte v konfiguračních souborech. | + | ** Příkaz gksu: pro prostředí Gnome | 
| − | **Složka ~
 | + | ** Příkaz kdesu: prostředí KDE | 
| − | ***~/Desktop
 | + |  | 
| − | *Přepínání uživatelů
 | + |  | 
| − | **su+ sudo <#Freemind_Link_1014734255>
 | + |  | 
| − | **su | + |  | 
| − | ***nebo sudo -i
 | + |  | 
| − | **spuštění jednoho příkazujako admin
 | + |  | 
| − | ***sudo | + |  | 
| − | **spuštění grafického programu jako admin | + |  | 
| − | ***gksu
 | + |  | 
| − | ****například gparted
 | + |  | 
| − | ***v KUbuntu
 | + |  | 
| − | ****kdesu
 | + |  | 
| − | *Nastavování práv
 | + |  | 
| − | ** *UK* Zjistěte sami na Internetu
 | + |  | 
| − | ***Komu můžeme přiřadit práva k souborům (3 subjektům)
 | + |  | 
| − | ***Práva se označují písmenky r, w, x, co písmenka znamenají pro soubor aco pro adresář
 | + |  | 
| − | ***Co vypíše příkaz ls -l (hlavně význam prvních 10 písmenek)
 | + |  | 
| − | **Práva pro přístup k souborům | + |  | 
| − | ***R,W, E
 | + |  | 
| − | ***význam pro
 | + |  | 
| − | ****soubor
 | + |  | 
| − | *****Na začátek spustitelných skriptů: #!/bin/sh
 | + |  | 
| − | ****adresář
 | + |  | 
| − | *****Představa
 | + |  | 
| − | ******složka jako seznam názvů souborů a odkazů na jejich data
 | + |  | 
| − | ******r
 | + |  | 
| − | ******w
 | + |  | 
| − | ******x
 | + |  | 
| − | *******přístup k souborům ve složce
 | + |  | 
| − | **Zjištění práv
 | + |  | 
| − | ***Jak zjistíte vlastníka souboru,
 | + |  | 
| − | ***práva vlastníka, skupiny a všech k souboru,
 | + |  | 
| − | ***dokterých skupin patří uživatel?
 | + |  | 
| − | **Nastavování práv
 | + |  | 
| − | ***chmod
 | + |  | 
| − | ***číselné vyjádření práv
 | + |  | 
| − | ***změna jednotlivých práv
 | + |  | 
| − | **Se SUDO mohu stejně všechno!
 | + |  | 
| − | **Změna vlastníka a skupiny
 | + |  | 
| − | ***Vlastníkem souboru je na začátku ten, kdo ho vytvoří.
 | + |  | 
| − | ***chown
 | + |  | 
| − | ****změna vlastníka
 | + |  | 
| − | ****obvykle může provádět pouze root
 | + |  | 
| − | *****Lze změnit v jádře
 | + |  | 
| − | *****Macro: int _POSIX_CHOWN_RESTRICTED
 | + |  | 
| − | ***chgrp
 | + |  | 
| − | ****změna vlastnické skupiny
 | + |  | 
| − | ****může provádět vlastník a root
 | + |  | 
| − | ***UK* Nastavování práv
 | + |  | 
| − | ****SUK* Soubor jen pro skupinu
 | + |  | 
| − | ****Vytvořte ve své domovské složce adresář 3b
 | + |  | 
| − | ****Adresář bude přístupný všem uživatelům ve skupině 3b (kterou si vytvoříte)
 | + |  | 
| − | ****Vytvořte uživatele Jakub, který bude ve skupině 3b | + |  | 
| − | ****Vytvořte uživatele Franta, který tam nebude
 | + |  | 
| − | ****Ve složce 3b vytvořte soubor ahoj.txt.
 | + |  | 
| − | ****Zařiďte, aby ho Franta mohl přečíst, nikoli však smazat, ani do něj zapisovat.
 | + |  | 
| − | ****Jakub může číst, psát, ale nemůže mazat.
 | + |  | 
| − | ***Starší
 | + |  | 
| − | *****PR* Hromadné vytváření uživatelů
 | + |  | 
| − | *****Vytvořte všechny uživatele třídy a odpovídající skupinu
 | + |  | 
| − | *****Vytvořte složku, ke které budou mít přístup všichni uživatelé systému.
 | + |  | 
| − | *****UK*
 | + |  | 
| − | *****Máme složku /var/ftp, vlastník má být root, skupina ftpusers. Vlastník všechna, skupina taktéž, ostatní jen číst
 | + |  | 
| − | *****Vytvořte složku public ve své domovském adresáři, bude přístupný kompletně všem.
 | + |  | 
| − | ******Co vypíše příkaz ls -l ~ | grep public
 | + |  | 
| − | *****Složku public z předchozího zpřístupněte pouze skupině kamaradi, ostatním uživatelům přístup zakažte.
 | + |  | 
| − | ****Zpřístupněte
 | + |  | 
| − | ***** soubor pozdrav.txt ve svém ~ ostatním uživatelům pro čtení.
 | + |  | 
| − | *****soubor vzkazy.txt ve svém $HOME ostatním i pro zápis.
 | + |  | 
| − | *****Nebudou ale moci vypsat obsah vašeho ~.
 | + |  | 
| − | *****res
 | + |  | 
| − | ******d: --x, f: r--
 | + |  | 
| − | *****UK* ??? V /etc/fstab?
 | + |  | 
| − | *****Nastavte práva pro montování disku s Windows.
 | + |  | 
| − | *****Nastavte práva pro montování disků s Novellem.
 | + |  | 
| − | **Další
 | + |  | 
| − | ***Uživatelé os: připojonání disků s uživatelskými právy, vlastník, skupina
 | + |  | 
| − | ***UK* Otázky
 | + |  | 
| − | ***Jak zjistíte, zda uživatel může soubor smazat | přejmenovat,...
 | + |  | 
| − | ***Není nastavování práv v rozporu s tím, že administrátor „může všechno“?
 | + |  | 
| − | *Rozšíření
 | + |  | 
| − | **SUID, SGID, Sticky bit
 | + |  | 
| − | ***SUID
 | + |  | 
| − | ****~ Set UID
 | + |  | 
| − | ****pro spustitelné soubory
 | + |  | 
| − | ****Program bude spouštěn s právy vlastníka programu.
 | + |  | 
| − | *****nikoli toho, kdo program spustil
 | + |  | 
| − | ****Příklad použití: 
 | + |  | 
| − | *****např. /usr/bin/passwd
 | + |  | 
| − | ****nastavení
 | + |  | 
| − | *****chmod u+s program
 | + |  | 
| − | *****POZOR!!!
 | + |  | 
| − | ******Nebezpečné, pouze velmi důvěryhodné programy.
 | + |  | 
| − | ****výpis ls -l
 | + |  | 
| − | *****-rwsr...
 | + |  | 
| − | *****s... SUID + právo spouštět
 | + |  | 
| − | *****S... SUID - právo spouštět
 | + |  | 
| − | ***SGID
 | + |  | 
| − | ****pro spustitelné soubory
 | + |  | 
| − | ****Program bude spouštěn s právyskupiny, která program vlastní
 | + |  | 
| − | ****nastavení | + |  | 
| − | *****chmod g+s program
 | + |  | 
| − | ****výpis ls -l
 | + |  | 
| − | *****?????s???
 | + |  | 
| − | *****s... SGID + právo spouštět pro skupinu
 | + |  | 
| − | *****S... SGID - právo spouštět pro skupinu
 | + |  | 
| − | ***sticky-bit
 | + |  | 
| − | ****pro adresáře
 | + |  | 
| − | *****původně zamýšlená složitější funkčnost, i pro soubory
 | + |  | 
| − | *****PR* Příklad použití
 | + |  | 
| − | *****/tmp
 | + |  | 
| − | ****vlastník souboru může soubor mazat
 | + |  | 
| − | *****neplést s vlastníkem složky
 | + |  | 
| − | ****nastavení
 | + |  | 
| − | *****chmod o+t soubor.txt
 | + |  | 
| − | *****chmod o-t soubor.txt
 | + |  | 
| − | ****výpis ????????t
 | + |  | 
| − | *****t
 | + |  | 
| − | *****T
 | + |  | 
| − | *****PR* Vyzkoušejte!
 | + |  | 
| − | *****mkdir tmp
 | + |  | 
| − | *****cd pokus
 | + |  | 
| − | *****touch student.txt
 | + |  | 
| − | *****chmod o+t tmp
 | + |  | 
| − | *****ls -l tmp
 | + |  | 
| − | *****touch moje.txt
 | + |  | 
| − | *****chown student.txt student
 | + |  | 
| − | *****ls
 | + |  | 
| − | *****su student
 | + |  | 
| − | *****rm moje.txt
 | + |  | 
| − | *****rm student.txt
 | + |  | 
| − | **umask
 | + |  | 
| − | ***nastavuje, jaká práva má mít nově vytvořený soubor
 | + |  | 
| − | ****Vlastník bude:
 | + |  | 
| − | *****ten, kdo ho vytvořil
 | + |  | 
| − | ****Skupina:
 | + |  | 
| − | *****primární skupina toho, kdo soubor vytvořil
 | + |  | 
| − | ***bity masky odečteme od základní masky
 | + |  | 
| − | ***základ
 | + |  | 
| − | ****prosoubory 666
 | + |  | 
| − | ****pro adresáře 777 | + |  | 
| − | ***standardní maska je 022
 | + |  | 
| − | *****PR* Jaká práva bude mít s touto maskou nově vytvořený
 | + |  | 
| − | *****soubor
 | + |  | 
| − | *****adresář
 | + |  | 
| − | **Jiné způsoby nastavování práv
 | + |  | 
| − | ***ACL (viz POS4) <../pos4/pos4.mm>
 | + |  | 
| − | ****POSIX
 | + |  | 
| − | ****stále jen práva rwx, ale lze jednotlivým uživatelům
 | + |  | 
| − | ***SELinux <http://www.abclinuxu.cz/clanky/bezpecnost/nebojte-se-selinuxu-1-uvod-prvni-spusteni>
 | + |  | 
| − | ****Obzvláště Fedora
 | + |  | 
| − | ***A další...
 | + |  | 
| − | ****AppArmor (Novell/SUSE)
 | + |  | 
| − | ****...
 | + |  | 
| − | **VH* Další, pokročilé
 | + |  | 
| − | ***L* Nastavení standardního shellu
 | + |  | 
| − | ***Jestliže nemáte /bin/bash nastaven jako implicitní shell, napravte to následujícím příkazem a poté spusťte BASH, protože změny se projeví až po přihlášení.
 | + |  | 
| − | ***Shelly v /bin
 | + |  | 
| − | *****PR* Např. /bin/bash
 | + |  | 
| − | ***Změna se projeví až po přihlášení.
 | + |  | 
| − | ***$ usermod -s /bin/bash $USER
 | + |  | 
| − | ***$ /bin/bash
 | + |  | 
| − | **Konfigurace systému.
 | + |  | 
| − | ***~/.profile, resp ~/bash_profile
 | + |  | 
| − | ***L* Jiné způsoby autentizace <#Freemind_Link_66015739>
 | + |  | 
| − | *Přihlašování z více počítačů (Kerberos, LDAP,...) <#Freemind_Link_116980941>
 | + |  | 
|  |  |  |  | 
|  | == Zdroje == |  | == 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] |  | * [http://www.abclinuxu.cz/clanky/navody/unixove-nastroje-5-opravneni-chmod-chown-chgrp AbcLinuxu.cz > Unixové nástroje, oprávnění, chmod-chown-chgrp] | 
V dalších kapitolách budeme mluvit o klasickém nastavování odvozenému ze systému Unix. Další možnosti: