Zadejte hledaný výraz...

Linux command via PHP

Denis Ulmann
verified
rating uzivatele
(9 hodnocení)
16. 7. 2013 01:14:22
Zdravím,
nemá tady někdo zkušenosti s ovládáním linuxu přes PHP? Potřebuju vědět, jak na multiple command při správě FTP účtu (když měním heslo, chce to po mě nové heslo a nové heslo znovu). Zkouším to přes proc_open() bezvýsledně
$descriptorspec = array(
0 => array('pipe', 'r'),
1 => array('pipe', 'w'),
2 => array('pipe', 'a')
);
$process = proc_open("pure-pw passwd test", $descriptorspec, $pipes);
if (is_resource($process)) {
fwrite($pipes, $password);
fwrite($pipes, $password);
fclose($pipes);
proc_close($process);
}
taky jsem zkoušel popen() bezvýsledně
$pp = popen("pure-pw passwd test", "w");
fwrite($pp, $newPassword . 'n');
fwrite($pp, $newPassword . 'n');
pclose($pp);
16. 7. 2013 01:14:22
https://webtrh.cz/diskuse/linux-command-via-php#reply923202
dej si uzivatele do SQL nebo jiny DB a budes mit o starost min.
16. 7. 2013 01:23:27
https://webtrh.cz/diskuse/linux-command-via-php#reply923201
James_Scott
verified
rating uzivatele
(7 hodnocení)
16. 7. 2013 02:27:58
Určitě lepší mít uživatele v SQL nebo LDAP. Když bys trval na tvém řešení,použil bych příkaz usermod s příslušným parametrem pro změnu hesla (myslim že se to neptá dvakrát).
16. 7. 2013 02:27:58
https://webtrh.cz/diskuse/linux-command-via-php#reply923200
Martin
verified
rating uzivatele
16. 7. 2013 08:40:22
Na to existuje v mnoha jazycích emulátor obsluhy terminálu s jméneme expect, třeba pyExpect v Pythonu nebo TCL expect pro bash či expect pro ruby, php je na takovéto věci nevhodné a expect tuším nemá!
16. 7. 2013 08:40:22
https://webtrh.cz/diskuse/linux-command-via-php#reply923199
Denis Ulmann
verified
rating uzivatele
(9 hodnocení)
16. 7. 2013 18:02:13
Díky za odpovědi, nejspíše přistoupím na tu sql, ale ještě se zeptám na jeden nápad, co mě dneska napadl. Co takhle spustit nějaký .sh soubor (nebo jaké ty přípony na linuxu všechny jsou), který by v sobě měl script na změnu toho hesla? Myslím to tak, že bych v PHP ten soubor jen vytvořil a potom přes exec jen spustil s nějakými args, má cenu se tím zaobírat, nebo dojdu k tomu, že to nejde a nemá to smysl? Díky.
16. 7. 2013 18:02:13
https://webtrh.cz/diskuse/linux-command-via-php#reply923198
Pouzivani exec, a vsech podobnych funkcni je akorat tak dira na pristup do serveru :)
16. 7. 2013 18:10:29
https://webtrh.cz/diskuse/linux-command-via-php#reply923197
Denis Ulmann
verified
rating uzivatele
(9 hodnocení)
16. 7. 2013 18:52:10
To můžu říct i o PHP samotném hele..
16. 7. 2013 18:52:10
https://webtrh.cz/diskuse/linux-command-via-php#reply923196
Dominique
verified
rating uzivatele
(5 hodnocení)
16. 7. 2013 21:19:51
pridavat uzivatele do db nepomuze, protoze uzivatele v db nejsou ti sami, co jsou opravneni spoustet prikazy v unixovych systemech.
resi se to pres /etc/sudoers
@grancy proto je vzdy lepsi spoustet python nebo perl skripty s tim, ze to webserver umozni
16. 7. 2013 21:19:51
https://webtrh.cz/diskuse/linux-command-via-php#reply923195
Bluemoon: 99% dnesnich FTP umi uzivatele v MySQL s tim ze FTP locknou na jeho slozku, nedostane se tedy mimo ... pak to samozrejme v ramci bezpecnosti vyzaduje opatreni na strane webserveru, atd ... ale je to jedno z nejbeznejsich reseni.
Dalsi cisty reseni bez nutnosti volat shell a funkcni v PHP je pouziti LDAP pro systemovy uzivatele a FTP/system nakonfigurovat aby bral uzivatele takto.
Nastaveni webserveru aby poustel perl nebo python scripty jenom kvuli nejaky zmene hesla je u "beznych administratoru - rozumej tim lidi co si nainstaluji LAMP a tim to hasne :D" stejne tak "bezpecny" jako povolovat exec a spol v PHP
16. 7. 2013 21:29:42
https://webtrh.cz/diskuse/linux-command-via-php#reply923194
Dominique
verified
rating uzivatele
(5 hodnocení)
16. 7. 2013 21:43:49
zrovna LDAP v linuxu neni nejbeznejsi reseni a vyzaduje zvlastni stroj a zvlastni peci, takze je uplne out.
ani FTP uzivatele a databazovi uzivatele nejsou ti, co jsou opravneni spoustet procesy.
LDAP je zbytecnost na tohle, kdyz se to da elegantne vyresit jednim radkem pres sudoers.
Uz asi vim, kam mirite, ze FTP uzivatele mohou mit pres databazi pridelene UID a GID, ale to nemusi byt vzdy spasou, rozhodne to ale vyzaduje synchronizaci s DB. tedy vytvori se novy uzivatel na FTP,pak se vytvori i privilegia na DB.
16. 7. 2013 21:43:49
https://webtrh.cz/diskuse/linux-command-via-php#reply923193
James_Scott
verified
rating uzivatele
(7 hodnocení)
17. 7. 2013 04:33:25
LDAP neni v Linuxu nejbeznejsi reseni? EH??
Uzivatele muzou byt v SQL a zalezi na konfiguraci serveru:
1) Nakonfiguruje se pouze FTP aby overovalo (virutalni) uzivatele vuci SQL
2) nakonfiguruje se PAM a NSS aby overovalo uzivatele vuci SQL -> mohou se pak klasicky prihlasovat pres SSH,SFTP,spoustet prikazy, mit domovsky adresare,atd..
3) kombinace moznosti 1 + LDAP pro systemove, jak psal gransy
17. 7. 2013 04:33:25
https://webtrh.cz/diskuse/linux-command-via-php#reply923192
Pro odpověď se přihlašte.
Přihlásit