Después de investigar un poco, investigué las diferencias entre ellos usando el sesearch
comando:
$ sesearch --allow -s httpd_t -b httpd_read_user_content
Encontradas 5 reglas av semánticas:
permitir httpd_t user_home_dir_t: dir {ioctl read getattr lock search open};
permitir httpd_t user_home_t: archivo {ioctl read getattr lock open};
permitir httpd_t user_home_t: dir {ioctl read getattr lock search open};
permitir httpd_t home_root_t: dir {getattr search open};
permitir httpd_t home_root_t: lnk_file {read getattr};
$ sesearch --allow -s httpd_t -b httpd_enable_homedirs
Encontradas 15 reglas semánticas av:
permitir httpd_t user_home_dir_t: dir {ioctl read getattr lock search open};
permitir httpd_t user_home_dir_t: lnk_file {read getattr};
permitir httpd_t autofs_t: dir {ioctl read getattr lock search open};
permitir httpd_t cifs_t: archivo {ioctl read getattr lock open};
permitir httpd_t cifs_t: dir {ioctl read getattr lock search open};
permitir httpd_t cifs_t: lnk_file {read getattr};
permitir httpd_t nfs_t: archivo {ioctl read getattr lock open};
permitir httpd_t nfs_t: dir {ioctl read getattr lock search open};
permitir httpd_t nfs_t: lnk_file {read getattr};
permitir httpd_t user_home_t: archivo {ioctl read getattr lock open};
permitir httpd_t user_home_t: dir {ioctl read getattr lock search open};
permitir httpd_t user_home_type: dir {getattr search open};
permitir httpd_t user_home_type: lnk_file {read getattr};
permitir httpd_t home_root_t: dir {ioctl read getattr lock search open};
permitir httpd_t home_root_t: lnk_file {read getattr};
Todas las reglas del http_read_user_content
están incluidas en el httpd_t -b httpd_enable_homedirs
. Es decir, el alcance de este último es más amplio que el primero.
Como Michael dijo correctamente, deberíamos habilitar solo el primero si solo queremos colocar la raíz del documento en el directorio de inicio de un usuario.