前言:本文主要介绍了因为SELinux对网站目录权限控制的不当而引起网站无法正常操作和访问的问题。

正文开始:今天下午闲着没有事做于是突然兴起想尝试安装下Drupal。以前用Wordpress做博客久了,总想着尝尝新。

按照Installtion Guide提示的安装步骤进行操作如下:wget http://drupal.org/files/projects/drupal-7.12.tar.gz

tar -zxvf drupal-7.12.tar.gz

mv drupal-7.12 /var/www/html/home_start

cd /var/www/html/home_start

cp sites/default/default.settings.php sites/default/settings.php

chmod a+w sites/default/settings.php

chmod a+w sites/default

mysqladmin -u username -p create databasename #用正确的字符串代替username和databasename

一切准备就绪!就等着进网站目录进行下一步配置了!

不幸的是,在浏览器中打开网站的目录后就遭遇了httpd的403拒绝访问提示。

这很显然,根据以往的经验可以判断是目录权限存在问题。

为了验证这一说法,我们可以检查httpd的错误日志。默认情况下日志就存在在/var/log/httpd/目录中。[root@localhost ~]# grep Permission /var/log/httpd/error_log

[Tue Apr 10 09:07:04 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /start denied

[Tue Apr 10 09:07:50 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /start/ denied

[Tue Apr 10 09:08:07 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /start/ denied

[Tue Apr 10 09:10:06 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /start/ denied

[Tue Apr 10 09:11:08 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /start/ denied

[Tue Apr 10 09:11:17 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /start denied

[Tue Apr 10 09:11:34 2012] [error] [client ::1] (13)Permission denied: access to /start denied

[Tue Apr 10 09:13:35 2012] [error] [client ::1] (13)Permission denied: access to /start denied

[Tue Apr 10 09:13:51 2012] [error] [client ::1] (13)Permission denied: access to /start/site/default/ denied

[Tue Apr 10 09:13:57 2012] [error] [client ::1] (13)Permission denied: access to /start/sites denied

[Tue Apr 10 09:14:51 2012] [error] [client ::1] (13)Permission denied: access to /start/install.php denied

[Tue Apr 10 09:18:57 2012] [error] [client ::1] (13)Permission denied: access to /start/install.php denied

[Tue Apr 10 09:19:01 2012] [error] [client ::1] (13)Permission denied: access to /start/ denied

[Tue Apr 10 09:22:03 2012] [error] [client ::1] (13)Permission denied: access to /start denied

[Tue Apr 10 09:22:21 2012] [error] [client ::1] (13)Permission denied: access to /start denied

[Tue Apr 10 09:22:24 2012] [error] [client ::1] (13)Permission denied: access to /start denied

[Tue Apr 10 09:22:27 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /start denied

[Tue Apr 10 09:27:02 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /start denied

[Tue Apr 10 09:27:05 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /start denied

[Tue Apr 10 09:27:07 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /start denied

[Tue Apr 10 12:09:58 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /home_start denied

[Tue Apr 10 12:42:38 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /home_start denied

[Tue Apr 10 12:42:40 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /home_start denied

[Tue Apr 10 12:44:15 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /home_start denied

[Tue Apr 10 12:44:20 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /home_start denied

[Tue Apr 10 20:53:21 2012] [error] [client ::1] (13)Permission denied: access to /home_start denied

[Tue Apr 10 21:07:21 2012] [error] [client ::1] (13)Permission denied: access to /home_start denied

[Tue Apr 10 21:14:48 2012] [error] [client ::1] (13)Permission denied: access to /home_start denied

[root@localhost ~]#

再检查网站目录和文件的权限。为方便起见直接用-lZ选项。用于显示详细信息和SELinux权限信息[root@localhost html]# ls -lZ

-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 archive.html

drwxr-xr-x. root root unconfined_u:object_r:httpd_sys_content_t:s0 blog

drwxr-xr-x. root root unconfined_u:object_r:httpd_sys_content_t:s0 blog_backup

-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 blog.htm

-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 blog.html

drwxr-xr-x. root root unconfined_u:object_r:httpd_sys_content_t:s0 css

drwxr-xr-x. root root unconfined_u:object_r:httpd_sys_content_t:s0 home_page

drwxr-xr-x. root root unconfined_u:object_r:admin_home_t:s0 home_start #问题行

drwxr-xr-x. root root unconfined_u:object_r:httpd_sys_content_t:s0 images

-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 index.htm

-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 index.html

-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 info_php.php

drwxr-xr-x. root root unconfined_u:object_r:httpd_sys_content_t:s0 js

-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 log

drwxr-xr-x. root root unconfined_u:object_r:admin_home_t:s0 php #以前的遗留问题

drwxr-xr-x. root root unconfined_u:object_r:httpd_sys_content_t:s0 phpMyAdmin-3.4.10.1-all-languages

drwxr-xr-x. root root unconfined_u:object_r:httpd_sys_content_t:s0 PSDs

-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 readme.txt

-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 style.htm

-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 style.html

drwxr-xr-x. root root unconfined_u:object_r:httpd_sys_content_t:s0 wiki

显然上面显示的结果中的09、16两行的权限与其他网站目录不同。

再查看selinx的工作状态,判断是不是SELinux引起的。[root@localhost httpd]# sestatus

SELinux status:                 enabled

SELinuxfs mount:                /selinux

Current mode:                   enforcing

Mode from config file:          enforcing

Policy version:                 24

Policy from config file:        targeted

这就是导致网站权限不正确的原因。

我猜测可能是在selinux启用时对目录或文件进行操作导致的。因为最近我对SELinux进行了升级(以前没有遇到)。

所以使用chcon更改SELinux权限以及显示结果如下:setenforce 0#必须暂时停止SELinux,否则可能导致操作失败。chcon -t httpd_sys_content_t -R /var/www/html/home_start/ #R参数是递归操作的意思

经过修改就会发现SELinux的对应权限已经和其他目录相同了!都是httpd_sys_content_t。[root@localhost html]# setenforce --help

usage:  setenforce [ Enforcing | Permissive | 1 | 0 ]

[root@localhost html]# setenforce 0

[root@localhost html]# cd

[root@localhost ~]# ls /var/www/html/ -Z

……

drwxr-xr-x. root root unconfined_u:object_r:admin_home_t:s0 home_start

……

[root@localhost ~]#chcon -t httpd_sys_content_t -R /var/www/html/home_start/

[root@localhost ~]# ls /var/www/html/home_start/ -Z

……

-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 authorize.php

……

然后,再次打开浏览器输入地址,验证能否访问,如果可以访问就可以进行下一步配置了!

最后,还是那句话,遇到问题一定要仔细分析,尽可能的通过自己的努力和分析发现问题所在,这样才能体会到解决问题的快乐!

linux 查看网站目录权限,解决SELinux对网站目录权限控制的不当的问题相关推荐

  1. Linux 查看ip没有ens33解决方法

    Linux 查看ip没有ens33解决方法 在命令台执行以下三条语句 systemctl stop NetworkManager 临时关闭 systemctl disable NetworkManag ...

  2. linux网站权限一直自动关闭,奇妙伞-解决SELinux对网站目录权限控制的不当的问题--网上摘抄集合,记录使用...

    1.检查httpd的错误日志.默认情况下日志就存在在/var/log/httpd/目录中. [root@localhost ~]# grep Permission /var/log/httpd/err ...

  3. Linux系统升级sudo版本来解决本地用户获得 root 权限

    Qualys的安全研究人员发现了名为"Baron Samedit"(CVE-2021-3156)的 Sudo 权限升级漏洞,该漏洞研究人员于1月13日披露了此漏洞,此漏洞产生的原因 ...

  4. win7无法访问计算机权限,解决WIN7有限的访问权限的解决方案合集

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 当你的电脑经常需要被别人使用,但是你又不希望别人看你的某些重要文件或者不允许别人运行某些应用程序或者担心自己系统某些重要参数被修改时,你可以先以管理员身份 ...

  5. linux看进程所在,linux 查看进程所在目录

    一下内容转自:https://blog.csdn.net/spring21st/article/details/50561550 通过 ps 及 top 命令查看进程信息时,只能查到 相对路径,查不到 ...

  6. linux显示总文件大小命令,linux查看文件大小命令

    linux系统不像windows系统,查看文件可以随时点击右键,linux中碳钢命令来查看文件大小,下面由学习啦小编为大家整理了linux查看文件命令的相关知识,希望对大家有帮助! linux查看文件 ...

  7. linux查看和修改文件与目录的权限

    1.linux查看目录和文件权限 使用带"-l"选项的ls命令时,将以长格式显示文件或目录的详细信息,其中包括了该文件的权限和归属等参数.例如,执行如下操作列出当前目录下子目录和文 ...

  8. linux查看目录acl权限,ACL权限详解

    1.ACL简介 2.前期准备 3.ACL的基本操作:添加和修改 4.ACL的其他功能:删除和覆盖 5.目录的默认ACL 6.备份和恢复ACL 7.结束语 1.ACL简介 用户权限管理始终是Linux系 ...

  9. linux查看目录访问权限,Linux文件访问权限

    一.设置用户ID和设置组ID 1.实际用户ID和实际组ID标识当前登录的用户. 2.有效用户ID,有效组ID以及附加组ID决定了我们的文件访问权限. 3.通常,有效用户ID等于实际用户ID,有效组ID ...

最新文章

  1. 配置文件值注入 ||导入配置文件处理器,以后编写配置就有提示
  2. 进制转换c++代码_跟小黑学漏洞利用开发之16进制字符转换
  3. 不做“韭菜”,永洪BI教你逃离币圈骗局
  4. iframe子页面内刷新父页面中另一个iframe子页面
  5. yolo v4 python_YOLOv4: Darknet 如何于 Ubuntu 编译,及使用 Python 接口
  6. 怎样在Android上手动备份你的短信/彩信?
  7. Excel:自动录入学生的基本情况信息表(转)
  8. linux系统可以安装Adobe,Ubuntu 64位安装Adobe Reader 9.5.5
  9. google code 代码托管 用git创建仓库
  10. 小米手机获取完整ROOT权限教程
  11. PHP玄帧道长,青龙道长率众弟子朝真“凝真宫”
  12. C和C++文本读写速度对比
  13. OpenGL函数思考-glHint
  14. 稳定版正式发布 | 用 Flutter 构建 Windows 桌面应用程序
  15. 在一个线程中 sleep(1000) 方法,将使得该线程在多少时间后获得对 CPU 的控制(假设睡眠过程中不会有其他时间唤醒该线程)?
  16. C++初步之核心编程篇五:多态与虚函数类
  17. react+antd搭建后台管理系统
  18. Android画图demo
  19. 外置USB供电与内置锂电池供电自动切换电路
  20. 论Cardano修仙之路,聊ADA现状分析

热门文章

  1. Android 和 iOS 各有千秋
  2. 此电脑怎么放在桌面上_电脑内部与麦克风的声音怎么同时录制?详细教程在此...
  3. 解析nextTick---vue3任务调度
  4. lua mysql 字符串截取_Lua 截取字符串(截取utf-8格式字符串)
  5. java图形用户界面实验_java图形用户界面实验教程
  6. 下列统计量服从什么分布_第六章 数理统计基本概念
  7. mongo14-----group,aggregate,mapReduce
  8. 2017-2018-1 20179215 《从问题到程序》第三章
  9. NRF52832学习笔记
  10. MySql的like语句中的通配符:百分号、下划线和escape