Uživatel je osoba, která má v linuxu zřízen uživatelský účet, tedy obdržela určitá práva k přístupu do systému pomocí uživatelského jména (login) a hesla (password).
Uživatele do systému přidává správce (root). Pro konkrétnío uživatele může nastavit poměrně přesně definovatelný soubor práv, přiřadit jej k určitým skupinám (group), které rozšiřují uživatelovo oprávnění o další možnosti.
Uživatelské jméno je trvalé, heslo může být nastaveno dočasné a uživatel si ho v tom případě musí periodicky měnit (je na to předem upozorněn). Pokud to neudělá včas, je mu přístup do systému zablokován.
Systém vytvoří pro každého uživatele tzv. domovskou složku v adresáři /home. Uživatel s přihlašovacím jménem jarda tedy bude mít vlastnická práva na složku /home/jarda a všechny podadresáře a soubory v ní uložené. Do složky /home/pepa se ovšem nedostane, ledaže by pepa umožnil nastavením nějakého podadresáře pro čtení nebo dokonce zápis všem.
Systém uživatele nerozlišuje podle uživatelského jména, ale podle tzv. UID (User Identification Digit), identifikačního čísla uživatele. Z toho plyne několik souvislostí např. při instalaci nových verzí nebo jiné distibuce.
Přepnete se do terminálu nebo do Konzoly (v KDE je v menu Nástroje/Konzole), což je emulátor terminálu a přihlásíte se jako správce.
Spustíte program useradd (nebo adduser, což je totéž). Jméno si snad zapamatujete - user = uživatel, add = anglicky přidat. Jde o prográmek vyskytující se snad v každé linuxové distribuci. Bez parametrů vám vypíše možnosti. Vy zadáte:
useradd prihlasovaci_jmeno_uzivatele
tedy například useradd pepa
V tu chvíli se podívejte do /home, a uvidíte, že vznikl nový podadresář /home/pepa, což je pepův domovský adresář. Do nového adresáře byly zkopírovány soubory z /etc/skel.
POZOR!! Pokud současně s uživatelem nezadáte heslo, příkaz vytvoří v /etc/passwd místo hesla hvězdičku a uživatel tím bude zablokován. Lepší je tedy zadat useradd přímo s parametry, které nastaví co třeba nebo vzápětí použít příkaz passwd.
Příklad:
useradd -c "Josef Kaspar" -d /home/pepa -s /bin/bash -g users pepa
což vytvoří uživatele s přihlašovacím jménem pepa, vytvoří domovský adresář /home/pepa, plné jméno v GECOS poli Josef Kaspar, primární shell bude /bin/bash, přidá ho do skupiny users v /etc/group
Chcete-li pro pepu zadat i nějaké výchozí heslo, nazvat domovský adresář jinak, nastavit vypršení hesla po určité době atd atd, využijte parametrů, které jsou popsány zde.
zajistí příkaz userdel (user = uživatel; del=zkratka delete, mazat). Jako správce napíšete:
userdel -r pepa
a v systému přestane existova uživatel pepa a díky parametru “-r“ také jeho domovský adresář. Další dostupné informace o příkazu userdel
jsou uvedeny zde
Pro tuhle potřebu je zde prográmek usermod (user=uživatel; mod=zkratka od modify, tedy změnit).
Pomocí usermod můžete změnit jakoukoli položku v nastavení uživatele; od zákazu přístupu, přes změnu domovského adresáře, hesla až třebas po změnu přihlašovacího jména. Přehled parametrů najdete zde.
Vedle univerzálně použitelného usermod můžete pro některé jednotlivé a časté změny použít jednoúčelové příkazy, jako jsou:
passwd - pro změnu hesla aktuálního uživatele
chage - pro nastavení data, kdy vyprší platnost hesla zadaného uživatele
newgrp - pro nastavení nové výchozí skupiny do ní patří uživatel, platí pro všechny nově vytvořené soubory
je v systému linux všemocná osoba s právy k čemukoli. Může cokoli v systému změnit, přenastavit, vytvořit, smazat atd atd. Proto je velmi rozumné VYUŽÍVAT SPRÁVCOVSKÝ ÚČET POUZE K NUTNÝM NASTAVENÍM SYSTÉMU, a běžnou práci vykonávat jako řadový uživatel. Vyhnete se tak mnoha možným rizikům a těžkostem.
Účet správce (root) je vytvořen při instalaci systému, při instalaci jste také vyzváni k přiřazení hesla a dalších základních nastavení. Další podrobnosti o účtu roota jsou zde
groupadd jmeno_skupiny vytvoří novou skupinu
groupdel jmeno_skupiny smaže skupinu
groupmod -n new_group_name old_group_name přejmenuje skupinu
je program zajišťující přidání nového uživatele do systému
Program upravuje a mění soubor /etc/passwd.
useradd -c „Name Surname“ -g admin -d /home/user1 -s /bin/bash user1 vytvoří nového uživatele a přiřadí ho do skupiny „admin“
useradd user1 vytvoří nového uživatele
Použití: useradd [parametry] přihlašovací_jméno
Parametry:
-b, –base-dir BASE_DIR základní adresář pro nového uživatele, obvykle /home
-c, –comment COMMENT nastaví položku GECOS pro nového uživatele (komentář)
-d, –home-dir HOME_DIR domovský adresář uživatele (obvykle podadresář v /home)
-D, –defaults zobrazí nebo uloží změny jako defaultní (výchozí) konfiguraci useradd
-e, –expiredate EXPIRE_DATE nastaví vypršení platnosti účtu do EXPIRE_DATE
-f, –inactive INACTIVE nastaví časově omezenou platnost hesla do doby uvedené v INACTIVE
-g, –gid GROUP přiřazení uživatele příslušné skupině (skupinám)
-G, –groups GROUPS seznam skupin v nichž je uživatel zařazen
-h, –help zobrazí nápovědu (anglicky)
-k, –skel SKEL_DIR specify an alternative skel directory
-K, –key KEY=VALUE přepíše výchozí /etc/login.defs
-m, –create-home vytovří domovský adresář pro nového uživatele
-M nevytvoří domovský adresář pro nového uživatele
-n nevytvoří skupinu stejného jména jako uživatel
-o, –non-unique vytvoří uživatele se stejným UID, které je v systému již použito
-p, –password HESLO použije pro nového uživatele zadané heslo
-r vytvoří systémový účet
-s, –shell SHELL definuje přihlašovací shell pro nového uživatele
-u, –uid UID nastaví UID uživatele „natvrdo“
příkaz mění soubory související s přístupem do systému a maže všechny položky související s příslušným uživatelským jménem. Aby vše proběhlo správně, musí zadávané přihlašovací jméno existovat.
userdel -r user1 smaže uživatele ('-r' odstraní i domovský adresář)
Syntaxe: userdel [-r] přihlašovací_jméno_uživatele
Parametry:
-r Soubory v uživatelově domovském adresáři budou smazány, stejně tak uživatelův adresář pro došlou poštu adt. Uživatelovy soubory umístěné na jiných místech systému musí být nalezeny a smazány ručně.
Soubory, které userdel mění:
/etc/group informace o účtech skupin
/etc/passwd informace o účtech uživatelů
/etc/shadow bezpečnostní informace u účtech uživatelů (hesla ap)
Návratové kódy:
0 úspěšný průběh
1 nelze aktualizovat soubor s hesly
2 nesprávný syntaxe příkazu
6 uvedený uživatel neexistuje
8 uživatel je momentálně připojen
10 nelze aktualizovat soubor /etc/group
12 nelze odstranit domovský adresář
UPOZORNĚNÍ
userdel nemůže odebrat účet uživatele, který je přihlášen. Uživatel musí být nejdříve odpojen.
je příkaz pro změnu uživatelského konta
usermod [-c kommentář] [-d home_dir [-m ]] [-e datum_expirace] [-f inactive_days] [-g úvodní_skupina][-G skupina1 [ ,skupina2,… , [skupinaN] [-a] ]] [-l přihlašovací_jméno] [-p heslo] [-s shell][-u uid [-o ]] [-L -U] jméno
usermod -c „User FTP“ -g system -d /ftp/user1 -s /bin/nologin user1 změní atributy uživatele
PARAMETRY
-c comment Nastaví položku komentáře v souboru hesel uživatelů na novou hodnotu. Normálně ji lze modifikovat pomocí utility chfn.
-d home_dir Nastaví nový domovský adresářThe user's new login directory. Společně s parametrem -m vytvoří nový adresář a obsah současného domovského adresáře do něj přesune a pokud neexistuje, pak vytvoří prázdný.
-e expire_date V zadané datum přestane být uživatelský účet aktivní. Datum musí mít formát RRRR-MM-DD, tedy např. 2008-04-01 pro 1. duben 2008.
-f inactive_days Číslo zde zadané uvádí, po kolika dnech přestane být platné příhlašovací heslo a účet s nezměněným heslem bude zakázán. Hodnota 0 zakáže účet záhy po vypršení hesla, hodnota -1 tuto vlastnost zakáže. Defaultní hodnota je -1.
-g initial_group Názvy skupin nebo jejich čísla (GID) v nichž je uživatel přihlášen. Jméno a skupina musí existovat. Číslo skupiny musí existovat a odkazovat na existující skupinu. Defaultní číslo skupiny je 1.
-G group1[ ,group2,…, [groupN]]]
Seznam podporovaných skupn a jejich čísel připojených k uživateli. Skupiny jsou odděleny čárkou, mezery nejsou uvažovány. Zakázené skupiny lze definovat parametrem -gn. Jestliže není současný užiatel ve výpisu skupin uveden, uživatel byl ze skupiny odebrán. Toto chování lze zakázet změnou nastavení pomocí parametru -a, čímž bude uživatel přidán do současného podporovaného seznamu skupin.
-l login_name Provede změnu přihlašovacího jméha pro zadaného uživatele. Nic jiného změněho nebude. Je na zvážení, zda nezměnit také název domovského adresáře podle jméha uživatele.
-L Uzamkne uživatelské heslo, přidá příznak “!“ před heslo, čímž zakáže jeho použití. Nelze použít současně s parametry -p nebo -U.
-o Parametr umožní změnit UID na neunikátní hodnotu.
-p passwd The encrypted password, as returned by crypt(3).
-s shell Jméno přihlašovacího shellu uživatele. Nastavení této položky bez hodnoty způsobí načtení defaultního přihlašovacího shellu.
-u uid Číselná hodnota uživatelského ID. Tato hodnota musí být v systému unikátní, pro neunikátní UID použijte parametr -o. Hodnota nesmí být záporná. Hodnoty 0 a 999 jsou obvykle rezervovány pro systémové účty. Soubory patřící uživateli umístěné v adresářovém stromu počínajíce domovským adresářem uživatele budou automaticky přiřazeny uživateli nového UID. Soubory mimo tent adresářový strom musí být nastaveny ručně.
-U Odemkne uživatelské heslo. Odejme příznak '!' zapsaný před uloženým heslem. Nelze použít společně s parametry -p nebo -L.
usermod neprovede žádné změny u aktuálně přihlášeného uživatele. Musíte také nejprve ukončit všechny procesy spuštěné uživatelem (nebo běžící pod jeho UID) dříve, než změníte uživatelovo UID.
Záznamy uživatele v tabulce crontab je nutné provést ručně.
Ručně musíte provés změny vlastníka jakéhokoli procesu ručně. Musíte také provést potřebné změny v nastavené NIS pro NIS server.
které příkaz mění
/etc/passwd user account information
/etc/shadow secure user account information
/etc/group group account information
změna uživatelského hesla
passwd [-k] [-l] [-u [-f]] [-d] [-n min_dnů] [-x maxdnů] [-w varování_dnů] [-i neaktivní_dnů] [-S][–stdin] [uživatelské_jméno]
passwd změní heslo
passwd user1 změní heslo uživatele user1 (může využít jen root)
passwd ukládá aktualizované heslo.
passwd je konfigurován pro práci s Linux-PAM API. Nutně se spouští jako služba „passwd“ s Linux-PAM a utilitami konfigurovanými moduly pro autentizaci uživatelského hesla a jeho aktualizace.
Jednoduchý zápis v konfiguračním souboru služby Linux-PAM může obsahovat:
# passwd service entry that does strength checking of a proposed password before updating it.
# passwd password requisite \ /usr/lib/security/pam_cracklib.so retry=3
# passwd password required \ /usr/lib/security/pam_unix.so use_authtok
Pro koretní funkci programu nejsou zapotřebí žádné další moduly.
-k is used to indicate that the update should only be for expired authentication tokens (passwords); the user wishes to keep their non-expired tokens as before.
-l This option is used to lock the specified account and it is available to root only. The locking is performed by rendering the encrypted password into an invalid string (by prefix ing the encrypted string with an !).
–stdin This option is used to indicate that passwd should read the new password from standard input, which can be a pipe.
-u This is the reverse of the -l option - it will unlock the account password by removing the ! prefix. This option is available to root only. By default passwd will refuse to create a passwordless account (it will not unlock an account that has only “!“ as a password). The force option -f will override this protection.
-d This is a quick way to disable a password for an account. It will set the named account passwordless. Available to root only.
-n This will set the minimum password lifetime, in days, if the user's account supports pass word lifetimes. Available to root only.
-x This will set the maximum password lifetime, in days, if the user's account supports pass word lifetimes. Available to root only.
-w This will set the number of days in advance the user will begin receiving warnings that her password will expire, if the user's account supports password lifetimes. Available to root only.
-i This will set the number of days which will pass before an expired password for this account will be taken to mean that the account is inactive and should be disabled, if the user's account supports password lifetimes. Available to root only.
-S This will output a short information about the status of the password for a given account. Available to root user only.
Protect your password.
Don't write down your password - memorize it. In particular, don't write it down and leave
it anywhere, and don't place it in an unencrypted file! Use unrelated passwords for systems
controlled by different organizations. Don't give or share your password, in particular to
someone claiming to be from computer support or a vendor. Don't let anyone watch you enter
your password. Don't enter your password to a computer you don't trust or if things Use the
password for a limited time and change it periodically.
Choose a hard-to-guess password.
passwd will try to prevent you from choosing a really bad password, but it isn't foolproof;
create your password wisely. Don't use something you'd find in a dictionary (in any lan‐
guage or jargon). Don't use a name (including that of a spouse, parent, child, pet, fantasy
character, famous person, and location) or any variation of your personal or account name.
Don't use accessible information about you (such as your phone number, license plate, or
social security number) or your environment. Don't use a birthday or a simple pattern (such
as backwards, followed by a digit, or preceded by a digit. Instead, use a mixture of upper
and lower case letters, as well as digits or punctuation. When choosing a new password,
make sure it's unrelated to any previous password. Use long passwords (say 8 characters
long). You might use a word pair with punctuation inserted, a passphrase (an understandable
sequence of words), or the first letter of each word in a passphrase.
These principles are partially enforced by the system, but only partly so. Vigilence on your part
will make the system much more secure.
On successful completion of its task, passwd will complete with exit code 0. An exit code of 1
indicates an error occurred. Textual errors are written to the standard error stream.
Linux-PAM (Pluggable Authentication modules for Linux).
Note, if your distribution of Linux-PAM conforms to the Linux Filesystem Standard, you may find the
modules in /lib/security/ instead of /usr/lib/security/, as indicated in the example.
/etc/pam.d/passwd - the Linux-PAM configuration file
chage -E 2005-12-31 user1 nastaví kdy vyprší heslo uživatele user1
příkaz pro změnu popisných informací o uživateli
chfn -f plné jméno uživatele
chfn -p telefon do kanceláře
chfn [ -f full-name ] [ -o office ] [ -p office-phone ] [ -h home-phone ] [ -u ] [ -v ] [ username ]
chfn ukládá změny o uživateli. Tyto informace jsou uloženy v souboru /etc/passwd, a jsou zobrazovány programem finger.
Příkaz finger zobrazí informace měněné příkazem chfn. Lze zobrazit pět položek: plné jméno, název pracovniště a telefon a soukromý telefon.
V interaktivním režimu zobrazí chfn požadovanou položku a umožní vložit novou informaci, nebo ponechat původní. Pokud není zadáno/zobrazeno nic, zůstane hodnota prázdná. Vložíte-li do parametru „none“, hodnota bude vymazána.
-f, –full-name uloží plné jméno uživatele
-o, –office číslo kanceláře
-p, –office-phone číslo telefonu do kanceláře
-h, –home-phone soukromý telefon
-u, –help vypíše nápovědu
-v, –version vypíše informaci o verzi programu
příkaz pro změnu přihlašovacího shellu
NAME
chsh - change your login shell
SYNOPSIS
chsh [ -s shell ] [ -l ] [ -u ] [ -v ] [ username ]
DESCRIPTION
chsh is used to change your login shell. If a shell is not given on the command line, chsh prompts for one.
VALID SHELLS
chsh will accept the full pathname of any executable file on the system. However, it will issue a warning if the
shell is not listed in the /etc/shells file. On the other hand, it can also be configured such that it will only
accept shells listed in this file, unless you are root.
OPTIONS
s, –shell
Specify your login shell.
l, –list-shells
Print the list of shells listed in /etc/shells and exit.
u, –help
Print a usage message and exit.
v, –version
Print version information and exit.
pwck ověří správnost souboru '/etc/passwd' a existenci uživatelů
je příkaz pro změnu přihlášeného uživatele.
Například je přihlášen pepa, ale potřeboval by nahlédnout do domovského sdresáře své ženy pepiny. Použije příkaz su takto:
su pepina
zadá její heslo které se nevypisuje na obrazovu (bezp. opatření proti odečtení počtu znaků hesla) a potvrdí enterem.
Tím se v Konzoli či terminálu stala z pepy pepina a všechny příkazy a programy budou fungovat, jako by je spustila pepina, vytvořené soubory budou patřit pepině atd atd.
Zadáte-li příkaz su bez parametrů, v dalším kroku je očekáváno heslo správce. Pokud ho zadáte, pak se stanete správcem (rootem).
Zde se především používá obdoba příkazů user*, tedy group* s obdobnou funkcí.
je příkaz pro vytvoření nové skupiny. Upravuje soubor /etc/group.Příkaz groupadd vytvoří účet nové skupiny s použitím hodnot zadaných v příkazovém řádku nebo přednastavených systémem. Nová skupna bude vložena do potřebných systémových souborů.
groupadd [-g gid [-o ]] [-f] [-r] [-K KEY=VALUE] skupina
-f tato volba způsobí uspěšné ukončení příkazu v případě, že zadávaná skupina již existuje. Společně s parametrem -g, je-li zvolen již použitý GID, bude vybrán a použit nejbližší (unikátní) GID (např. -g je vypnutý).
-g GID zadaný GID je číselná hodnota stanovující ID skupiny. Hodnota musí být jedinešná, v opačném případě použijte parametr -o. Hodnota nesmí být záporná.
Protože hodnoty 0 až 499 jsou používány pro systémové účty, použijte číslo 500 a větší a zároveň větší než největší ID číslo skupiny již použité.
-K KEY=HODNOTA Přepíše v /etc/login.defs defaultní hodnoty (GID_MIN, GID_MAX a další). Vícenásobné použití parametru -K může například vypad takto:
-K GID_MIN=100 -K GID_MAX=499
Poznámka: -K GID_MIN=10,GID_MAX=499 nebude fungovat.
-o přidá skupinu s již použitým (neunikátním) GID
-r se používá pro vytvoření systémového účtu. Bude automaticky vybrán a použit přvní nepoužitý GID nižší než 499 pokud není současně využit parametr -g.
/etc/group group account information
/etc/gshadow secure group account information
0 úspěch
2 špatná syntaxe programu
3 zadána špatná hodnota parametru
4 GID není jedinečný (není-li použit parametr -o)
9 název skupiny není jedinečný
10 nelze aktualizovat soubor skupin ( /etc/group )
grpck ověří správnost souboru '/etc/group' a existenci skupin
newgrp group_name přihlásí se do nové skupiny, změní výchozí skupinu nově vytvářených souborů