Centos
semanage & restorecon -R 沒有像我預期的那樣遞歸應用
我的 VPS 雲提供商是在
/data
磁碟下提供大部分儲存的提供商之一,因此 webroot 實際上會位於/data/www
而不是/var/www
,並且有一個符號連結從/var/www
to/data/www
以便預設的 Apache 配置工作。伺服器啟動時禁用了 SELinux,Wordpress 和 Postfix 執行良好。因此,當我將 SELinux 啟用為許可模式時,我通過 Cockpit 看到了很多錯誤。我是 SELinux 的新手,我做了這些:
sudo semanage fcontext -a -t httpd_sys_content_t "/data/www(/.)?" sudo restorecon -R -v /data/www
sudo semanage fcontext -a -t httpd_sys_content_t "/data/www/html(/.)?" sudo restorecon -R -v /data/www/html
在第一對命令之後,我很驚訝該
httpd_sys_content_t
類型沒有傳播到所有內容。所以我嘗試了第二對,它是一樣的。只有 2 個目錄:/data/www
和/data/www/html
設置為所需的類型。我可能誤解了 semanage 和 restorecon 的使用。請幫忙。目標是在
/data
.為了完整起見,我再次這樣做,並複制粘貼下面的連續行。(重複命令時我使用的
-m
不是-a
正確的嗎?)semanage
[~]$ sudo semanage fcontext -m -t httpd_sys_content_t "/data/www/html(/.)?" [sudo] password for johnsmith: [~]$ sudo restorecon -R -v /data/www/html [~]$ ls -lZ /data/www/html/ total 24 drwxrwxr-x. 3 apache apache system_u:object_r:default_t:s0 4096 Jul 14 15:15 foo -rw-r--r--. 1 apache apache system_u:object_r:default_t:s0 430 Mar 2 18:51 index.php -rw-r--r--. 1 apache apache system_u:object_r:default_t:s0 1402 Mar 4 11:00 bar.gif drwxr-xr-x. 12 apache apache system_u:object_r:default_t:s0 4096 Mar 3 16:29 pmadir drwxr-xr-x. 10 apache apache system_u:object_r:default_t:s0 4096 Feb 24 12:05 sendy drwxr-xr-x. 10 apache apache system_u:object_r:default_t:s0 4096 Jun 11 06:48 wordpress [~]$
您可能在那裡錯過了一個
*
(萬用字元):sudo semanage fcontext -a -t httpd_sys_content_t "/data/www(/.*)?"