Linux shell - 3. diel
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Linux shell - 3. dielLinux shell - 3. diel

 

Linux shell - 3. diel

Google       Google       24. 1. 2007       19 870×

Vítam Vás v treťom diele seriálu Linux shell. V tomto diele sa budem snažiť priblížiť Vám základnú prácu s užívateľmi, skupinami a ich právami. Tak poďme na to.

Reklama
Reklama

Užívatelia

Každý užívateľ v systéme má v domovskom adresári, čiže v /home vlastný adresár... Každý užívateľ musí mať svoje prihlasovacie meno a heslo. Informácie o užívateľovi, či už o jeho mene, hesle a iných veciach nájdete v /etc/password. Práva na editáciu tohoto súboru má z bezpečnostných dôvodov, len root samozrejme, ale právo na čítanie je základne nastavené pre všetkých. A je to z toho dôvodu, že väčšina programov potrebuje čítať z tohoto súboru potrebné veci. V súbore /etc/passwd boli síce hesla uchovávané v šifrovanej podobe, ale užívatelia si dávali príliš slabé heslá a s veľkou úspešnosťou sa tento súbor darilo dešifrovať. Preto v dnešnýchdistribúciach heslá do daného súboru neukladajú. Na ich mieste sa nachádza znak x, alebo *. Skutočné heslá sú v súbore /etc/shadow, ktorý je prístupný len užívateľovi root.

Výpis súboru /etc/passwd:
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
dhcp:x:101:101::/nonexistent:/bin/false

Ak ste si všimli, tak ako prvá položka v súbore je uvedené meno užívateľa. V druhej položke je uvedené heslo, zaň je dosadený znak x. Ďalšia položka obsahuje UID, čiže uživawteľské identifikačné číslo. Toto číslo je v systéme unikátne, čiže nemôže sa stať, že majú dvaja užívatelia rovnaké UID. neskôr nasleduje položka s obsahom GID, čiže identifikačné číslo skupiny. Tiež sa nemôže stať, aby mali dve skupiny rovnaké GID. Za dvojbodkou nasleduje popis užívateľa, sem môžete uviesť svoje reálne meno, alebo čokoľvek chcete. Predposledná položka obsahuje domovský adresár užívateľa. Základne je nastavené /home/uživateľ. Pod poslednou položkou nájdeme interpret príkazov, základne máme BASH. Nájdeme ho v /bin/bash.

Výpis súboru /etc/shadow:

root:$1$57ZYBds9tIJHfdT/udfXDf.Kse2ssm4D0:13187:0:99999:7:::
daemon:*:13487:0:99999:7:::
bin:*:13487:0:99999:7:::
sys:*:13487:0:99999:7:::
sync:*:13487:0:99999:7:::
games:*:13487:0:99999:7:::
man:*:13487:0:99999:7:::
lp:*:13487:0:99999:7:::
mail:*:13487:0:99999:7:::
news:*:13487:0:99999:7:::
uucp:*:13487:0:99999:7:::
proxy:*:13487:0:99999:7:::
www-data:*:13487:0:99999:7:::
backup:*:13487:0:99999:7:::
list:*:13487:0:99999:7:::
irc:*:13487:0:99999:7:::
eat:$1$57TBVds4tILHfdT/sdfMQf.Iae4ssm4I0:13187:0:99999:7:::
gnats:*:13487:0:99999:7:::
nobody:*:13487:0:99999:7:::
dhcp:!:13487:0:99999:7:::

V tej chvíli keď si užívateľ vyberá svoje prístupové heslo, systém mu pridelí náhodne vygenerované číslo, čiže salt. S pomocou tohoto čísla sa zakóduje heslo, ktoré si užívateľ zvolil. Salt a zakódované heslo nájdeme v súbore /etc/shadow. Pri prihlasovaní do systému sa najprv načíta hodota salt a z jej pomocou sa zakóduje heslo, ktoré užívateľ zadal pri prihlasovaní. Ak sú výsledné reťazce rovnaké, máme prístup do systému.

Pozrime sa na na výpis /etc/shadow

V prvej položke nájdeme samozrejme užívateľské meno. V ďalšej položke sa nachádza zašifrované heslo, ktoré je v prípade účtu systémových účtov nahradené znakom "*", alebo "!". našom prípade je to "*". Ďalej je definovaný počet dňov od poslednej zmeny hesla. Pokiaľ je tam nastavená nula, užívateľ si môže heslo meniť ľubovolne. Nasleduje počet dňí po ktorých musí užívateľ heslo zmeniť, pokiaľ je nastavené 99999, užívateľ heslo nemusí vôbec meniť. Hneď za tým sa nachádza položka, ktorá uvádza koľko dní pred vypršaním hesla bude o tom podaná správa užívateľovi. Posledná položka obsahuje na koľko dní chceme konto zablokovať, väčšinou zostáva prázdna.

