Woltlab Burning Board 4 (WBB4) und SELinux

ich habe zum Thema WBB4 und SELinux jetzt echt noch nichts gefunden. Das erstaunt mich ein wenig, da moderne Server das gern mal auf enforcing stehen haben und es dann im Zusammenhang mit Nginx und PHP-FPM doch mal zu Problemen kommen kann.

Ich habe Nginx unter dem User „nginx“ laufen und PHP-FPM unter dem User „apache“. Wenn man jetzt irgendwie gescheit php laufen lassen will braucht man folgendes Modul.

Die Definition des Moduls kommt in ein so genanntes te-File:

​module wbb4 1.1;

require {
 type admin_home_t;
 type httpd_t;
 type usr_t;
 class dir { create setattr read write remove_name add_name open };
 class file { setattr read create write getattr unlink open };
}

#============= httpd_t ==============
#!!!! This avc is allowed in the current policy
allow httpd_t admin_home_t:file { read getattr unlink open };

#!!!! This avc is allowed in the current policy
allow httpd_t usr_t:dir { create setattr read write remove_name add_name open };

#!!!! This avc is allowed in the current policy
allow httpd_t usr_t:file { read open write create unlink setattr getattr };

Mit dieser Definition kann man nun das SELinux Modul bauen.

checkmodule -M -m -o wbb4.mod wbb4.te
semodule_package -o wbb4.pp -m wbb4.mod

Und so lädt man das Modul

​semodule -i wbb4.pp