PhP absichern, Frage zur ini

laggy

New Member
Guten Tach,

bin gerade dabei mein PHP ein wenig mittels der php.ini abzusichern, ich habe gehört, dass man Dinge wie:

- session.save_path = /var/tmp/www
- upload_tmp_dir = /var/tmp/www

nicht auf dem Standarteinstellungen lassen soll...

nun habe ich mir überlegt, diese 2 Verzeichnisse in "/var/www/website/" zu legen, ist das etwas unsicher?

also ich würde im "/var/www/website" folgende verzeichnise anlegen:

- html (da kommt die seite rein)
- sessions (session.save_path)
- upload (upload_tmp_dir)


ist dies eher azuraten? wenn ja, welche verzeichnisse sollte ich für diese 2 Einstellungen am besten nehmen?

Gruß und danke für Antworten :)
 
Dein Gedanke ist absolut korrekt, ich mache das ähnlich. Wichtig ist nur, dass der Session-Savepath nicht im Webroot liegt und von aussen nicht zugänglich ist.

Mit dem Upload-Verzeichnis kannst du das genauso machen.

Ganz wichtig bei der PHP-Absicherung ist noch das Sperren bestimmter Funktionen (z.B. exec()), die die Sicherheit deines Systems gefährden.

Ich schalte noch immer den Safe-Mode ein, obwohl der Einsatz umstritten ist.
 
Dein Gedanke ist absolut korrekt, ich mache das ähnlich. Wichtig ist nur, dass der Session-Savepath nicht im Webroot liegt und von aussen nicht zugänglich ist.

habe ich beim estellen der Verzeichnisse irgendwas zu beachten? ich würde sie einfach als Root erstellen und dann per FTP nur erlauben in das Verzeichnis "HTML" zu kommen.

Zudem würde mich interessieren wie ich noch etwas genauer absichern kann, das Jemand vom Rootverzeichnis (bei mir dann html), eine eben höher kann, also ins session-verzeichnis?

was ich noch gleich fragen wollte, ich sehe öffters bei anderen FTP-Zugängen, dass sie immer die selbe "Ordnerstruktur" haben... Also ein Ordner namens "html" einer namens "files" dann eine namens "log"... usw.

schauen die sich das gegenseitig ab, oder gibts da irgendwo eine Grundstruktur?

Gruß :)
 
habe ich beim estellen der Verzeichnisse irgendwas zu beachten? ich würde sie einfach als Root erstellen und dann per FTP nur erlauben in das Verzeichnis "HTML" zu kommen.
Das kommt drauf an wie du PHP implementiert hast, als FCGI oder Modul. Auf jeden Fall braucht dein PHP-User (beim Modul müsste das der User des Webservers sein, bei FCGI der des FCGI-Prozesses) Schreibrechte. Andere User solltest du aussperren.

was ich noch gleich fragen wollte, ich sehe öffters bei anderen FTP-Zugängen, dass sie immer die selbe "Ordnerstruktur" haben... Also ein Ordner namens "html" einer namens "files" dann eine namens "log"... usw.

schauen die sich das gegenseitig ab, oder gibts da irgendwo eine Grundstruktur?
Die schauen das ab :) Im Grunde kannst du die Ordner nennen wie du willst, musst halt nur deine Konfiguration anpassen. Und bei Webhostern hat sich einfach eine gewisse Struktur durchgesetzt, da sie entweder vom Admin-Tool (Plesk o.ä.) vorgegeben wird oder einfach dem Kunden der Umgang erleichtert werden soll.
 
Die schauen das ab :) Im Grunde kannst du die Ordner nennen wie du willst, musst halt nur deine Konfiguration anpassen. Und bei Webhostern hat sich einfach eine gewisse Struktur durchgesetzt, da sie entweder vom Admin-Tool (Plesk o.ä.) vorgegeben wird oder einfach dem Kunden der Umgang erleichtert werden soll.
wenn ich also im ordner "var/www/seite1/" einen ordner "sessions" erstelle, kann ich in diesen die session reinspeichern...
dem ftp-Benutzer gebe ich als Rootordner den Ordner "html", dann sollte er doch nicht eine Ebene höher switchen können, um die sessions einzusehen?

mal nebenbei, wenn ich die ordner als root erstelle, wie kann ich am besten nur dem Webserver die Rechte zum ansehen der Datein in "seite1" geben? bzw. wie kann ich sagen der ftp-User darf NUR in "html" rein, keine Ebene höher?
 
wenn ich also im ordner "var/www/seite1/" einen ordner "sessions" erstelle, kann ich in diesen die session reinspeichern...
dem ftp-Benutzer gebe ich als Rootordner den Ordner "html", dann sollte er doch nicht eine Ebene höher switchen können, um die sessions einzusehen?
Genau, aber wie man das macht hängt von deinem FTP-Server hab. Hierzu das Handbuch zu Rate ziehen.
mal nebenbei, wenn ich die ordner als root erstelle, wie kann ich am besten nur dem Webserver die Rechte zum ansehen der Datein in "seite1" geben? bzw. wie kann ich sagen der ftp-User darf NUR in "html" rein, keine Ebene höher?
Schau dir mal chmod und chown an. Das im Einzelnen zu erklären wurde an anderer Stelle sehr gut bereits gemacht.
Du musst grundsätzlich den Benutzer ermitteln unter dem dein Webserver läuft (bspw. apache, www oder www-data) und diesem dann entsprechende Rechte geben.

Im Netz findest du sehr viel Literatur dazu.
 
Back
Top