Skupiny

Keby som mal uviesť krátku definíciu povedal by som, že to sú skupiny užívateľov, ktorým majú byť poskytnuté rovnaké pracovné podmienky v systéme. Môžeme napríklad vytvoriť skupinu užívateľov, ktorá bude mať prístup ku kancelárskym balíkom a nebude mať prístup k multimédiám. Každý užívateľ musí patriť aspoň do jednej skupiny užívateľov, môže patriť aj do desiatich skupín. Takýmto spôsobom sa dajú pomerne dobre kombinovať práva užívateľov.

Všetky informácie o skupinách a ich členoch sa nachádzajú v /etc/group:
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:lam1ca
tty:x:5:
disk:x:6:
lp:x:7:cupsys
mail:x:8:
news:x:9:
uucp:x:10:
man:x:12:
proxy:x:13:
kmem:x:15:
dialout:x:20:cupsys,lam1cka
fax:x:21:
voice:x:22:
cdrom:x:24:haldaemon,lam1cka
floppy:x:25:haldaemon,lam1cka

V prvej položke sa nachádza označenie skupiny, teda jej názov. Ďalej vidíme heslo skupiny a identifikačné číslo GID. Za poslednou dvojbodkou sa nachádza zoznam užívateľov, ktorý do tejto skupiny patria. Systém automaticky vytvára niekoľko skupín, do ktorých automaticky zaraďuje niektorých užívateľov.

Pridanie užívateľského účtu

Spôsobom ako vytvoriť užívateľský účet je niekoľko. Môžeme ich rozdeliť do dvoch základných skupín. Vytvorenie užívateľa pomocou GUI - Grafického prostredia, alebo pomocou shell. V tomto seriáli sa zaoberáme shellom, tak grafický režim vynecháme. Prvý krok bude prihlásenie sa za užívateľa root, vykonáme príkazom su. Na vytvorenie účtu použijeme príkaz useradd.

$ useradd [-D] [-g skupina] [-b domovsky adresár] [-s shell]
V niektorých distribúciach stačí zadať:
 "useradd eat -g multimedia -b /home/eat

Pridali sme užívateľa eat, ktorý patrí do skupiny multimédiá, domovský adresár sa nachádza v /home/eat. Vo väčšine distribúcii je shell nastavený BASH.

Pridanie skupiny

Rovnako ako môžeme vytvárať/odstraňovať užívateľov, tak jednoducho môžeme aj vytvárať/odstraňovať skupiny. Na vytváranie skupín existuje príkaz groupadd.

$ groupadd [-g GID] [-r] [-f] názov skupiny

Parameter -g definuje číslo skupiny. Toto číslo musí byť v systéme jedinečné.

Odstranenie užívateľov/skupiny

Na odstránenie užívateľov existuje príkaz userdel a na odstránenie skupiny groupdel. Napríklad: userdel eat, groupdel multimedia.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

4 názory  —  4 nové  
Hlasování bylo ukončeno    
0 hlasů
Google
autor programuje v C++, zaujima sa o bezpečnosť a predovšetkym o linux, rad študuje nove veci v oblasti IT a športuje.

Nové články

Obrázek ke článku RAD Studio a Windows Store

RAD Studio a Windows Store

RAD Studio je první vývojové prostředí se zabudovanou podporou balení aplikací typu Win32 a Win64 pro jejich umístění a šíření prostřednictvím Windows 10 Store.

Reklama
Reklama
Obrázek ke článku Testujte na 2 400+ Android a iOS zařízení

Testujte na 2 400+ Android a iOS zařízení

V dnešní době, kdy většina softwaru pro mobilní aplikace je tvořena a distribuována průběžně, mnohdy do celého světa je třeba zajistit také průběžnou automatizaci testování mobilního softwaru. V případě mobilních aplikací pro Android a iOS začíná být problém, jak testovat na obrovském množství kombinací HW variant, rozměrů, edic operačních systémů různých výrobců v různých částech světa na reálných zařízení. Simulátory a emulátory nejsou většinou to pravé. Pokud již testuji, jak si udělat vlastní beta distribuci opravdovým reálným testerům napříč platformami?

Obrázek ke článku Funkcie main vo Windows API

Funkcie main vo Windows API

V tretej časti seriálu o Windows API budeme hovoriť o funkčných prototypoch main. Funkčný prototyp je tvorený názvom funkcie a typom signatúry, pričom sa vynecháva telo funkcie. 

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý