Eine neue PHP-Anwendung für den Apache
Sie haben einen Webserver, der bereits mit AppArmor überwacht wird und möchten
nun eine neue PHP-Applikation in die Überwachung integrieren. Oder Ihr Webserver
soll nun erstmals mit AppArmor überwacht werden und Sie verwenden bereits eine
PHP-Applikation, die von AppArmor kontrolliert werden soll.
Dann haben Sie grundsätzlich drei Möglichkeiten:
- Sie verwenden genprof und erzeugen ein Profil für den Webserver und berücksichtigen bei der
Erzeugung des Profils im Hat
^DEFAULT_URI auch die
PHP-Applikation. Die PHP-Applikation darf dann auf alle Dateien so zugreifen,
wie es auch der Webserver darf.
- Sie verwenden Genprof und erzeugen, sobald Genprof es Ihnen vorschlägt, ein
Hat für Ihre PHP-Applikation. Dabei können Sie für jede URI einen eigenen Hat
erzeugen oder diese in dem Default-hat
^DEFAULT_URI laufen lassen.
- Bevor Sie Genprof starten, tragen Sie in Ihrer Webserver-Konfiguration
für das Verzeichnis, in dem die Applikation sich befindet, den Parameter
AAHatName <profil> ein. Genprof wird dann vorschlagen, die Regeln für
die Zugriffe durch die PHP-Applikation diesem Profil zuzuordnen (siehe 12.2.1).
Welche der drei verschiedenen Varianten Sie verwenden, bleibt Ihnen überlassen,
wobei natürlich die letzten beiden Varianten die bessere Vorgehensweise
darstellen.
Welche der beiden letzten Varianten Sie wählen, hängt sicherlich von der
Komplexität der PHP-Applikation und Ihrem persönlichen Geschmack ab. Bei
komplexeren Applikationen würde ich immer die letzte Variante vorziehen, da ich
dann sicher bin, dass jedes PHP-Skript, welches sich in dem Verzeichnis
befindet, für dass der Parameter AAHatName gesetzt wurde, auch von
AppArmor entsprechend überwacht wird.
Die mit den Parametern AAHatName und AADefaultHatName gewählten Hats haben Vorrang vor allen weiteren Hats (siehe 12.2.1.
Ralf Spenneberg
2007-11-13