WordPress の wp-content に SELinux で httpd に書き込み生成権限を与えるには

WordPress のテーマファイルやプラグイン、アップロードしたファイルの置き場所は wp-content ディレクトリ以下になる。
ここに対して、httpd (apache) で書き込み生成権限を付加する必要がある。その SELinux の設定についてのメモ。

権限の確認

httpd_t のエントリーを見てみると、タイプ httpd_cache_t がファイル、ディレクトリ、シンボリックリンクともに読み書き作成権限が付加されている。

# sesearch --allow -s httpd_t
   allow httpd_t httpd_cache_t : file { ioctl read write create getattr setattr lock 
 append unlink link rename }; 
   allow httpd_t httpd_cache_t : dir { ioctl read write create getattr setattr lock
 unlink link rename add_name remove_name reparent search rmdir }; 
   allow httpd_t httpd_cache_t : lnk_file { read create getattr setattr unlink link
 rename }; 
コンテキストを変更

wp-content 以下に httpd_cache_t を設定する。

# chcon -R -t httpd_cache_t wp-content