[ Chorlya @ 24.03.2005. 03:41 ] @
Nadam se da nisam bas jako promasio forum :-/

Problem je sledeci: trbea mi mogucnost da user-i na linux sistemu (Fedora 2) menjaju password-e preko web-a (OK, znam da nije bas pametno ali...).
I to je sve vec nekako dobijeno kao resenje koje provereno radi na RH7.3 sistemu, tj. radilo je dok je sistem postojao

Sistem funkcionise na sledeci nacin:
CGI skripta (pisana u C-u i krajnje jednostavna) poziva system() f-jom bash skriptu(i prosledjuje username, password,...) koja vrsi prvo neke provere i onda poziva neki programcic ("promenilozinku") koji ustvari menja /etc/shadow fajl.

Posto taj "promenilozinku" direktno pise po shadow fajlu mora to da radi kao root, ili gresim?

Apache je pokrenut kao apache:apache.
Nisam ranije nista radio sa CGI pa me zanima da li je moguce u celoj prici pozvati "promenilozinku" kao root?
Odnosno kako treba da podesim dozvole/vlasnike na kojem fajlu da bi sve to bilo moguce, a mora biti moguce posto je vec radilo na prethodnom sistemu.

Nesto sam ja tu pokusavao ali dobijam 500 Internal Server Error, a u log-u pise da je permission denied. Ali posto se poziva vise fajlova, ne znam na kom fajlu je problem sa dozvolama.

Svaka pomoc je dobrodosla.

Thanks,
chorlya
[ misa vranje @ 02.07.2005. 02:38 ] @
Mozda i jesi promasio forum zato sto nigde u tvom pitanju i ne
spominjes perl.
Ovlascenja nad fajlovim ne moras da menjas posto je to relativno nesigurno
a verovatno i komplikovanije od mog nacina a moj nacin je:
naravno perl CGI program u kome se izvrsavaju sve te provere lozinki itd.
i da koristis modul Expect (to je perl a ne apache modul) koji kontaktira
druge aplikacije u konzoli i uz pomoc tog expect modula kontaktiras program
'su korisnik_kome_menjas_sifru' i zatim mu expect posalje sifru i onda
expect treba da kontaktira sledeci program 'passwd' i da dva puta expect unese
novu lozinku.
To je to.E sad ovo funkcionise sa svakim nacinom cuvanja sifri.Pretpostavljam
da shvatas koja je funkcija Expect modula:dvosmerna komunikacija sa
konzolnim programima.Postoji i varijanta expecta koja radi za Tcl ali bash
za C nisam siguran.

ako znas perl onda samo trazi dokumentaciju za Expect.pm na search.cpan.org