Comando shell da PHP [Risoltissimo]
Comando shell da PHP [Risoltissimo]
Ciao,vorrei sapere come lanciare un comando,precisamente /etc/init.d/squid3 restart da una pagina php con exec() o roba simile...ovviamente quel comando ha bisogno di privilegi di root,qualche idea ?
Ultima modifica di some0ne il mercoledì 7 ottobre 2009, 11:11, modificato 1 volta in totale.
Re: Comando shell da PHP
ti basta creare un file con dentro la tua password
per esempio creiamo un file chiamato pass all'interno della tua home
ora nel tuo file php inserisci
per esempio creiamo un file chiamato pass all'interno della tua home
ora nel tuo file php inserisci
Codice: Seleziona tutto
<?php
shell_exec('sudo -u root -S /etc/init.d/squid3 restart < /home/$User/pass');
?>
>> Quando avete risolto un problema, mettete [Risolto] nel titolo del primo post <<
L'immaginazione è più importante della conoscenza. La conoscenza è limitata, l'immaginazione abbraccia il mondo. Albert Einstein
L'immaginazione è più importante della conoscenza. La conoscenza è limitata, l'immaginazione abbraccia il mondo. Albert Einstein
- dirty_paul
- Prode Principiante
- Messaggi: 235
- Iscrizione: mercoledì 28 gennaio 2009, 18:16
Re: Comando shell da PHP
...scusate mi intrometto anche io nella discussione.
Per esegiore comando o script con privilegi di root esempio:
voglio eseguirlo su una pagina php non da root:
tutto ok,
se voglio farlo da root?
Per esegiore comando o script con privilegi di root esempio:
Codice: Seleziona tutto
sudo lshw -html
Codice: Seleziona tutto
<?php
echo shell_exec('lshw -html');
?>
tutto ok,
se voglio farlo da root?
Re: Comando shell da PHP
lo ha scritto Valix sopra..dirty_paul ha scritto: ...scusate mi intrometto anche io nella discussione.
Per esegiore comando o script con privilegi di root esempio:
voglio eseguirlo su una pagina php non da root:Codice: Seleziona tutto
sudo lshw -html
Codice: Seleziona tutto
<?php echo shell_exec('lshw -html'); ?>
tutto ok,
se voglio farlo da root?
Codice: Seleziona tutto
echo shell_exec('sudo -S lshw -html < file_che_contiene_la_password');
- dirty_paul
- Prode Principiante
- Messaggi: 235
- Iscrizione: mercoledì 28 gennaio 2009, 18:16
Re: Comando shell da PHP
...esatto, ma non mi funziona
Re: Comando shell da PHP
l'ho provato adesso e a me funziona.. mi stampa tutto l'output :-\dirty_paul ha scritto: ...esatto, ma non mi funziona
- dirty_paul
- Prode Principiante
- Messaggi: 235
- Iscrizione: mercoledì 28 gennaio 2009, 18:16
Re: Comando shell da PHP
a me continua a non funzionare
...non so.
forse dipende dai privilegi utente www-data?
...non so.
forse dipende dai privilegi utente www-data?
Re: Comando shell da PHP
io l'ho eseguito direttamente con il comando php in effetti.. comunque sì, assicurati che il file sia leggibile da www-data, dovrebbe essere quello il problema.dirty_paul ha scritto: a me continua a non funzionare
...non so.
forse dipende dai privilegi utente www-data?
EDIT: beh, ma adesso che ci penso.. www-data non è tra i sudoers.. lo devi aggiungere
Ultima modifica di ReMichael il martedì 6 ottobre 2009, 23:29, modificato 1 volta in totale.
- dirty_paul
- Prode Principiante
- Messaggi: 235
- Iscrizione: mercoledì 28 gennaio 2009, 18:16
Re: Comando shell da PHP
e infatti come immaginavo.
era l'ultima prova che volevo fare ed infatti funziona.
comunque grazie
una domanda:
mettendo l'utente www-data tra i "sudoers" , cambia qualcosa a livello di sicurezza oppure...
era l'ultima prova che volevo fare ed infatti funziona.
comunque grazie
una domanda:
mettendo l'utente www-data tra i "sudoers" , cambia qualcosa a livello di sicurezza oppure...
Re: Comando shell da PHP
secondo me sì.. non usano root appunto per la sicurezza, mettendo www-data nei sudoers a mio parere come rischi ci avviciniamo.. poi non so quanto sia sfruttabile la cosa, però non è il massimodirty_paul ha scritto: e infatti come immaginavo.
era l'ultima prova che volevo fare ed infatti funziona.
comunque grazie
una domanda:
mettendo l'utente www-data tra i "sudoers" , cambia qualcosa a livello di sicurezza oppure...
Re: Comando shell da PHP
ho provato ad aggiungere www-data ai sudoers con usermod -a -G admin www-datadirty_paul ha scritto: e infatti come immaginavo.
era l'ultima prova che volevo fare ed infatti funziona.
comunque grazie
una domanda:
mettendo l'utente www-data tra i "sudoers" , cambia qualcosa a livello di sicurezza oppure...
ma non funge...
qualcuno mi copia incolla il suo /etc/sudoers con www-data dentro?
Re: Comando shell da PHP
aggiungilo al gruppo così:some0ne ha scritto:ho provato ad aggiungere www-data ai sudoers con usermod -a -G admin www-datadirty_paul ha scritto: e infatti come immaginavo.
era l'ultima prova che volevo fare ed infatti funziona.
comunque grazie
una domanda:
mettendo l'utente www-data tra i "sudoers" , cambia qualcosa a livello di sicurezza oppure...
ma non funge...
qualcuno mi copia incolla il suo /etc/sudoers con www-data dentro?
Codice: Seleziona tutto
sudo adduser www-data admin
Re: Comando shell da PHP
continua a non funzionare :\
some0ne@Userver:~/www$ sudo adduser www-data admin
The user `www-data' is already a member of `admin'.
anche se è gia membro non riesco ad eseguire comandi shell via php...
some0ne@Userver:~/www$ sudo adduser www-data admin
The user `www-data' is already a member of `admin'.
anche se è gia membro non riesco ad eseguire comandi shell via php...
Re: Comando shell da PHP
prova ad usare sudo da console con l'utente www-data per verificare se funziona o no.. nel caso che così funziona, il problema sta nella pagina phpsome0ne ha scritto: continua a non funzionare :\
some0ne@Userver:~/www$ sudo adduser www-data admin
The user `www-data' is already a member of `admin'.
anche se è gia membro non riesco ad eseguire comandi shell via php...
Re: Comando shell da PHP
some0ne@Userver:~$ sudo -u www-data /etc/init.d/squid3 restartprova ad usare sudo da console con l'utente www-data per verificare se funziona o no.. nel caso che così funziona, il problema sta nella pagina php
ulimit: 33: error setting limit (Operation not permitted)
* Restarting Squid HTTP Proxy 3.0 squid3 ulimit: 144: error setting limit (Operation not permitted)
Re: Comando shell da PHP
non so se è corretto fare così.. prova a fare un su a www-data e poi lanciare il comando con sudosome0ne ha scritto:some0ne@Userver:~$ sudo -u www-data /etc/init.d/squid3 restartprova ad usare sudo da console con l'utente www-data per verificare se funziona o no.. nel caso che così funziona, il problema sta nella pagina php
ulimit: 33: error setting limit (Operation not permitted)
* Restarting Squid HTTP Proxy 3.0 squid3 ulimit: 144: error setting limit (Operation not permitted)
Re: Comando shell da PHP
www-data mi chiede una password ...
non so se è corretto fare così.. prova a fare un su a www-data e poi lanciare il comando con sudo
Re: Comando shell da PHP
quando lanci sudo da www-data ti chiede la password? o quando cerchi di passare a www-data con su?some0ne ha scritto:www-data mi chiede una password ...
non so se è corretto fare così.. prova a fare un su a www-data e poi lanciare il comando con sudo
Re: Comando shell da PHP
su www-data
Password:
l'ho impostata con sudo passwd www-data
poi ho fatto su www-data
e da www-data ho lanciato
sudo /etc/init.d/squid3 restart e funge
ora pasto il codice php,magari cè qualcosa che non va li..:
some0ne@Userver:~/www$ cat write.php
Password:
l'ho impostata con sudo passwd www-data
poi ho fatto su www-data
e da www-data ho lanciato
sudo /etc/init.d/squid3 restart e funge
ora pasto il codice php,magari cè qualcosa che non va li..:
some0ne@Userver:~/www$ cat write.php
Re: Comando shell da PHP
mmm.. togli dal comando "-u root" e controlla che il file pass sia leggibile da www-data (e che ovviamente contenga la password di www-data)some0ne ha scritto: su www-data
Password:
l'ho impostata con sudo passwd www-data
poi ho fatto su www-data
e da www-data ho lanciato
sudo /etc/init.d/squid3 restart e funge
ora pasto il codice php,magari cè qualcosa che non va li..:
some0ne@Userver:~/www$ cat write.php
Chi c’è in linea
Visualizzano questa sezione: 0 utenti iscritti e 6 ospiti