30
12
2007


Konfiguracja Apache + FastCGI + SuExec + PHP 4/5 + kilka innych rozwiązań
Napisał Aiv w kategorii Administracja, Bezpieczeństwo, PHP, tags: apache, fastcgi, PHP, php.ini, php4, php5, suexecPostanowiłem na własne potrzeby stworzyć pewien szablon konfiguracji PHP opartej o Apache. Podstawowym celem było bezpieczeństwo rozwiązania, a jak udało mi się to zrealizować – życie pokaże. W prezentowanych przykładach pominąłem większość parametrów konfiguracyjnych, a więc podczas tworzenia własnego środowiska na bazie niniejszego artykuły zalecam dostosowanie ich do własnych potrzeb.
Na potrzeby niniejszej konfiguracji użyłem:
- Linux Slackware w wersji 12. Starałem się nie używać ustawień i pakietów pochodzących z dystrybucji, żeby rozwiązanie było jak najbardziej uniwersalne
- Apache w wersji 2.2.6
- FastCGI w wersji 2.4.6
- PHP w wersji 4.4.7 i 5.2.5
Przyjąłem również kilka założeń:
- Skrypty PHP powinny być uruchamiane w zamkniętym środowisku (np: chroot() albo open_basedir())
- Skrypty PHP powinny być uruchamiane z uprawnieniami właściciela pliku/virtualhosta
- Każdy użytkownik powinien mieć indywidualny folder tmp i folder przechowywania plików sesji
- Każdy użytkownik sam może wybrać wersji PHP
- Dla każdego virtualhosta powinien istnieć oddzielny plik php.ini
- Tworzone rozwiązanie powinno być jak najbardziej uniwersalne. Jednocześnie powinno oferować administratorowi wygodę zarządzania