Kategória: Debian Linux

Zmenené: 25. júl 2009

Skupina wheel a PAM

Po nainštalovaní systému zistíte, že okrem vašej hlavnej skupiny (zväčša s rovnakým menom ako účet), je v systéme ešte veľa alšísch skupín. Jedna, ktorá, spolu s PAM, ponúka zaujímavé možnosti pre domáci desktop.

Mám na mysli skupinu wheel. Členom tejto skupiny je možné nastaviť určité privilégiá, ktoré tu chcem popísať. Kým ma niekto ukameňuje, upozorňujem, že toto riešenie je vyslovene nevhodné pre verejne dostupné servery, ale na domácom počítači si ho užívam. O čo ide? Určite aj Vy často používate rôzne programy, ktorých beh vyžaduje práva superadministrátora (root). Takéto spustenie programu si najprv vyžiada zadanie hesla, či už k účtu root alebo ku kľúčenke, kde je toto heslo uložené.

Vytvorenie skupiny

Po inštalácii táto skupina neexistuje. Takže prvým krokom je jej vytvorenie, pričom ju vytvoríme ako systémovú skupinu, ktorou aj je:

addgroup --system wheel
Adding group 'wheel' (GID 115) ...
Done

Príkaz vytvoril systémovú skupinu wheel a pridelil je identifikačné číslo skupiny (GID) 115. Teraz môžete pridať členov skupiny, napríklad:

addgroup slavko wheel
Pridávam používateľa slavko do ksupiny whell.
Done

Ako sám program napísal, príkaz pridal používateľa slavko do skupiny wheel. Teraz sa pozrime na čo je to dobré.

Skupina wheel

Tu práve môže pomôcť PAM (Plugable autentification modules), čiže zásuvné autentifikačné moduly, ktoré už dávno sú súčasťou GNU/Linuxových distribúcií. Konkrétne mám na mysli modul pam_wheel.so. V manuálovej stránke (pam_wheel(8)) sa môžete dočítať:

PAM modul pam_wheel je použitý na vynucovanie skupiny wheel. Predvolene povoľuje root prístup do systému, ak je žiadajúci používateľ členom skupiny wheel. Ak skupina s takým menom neexistuje, modul použije skupinu s GID 0.

Čiže nie je vyslovene nutné použitie skupiny wheel, ale je použitie mi príde výstižnejšie ako skupiny root…)

Použitie wheel a PAM

V konfiguračnom súbore PAM pre su (/etc/pam.d/su) môžete nájsť pripravené tri hlavné spôsoby použitia skupiny wheel a modulu pam_wheel. Do súboru nemusíte nič dopisovať, len stačí odkomentovať (zmazať znak # na začiatku riadku) zvolené nastavenie.

su len pre vybraných

Prvá možnosť umožňuje nastavenie, ktoré zabezpečí, že len členovia skupiny wheel môžu použiť príkaz su na získanie root práv. Na koniec je možné pridať parameter group=skupina, čím zasitíte použitie inej skupiny namiesto predvolenej (len pozor, pretože to môže spôsobiť zakázanie používateľa root, ak nie je členom danej skupiny, alebo výslovné povolenie predchádzajúcim sufficient pam_rootok.so).

auth required pam_wheel.so

alebo

auth required pam_wheel.so group=skupina

su pre vybraných bez hesla

Táto direktíva zabezpečí, že členovia skupiny wheel môžu používať su bez zadávania hesla.

auth sufficient pam_wheel.so trust

Práve toto môže byť na verejne dostupných staniciach nebezpečné. Pretože za normálny okolností musí útočník prelomiť najprv Vaše heslo a potom ešte heslo pre root, takto mu stačí prelomiť len jedno heslo.

Zakázať su vybraným

Toto nastavenie je opakom prvého, teda povolí používať príkaz su všetkým, okrem členom skupiny wheel, prípadne inej zadanej skupiny.

auth required pam_wheel.so deny

alebo

auth required pam_wheel.so deny group=nosu

A to je všetko

Možno to niekomu pomôže a možno Vás to vyprovokuje naštudovať si o PAM niečo viac. Dobrým začiatkom sú manuálové stránky, ale aj Gúgl nie je na zahodenie.