Prawa dostępu do plików MediaWiki
Z funus.net
Zakładając, że nasz serwis oparty o oprogramowanie MediaWiki działa na sensownym serwerze WWW, a więc:
- z sytemem uniksowym lub Linuksem,
- do którego mamy dostęp przez SSH;
- serwerem WWW jest Apache,
- i używa on suExec, więc skrypty PHP wykonywane są z naszym identyfikatorem użytkownika,
można w prosty sposób ograniczyć dostęp do plików i katalogów MediaWiki korzystając z uniksowych praw odczytu/zapisu/wykonywania nadawanych właścicielowi, grupie oraz innych użytkownikom.
Przy opisanej konfiguracji wystarczy dostęp dla ogółu do:
- plików i katalogów w podkatalogu skins;
- wszystkich plików i katalogów w podkatalogu images[1].
Żeby ustawić takie minimalne uprawnienia należy przejść do katalogu, w którym zainstalowane jest MediaWiki, a następnie:
- rekursywnie odebrać wszelkie uprawnienia grupie i innym użytkownikom:
chmod -R go-rwx .
- pozwolić na dostęp do głównego katalogu wiki, by serwer WWW mógł odczytać stamtąd niezbędne pliki; przy tym nie jest potrzebne prawo odczytu, czyli listowania zawartości katalogów (r), wystarczy prawo do wejścia do katalogu (x):
chmod o+x .- to samo zrobić dla podkatalogów skins i images, oraz wszystkich katalogów podrzędnych:
find skins images -type d -exec chmod o+x {} \;
- należy dodać prawo odczytu plików w wyżej wymienionych katalogach, ale z pominięciem skryptów PHP:
find skins images -type f \! -name "*.php" -exec chmod o+r {} \;
- można jeszcze rekursywnie zablokować dostęp do zawartości podkatalogu images/deleted; jak nazwa wskazuje, są tam przechowywane pliki usunięte przez administratora, do których zwykli użytkownicy nie powinni mieć dostępu; administratorzy nadal będą mogli te pliki obejrzeć, bo dostęp do nich jest realizowany przez skrypt PHP a nie bezpośrednio; a więc:
find images/deleted -exec chmod o-rwx {} \;
Może też być konieczne udostępnienie do odczytu plików .htaccess:
find . -name .htaccess -exec chmod o+r {} \;
Po wykonaniu tych czynności możemy być niemal pewni, że nikt nam nie będzie gmerał w nieodpowiednich miejscach.
przypisy
- ↑ W niektórych instalacjach zamiast images może być katalog upload.