科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道解决新的SELinux安全级别产生问题

解决新的SELinux安全级别产生问题

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文教大家如何解决新的SELinux安全级别产生问题。

作者:51cto 2007年10月14日

关键字: SELinux 安全 问题 级别

  • 评论
  • 分享微博
  • 分享邮件

  在Fedora Core 3 Linux发布版中,你运行PHP或者类似的其它脚本的文件或者目录操作的时候,可能会出现这样一个异常:"failed to open stream: Permission denied in ..."。这很容易让我们联想到权限问题,那么我们按照常规会把这个文件或者目录的权限设置为777,但是很遗憾,在这个版本中这样做或许并不能解决这个问题。

  这是因为新的SELinux内核只允许apache用户仅仅在/tmp目录中进行这样的操作(或许有别的可能和原因),解决这个问题必须关闭SELinux的安全级别的相关特性,允许apache用户可以操作其它目录,请看下面的详细步骤和图示:

  有如下PHP代码:

  if (!file_exists("count")) //如果文件count不存在

  {

  $file=fopen("count","w+"); //创建count文件并写入

  fwrite ($file,"000001"); //写入

  fclose ($file); //关闭文件

  }

  

  运行之后,出现异常:

  Warning: fopen(count): failed to open stream: Permission denied in /var/www/html/count.php on line 4

  Warning: fwrite(): supplied argument is not a valid stream resource in /var/www/html/count.php on line 5

  Warning: fclose(): supplied argument is not a valid stream resource in /var/www/html/count.php on line 6

  

  打开“应用程序”->“系统设置”->“安全级别”:

  

  

  

  

  确定修改之后,记得一定要重新启动防火墙和Apache服务器。再次运行上面的代码,程序运行正常。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章