Czy dałoby radę te polecenia mu ustalić oraz zamknąć go w swoim katalogu domowym? Chciałbym by był zamknięty w katalogu domowym i by nie mógł się z niego wydostać. Dokładniej, by nie wpisał polecenia, które uszkodzi system.
Nie ma w tym wątku konkretnej odpowiedzi na mój problem. Chodzi mi tu aby uzyskać bezpieczne wykonywanie/przenoszenie plików (wykonywanie operacji na plikach) w danym katalogu przez panel który chciałbym zbudować na PHP + shell ale chciałbym mieć chociażby te 95% bezpieczeństwa że nikt nie rozwali mi systemu.
Przeglądając perla zauważyłem, że jest podobny do php/html. Czy to znaczy, że na zwykłym php też mogę to zbudować? Zbudować wiem co i jak trzeba ale czy jest bezpieczny jak perl? Ewentualnie skrypty bash/sh?
Lecz są niepewne, gdyż brak praw spowoduje że nie wykona się a z poziomu shella wykonuje jako użytkownik/administrator systemu więc jest pewność że żadne prawa nie zakłócą ale również wiąże się to z bezpieczeństwem.
Uruchamiając powłokę z poziomu skryptu php, uruchamiasz go (zazwyczaj, o ile nie pójdzie w ruch np. sudo) na prawach użytkownika www-data, apache lub podobnego, czyli sytuacja jest dokładnie taka sama jak w przypadku użycia wbudowanej funkcji. Jeśli chcesz mieć możliwość operowania na prawach roota ze skryptów php serwowanych przez www, to albo musisz serwer www uruchomić na prawach roota (bardzo głupie), użyć np. sudo do nabycia odpowiednich uprawnień (trzeba uważać przy konfiguracji) albo zrobić sobie jakąś nakładkę (ang. backend) działający na uprawnieniach roota, z którą będzie się komunikował serwis www. Chyba nie ma innej drogi aby mieć w miarę bezpieczną aplikację www i jednocześnie mieć prawa administracyjne.