![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 6.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Mam taki problem. Chcę napisać sobie jakąś aplikację w php przez którą mógłbym wydawać polecenia na serwerze freebsd oraz uruchamiać skrypty powłoki. Kombinowałem pół dnia i nic z tego... żadne system() exec() itp. nie działają. Tzn działają przy wywoływaniu komend typu "ls". Prawa na plikach zmieniałem. Wydaje mi się, że te skrypty muszę jakoś uruchamiać jako root, ale nie mam pojęcia jak to zrobić... Dodam, że przeszukałem już kilka for, ale zazwyczaj temat się urywa. Mniej więcej chcę aby ta aplikacja działała jak webmin, tylko oczywiście z innymi poleceniami. Z góry dziękuję za udzielone odpowiedzi. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 740 Pomógł: 15 Dołączył: 23.08.2004 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
W przypadku Apacha jest np. tak, że po uruchomieniu serwera utworzy on odpowiednią liczbę procesów child do zarządzania i kierowania prośbami połączeń. Jeżeli uruchomisz serwer jako root to proces parent będzie kontynuowany z uprawnieniami root-a ale procesy potomne działają na prawach użytkowników zgodnie z tym co zostało podane w pliku httpd.conf. Być może za pomocą funkcji exec() da się jakoś użyć sudo, ale nie mam zielonego pojęcia jak.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 1 Dołączył: 2.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Może się mylę, ale polecenie sudo nie jest "wbudowane" i jest oddzielnym plikiem w powłoce (chyba) /bin/bash. Można odnaleść ten program (plik nazywa się chyba sudo, ale nie wiem w jakim katalogu), odpalić go i po spacji dodać ścieżkę do twojego programu.
Ale jak to zrobić z podawaniem hasła to już nie wiem... |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat Mniej więcej chcę aby ta aplikacja działała jak webmin, tylko oczywiście z innymi poleceniami. Było kiedyś coś takiego, jak phpShell chyba. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 12:47 |