SELinux在httpd服务端中的使用

一、启用SELinux策略并安装httpd服务,改变网站的默认主目录为/website,添加SELinux文件标签规则,使网站可访问(以CentOS7系统操作)

1、首先查看本系统是否已经安装httpd服务

blob.png

2、查看httpd的配置文件所在路径

blob.png

3、创建主目录为/website与网页文件"index.html",并更改httpd服务为该路径

blob.png

4、给创建的目录打上标签,避免进程索取不到资源

blob.png

5、清除防火墙规则,避免防火墙干扰

blob.png

6、启动httpd服务

blob.png

7、使用另一台虚拟机查看是否能打开网页

blob.png

二、修改上述网站的http端口为9527,增加SELinux端口标签,使网站可访问(以centos7为例)

1、如需在selinux添加端口标签,需要使用命令"semanage",因此需要先安装

blob.png

2、查看httpd端口标签

blob.png

3、将httpd进程增加SELinux端口标签

blob.png

4、将http的配置文件"httpd.conf"更改端口号为"9527"

blob.png

5、更改httpd端口需要重启httpd服务

blob.png

6、使用另一台虚拟机查看是否能打开网页

blob.png

三、启用相关的SELinux布尔值,使上述网站的用户student的家目录可通过http访问

1、启用用户家目录相关的SELinux布尔值(永久生效)

blob.png

2、更改http的用户服务配置文件"userdir.conf"

blob.png

3、创建student用户,并且创建要访问的网站页面"index.html"

blob.png

4、给启动httpd的用户"apache"添加访问普通用户"student"家目录的权限

blob.png

5、重启httpd服务

blob.png

7、在其他虚拟机测试是否能打开网页

blob.png

总结:

   <1> 进程用户"apache"是否有权限访问网页文件

   <2> 是否已配置httpd配置文件"httpd.conf"和"userdir.conf"中的端口、访问路径以及开放的权限

   <3> 防火墙是否已关闭或者清楚规则

   <4> SELinux是否已添加端口标签和更改为"httpd"文件类型

原创文章,作者:Aleen,如若转载,请注明出处:http://www.178linux.com/46612

(4)
AleenAleen
上一篇 2016-09-16
下一篇 2016-09-16

相关推荐

  • linux程序包管理

         首先linux软件程序包和windows中的程序包是不兼容的,所以要在linux上使用windows上的程序,需要使用虚拟化工具。 库级别的虚拟化:     linux : WinE     windows: Cywin 而程序开发语言有多…

    Linux干货 2016-08-24
  • 定时任务应用示例

    定时任务应用示例 1.每4小时执行一次对/etc目录的备份,备份至/backup目录中,保存的目录名为形如etc-201504020202 mkdir /backup crontab -e * */4 * * * cp -ar /etc/ /backup/etc-$(date +%Y%m%d%H%M) 2.每周2,4,6备份/var/log/messages…

    Linux干货 2017-08-06
  • mysql-yum安装多实例

    1.安装包 yum install mariadb-server 2.创建文件 3 分别生成3306,3307,3308数库文件 4.复制主配置文件并分别修改端口路径 5.准备一个启动脚本并开启服务 /mysqldb/3307/mysqld start 6.用mysql -S 命令进入    

    2018-01-28
  • 第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@unclez ~]# cp -r /etc/skel /home/tuser1 [root@unclez ~]# chmod -R&…

    Linux干货 2016-12-24
  • linux基础之用户管理

    介绍了一些基础命令,比如cut、head传输到管道时的使用,并通过详细的介绍、大量的习题完成了用户管理的相关知识

    Linux干货 2017-12-15
  • Linux第九周总结

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # login_user=0 nologin_user=0 for i in $(cat /etc/passwd | cut -d : -f 7);do &nbsp…

    Linux干货 2017-08-28

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-20 12:40

    通过实例加深自己的selinux的应用场景理解,挺有想法,赞一个