Thread View: pl.comp.os.bsd
9 messages
9 total messages
Started by { WebSpider }
Sun, 18 Jul 2010 15:19
sudo w php:exec
Author: { WebSpider }
Date: Sun, 18 Jul 2010 15:19
Date: Sun, 18 Jul 2010 15:19
25 lines
2008 bytes
2008 bytes
Witam, nie jestem pewien czy dobra grupa bo nie potrafie określić czy
problem mam z uprawnieniami systemu czy php.
Potrzebuję ze strony w php wywołać skrypt shella który potrzebuje
uprawnień roota.
W skrypcie php wykonuję coś takiego:
echo(exec("/usr/local/bin/sudo /storage_disk/other/dodaj.sh test test",
$wynik));
a w pliku sudoers mam linijkę:
www ALL = NOPASSWD:/storage_disk/other/dodaj.sh
no i to nie działa bo skrypt zmienną $wynik ma pustą.
Gdy to samo wykonam samodzielnie, tzn w sudoers www zamienię na nazwę
swojego użytkownika i wpiszę "sudo /storage_disk/other/dodaj.sh test
test" to wszystko działa.
Z koleji, jeśli w skrypcie php wyrzucę sudo i zostawię samą ścieżkę do
skryptu z parametrami to też wszystko działa, tylko oczywiście skrypt
odpali się bez roota i zwróci błąd.
Proszę o jakieś sugestie odnoście problemu albo grupy na którą
powinienem pisać.
Pozdrawiam,
Konrad
Re: sudo w php:exec
Author: Wojciech Puchar
Date: Sun, 18 Jul 2010 15:44
Date: Sun, 18 Jul 2010 15:44
23 lines
2091 bytes
2091 bytes
> no i to nie działa bo skrypt zmienną $wynik ma pustą. > Gdy to samo wykonam samodzielnie, tzn w sudoers www zamienię na nazwę > swojego użytkownika i wpiszę "sudo /storage_disk/other/dodaj.sh test > test" to wszystko działa. > Z koleji, jeśli w skrypcie php wyrzucę sudo i zostawię samą ścieżkę do > skryptu z parametrami to też wszystko działa, tylko oczywiście skrypt > odpali się bez roota i zwróci błąd. > > Proszę o jakieś sugestie odnoście problemu albo grupy na którą > powinienem pisać. Myśle że raczej pytanie do "speców" PHP. sudo masz ustawione poprawnie, zresztą sam to sprawdziłeś. Zakładam że PHP używasz jako moduł apache a nie CGI+suexec, więc użytkownik rzeczywiście będzie "www" (ew. taki jak w httpd.conf wpisałeś). Więc niby wszystko OK. Sam używam sudo do wywoływania poleceń roota z prostej strony WWW, tyle że to w bashu mam zrobione a nie w PHP. I działa bez zarzutu. Więcej nie pomogę na PHP się nie znam generalnie.
Re: sudo w php:exec
Author: Mikolaj Rydzewski
Date: Mon, 19 Jul 2010 10:46
Date: Mon, 19 Jul 2010 10:46
6 lines
1122 bytes
1122 bytes
On 07/18/2010 05:19 PM, { WebSpider } wrote:
> Potrzebuję ze strony w php wywołać skrypt shella który potrzebuje
> uprawnień roota.
Zamiast sudo użyłbym demona słuchającego na localhost. IMO wygodniejsze
rozwiązanie.
Re: sudo w php:exec
Author: { WebSpider }
Date: Mon, 19 Jul 2010 18:18
Date: Mon, 19 Jul 2010 18:18
10 lines
1632 bytes
1632 bytes
On 19 Lip, 12:46, Mikolaj Rydzewski <m...@ceti.pl> wrote:
> On 07/18/2010 05:19 PM, { WebSpider } wrote:
>
> > Potrzebuję ze strony w php wywołać skrypt shella który potrzebuje
> > uprawnień roota.
>
> Zamiast sudo użyłbym demona słuchającego na localhost. IMO wygodniejsze
> rozwiązanie.
Mógłbym prosić o więcej szczegółów? :) Jak to miałoby działać?
Re: sudo w php:exec
Author: Wojciech Puchar
Date: Tue, 20 Jul 2010 06:59
Date: Tue, 20 Jul 2010 06:59
8 lines
1449 bytes
1449 bytes
Mikolaj Rydzewski <miki@ceti.pl> wrote:
> On 07/18/2010 05:19 PM, { WebSpider } wrote:
>> Potrzebuję ze strony w php wywołać skrypt shella który potrzebuje
>> uprawnień roota.
>
> Zamiast sudo użyłbym demona słuchającego na localhost. IMO wygodniejsze
> rozwiązanie.
dlaczego?
Re: sudo w php:exec
Author: Mikolaj Rydzewski
Date: Tue, 20 Jul 2010 07:19
Date: Tue, 20 Jul 2010 07:19
6 lines
1316 bytes
1316 bytes
On 07/19/2010 08:18 PM, { WebSpider } wrote:
> Mógłbym prosić o więcej szczegółów? :) Jak to miałoby działać?
Podłączasz swój skrypt do inetd/xinetd (tam określasz usera, prawa
dostępu, etc). Skrypt dostaje polecenia na stdin, na stdout wypisuje
wynik. Łączysz się do niego za pomocą fsockopen().
Re: sudo w php:exec
Author: Mikolaj Rydzewski
Date: Tue, 20 Jul 2010 07:27
Date: Tue, 20 Jul 2010 07:27
14 lines
1540 bytes
1540 bytes
On 07/20/2010 08:59 AM, Wojciech Puchar wrote: > Mikolaj Rydzewski<miki@ceti.pl> wrote: >> Zamiast sudo użyłbym demona słuchającego na localhost. IMO wygodniejsze >> rozwiązanie. > dlaczego? Bo Service Oriented Architecture jest trendy :-) A na poważnie to widzę przynajmniej parę zalet: - nie używam setuid/setgid - za pomocą konfiguracji xinetd/ipfw mogę całkiem dobrze zdefiniować dostęp do usługi (usługi a nie skryptu) - usługa może być uruchomiona w jailu/chroocie/na innym hoście - brak zależności aplikacji do skryptów rozsianych po filesystemie
Re: sudo w php:exec
Author: Robert Rędziak
Date: Tue, 20 Jul 2010 08:14
Date: Tue, 20 Jul 2010 08:14
19 lines
1735 bytes
1735 bytes
On Tue, 20 Jul 2010 09:27:38 +0200, Mikolaj Rydzewski <miki@ceti.pl> wrote: > A na poważnie to widzę przynajmniej parę zalet: > - nie używam setuid/setgid > - za pomocą konfiguracji xinetd/ipfw mogę całkiem dobrze zdefiniować > dostęp do usługi (usługi a nie skryptu) > - usługa może być uruchomiona w jailu/chroocie/na innym hoście > - brak zależności aplikacji do skryptów rozsianych po filesystemie - przy dużym ruchu odpada nam narzut na ciągłe forkowanie procesów. r. -- _________________________________________________________________ robert rędziak e36/5 323ti mailto:giekao-at-gmail-dot-com I hope they don't fart at Greenpeace. That's bad for Gaia.
Re: sudo w php:exec
Author: Robert Rędziak
Date: Tue, 20 Jul 2010 08:15
Date: Tue, 20 Jul 2010 08:15
19 lines
1644 bytes
1644 bytes
On Tue, 20 Jul 2010 09:27:38 +0200, Mikolaj Rydzewski <miki@ceti.pl> wrote: > A na poważnie to widzę przynajmniej parę zalet: > - nie używam setuid/setgid > - za pomocą konfiguracji xinetd/ipfw mogę całkiem dobrze zdefiniować > dostęp do usługi (usługi a nie skryptu) > - usługa może być uruchomiona w jailu/chroocie/na innym hoście > - brak zależności aplikacji do skryptów rozsianych po filesystemie - przy dużym ruchu można zmniejszyć narzut na forkowanie procesów. r. -- _________________________________________________________________ robert rędziak e36/5 323ti mailto:giekao-at-gmail-dot-com I hope they don't fart at Greenpeace. That's bad for Gaia.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads