suEXEC lar Apache kjøre CGI-script som en annen UID enn den Apache selv kjører som. Dette gjøres ved at CGI-script som oppfyller visse krav blir kjørt gjennom en SUID-root wrapper.
Hovedfordelene med suEXEC er at det lar brukere legge f.eks. databasepassord i PHP-script uten at andre brukere på webserveren får tilgang til dem, samt at det er lettere å se hvem som eier eventuelle runaway web-prosesser.
Ulempen med suEXEC er at ethvert SUID-root program pr. definisjon er skummelt, og at det er tregere å kjøre PHP-ting som CGI istedetfor fra mod_php.
Når det gjelder sikkerhet, vil vi kunne gjøre det enklere hvis vi setter --with-suexec-userdir=DIR til noe somewhere/users/ hvor users inneholder brukerenes webkatalog, dvs $HOME/public_html -> users/$USER ? Vi blir kvitt NFS-problem fra webtjeneren mot hjemmekatalog og øke io på webtjeneren, om en kanskje ubetydelig.
Det finnes en mod_suexec_helper som gir litt finere kontrol. Kan den være nyttig?
Mod_suexec_helper adds UserId and GroupId directives to apache, which are passed as arguments to suexec when starting CGI scripts. This allows much finer control of which user and group ID scripts get run as, compared to suexec's normal SuexecUserGroup directive that can only be used once per virtual host definition.