Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installation phpzip #8

Open
ritchieGitHub opened this issue Jul 24, 2016 · 0 comments
Open

Installation phpzip #8

ritchieGitHub opened this issue Jul 24, 2016 · 0 comments

Comments

@ritchieGitHub
Copy link
Member

Um ZIP, BZ2 und GZIP-Dateien zu erstellen werden die entsprechenden Unix-Programme verwendet. Da diese jedoch nicht den Einschränkungen des safe_mode unterliegen, könnte damit leicht /etc/passwd oder schlimmeres gezipt und heruntergeladen werden, falls in den (Opencaching-)Quellcodes ein Sicherheitsloch ist. Deshalb werden die Programme über einen Wrapper aufgerufen, der die übergebenen Pfadangaben prüft. phpzip wird für den XML-Client, das XML-Interface und für den Download von Suchergebnissen benötigt.

  1. Ein Verzeichnis suchen das nicht über das HTTP erreichbar ist z.B. /srv/www/bin
  2. Die Dateien util/safemode_zip/phpzip.php und util/safemode_zip/phpunzip.php dort hinein kopieren
  3. Owner und Group auf root setzen
  4. Dateiberechtigungen auf der Dateien auf 755 setzen, der Webserver darf keinesfalls Schreibberechtigungen besitzen!
  5. Im Kopf der beiden Dateien den Pfad für das php-Binary setzen (PHP muss mit --enable-cli kompiliert sein). Den Pfad bekommt man mit "which php".
    Z.B. #!/usr/bin/php -q
  6. Sicherstellen, dass gzip, bzip2 und zip auf dem System installiert sind
  7. phpzip.php und phpunzip.php öffnen und $basedir auf das root-Verzeichnis der Opencaching-Quellcodes setzen. Z.B. /var/www/html
  8. Wird nun phpzip.php aufgerufen mit ./phpzip.php muss die Ausgabe "wrong parameter" erscheinen.
  9. Den Pfad in safe_mode_exec_dir in der apache/php-Konfiguration aufnehmen
  10. Die Parameter $safemode_zip, $zip_basedir und $zip_wwwdir in lib/settings.inc.php setzen
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant