HPC2009 - pam_mkhomedir, pam_script es tarsai

Az ugy van, hogy a HPC2009 nem rendelkezik onallo felhasznaloi adatbazissal, hanem az az elte-iig kozponti aai ala van berendelve. Magyaran, caesaros userrel lehet ra belepni.
Viszont a usernek caesartol fuggetlen, onallo home dirje van. Akkor azt megis hogyan?

Ldap-ban van a user es a csoportja. Ha a user resze a hpc csoportnak, akkor belephet a hpc2009-re. Idaig oks. Es van egy /users/ ami (mellesleg xfs) eleg nagy hely. Oda kene legyartani a felhasznalo home directoryjat. A jogosultsag kiadas szervezetileg eleg messze van a HPC uzemeltetestol (tolem) es nem is akarok minden egyes usernel 3 parancsot kiadni pluszban, valamint az erosen gepesitett userkiado ugyementbe sem akarok plusz programokat injektalni. Maradjunk annyiban, hogyha a usernek van joga belepni, es meg nincs homedirje, akkor egy sablon alapjan keszuljon neki automatikusan egy.

Pont erre szolgal a pam_mkhomedir.
De kellene quotat adni neki, egyik csoportba tartozoaknak nagyot, masik csoportba tartozoaknak kicsit. Nincs erre kesz megoldas. Irjunk pam modult? Modositsuk a pam_mkhomedir-t? vegyunk egy olyan pam modult, ami kepes scriptet futtatni, es irjuk meg scriptben? Bingo. irjuk meg scriptben, a rendszergazda eszkoze a script, nem pedig a c.
pam_script, pont erre valo, milyen kar, hogy nincs debian/lenny alatt. Van sidben. Backportoljuk. Oks. tul bonyi, tul nagy. Nahat, az alapcsomagban is van pam_exec. Egyetlen parancsot tud futtatni. Nekem pont egy parancs kell.
Akkor megirom pam_exec altal hivott scriptben. Tehat letorlom a pam_script backportolt csomagjat. oks.
De, ha mar a quota hozzarendelest megirom scriptben, akkor abba igazan belefer egy 'mkdir' parancs is. Sot, ott van jo helye. Akkor kidobjuk a pam_mkhomedir -t is.
Kesz.


eval HOMEDIR=~$PAM_USER/
if [ "$HOMEDIR" = "~$PAM_USER/" ] ; exit 0 ; fi 

mielott nekiallna valaki getpwent(3) shell wrappert irni...

Hozzászólások

Hát, amiket kutyulsz azzal a géppel...