[linux] 2024-06-22 圈点899






$ ls -Z /root/test.html

unconfined_u:object_r:admin_home_t:s0 /root/test.html

$ ls -Z /var/www/html/test.html

system_u:object_r:httpd_sys_content_t:s0 /var/www/html/test.html


Fix Command:如何修复呢?用下面的命令

/sbin/restorecon '/var/www/html/test.html'

Detailed Description:

SELinux denied access requested by httpd. /var/www/html/test.html may be a

mislabeled. /var/www/html/test.html default SELinux type is httpd_sys_content_t,

but its current type is admin_home_t. Changing this file back to the default

type, may fix your problem.

File contexts can be assigned to a file in the following ways.

  * Files created in a directory receive the file context of the parent

    directory by default.

  * The SELinux policy might override the default label inherited from the

    parent directory by specifying a process running in context A which creates

    a file in a directory labeled B will instead create the file with label C.

    An example of this would be the dhcp client running with the dhclient_t type

    and creating a file in the directory /etc. This file would normally receive

    the etc_t type due to parental inheritance but instead the file is labeled

    with the net_conf_t type because the SELinux policy specifies this.

  * Users can change the file context on a file using tools such as chcon, or


This file could have been mislabeled either by user error, or if an normally

confined application was run under the wrong domain.

However, this might also indicate a bug in SELinux because the file should not

have been labeled with this type.

If you believe this is a bug, please file a bug report against this package.

Allowing Access:

You can restore the default system context to this file by executing the

restorecon command. restorecon '/var/www/html/test.html', if this file is a

directory, you can recursively restore using restorecon -R