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)
上一篇 2016-09-16 12:19
下一篇 2016-09-16 13:44

相关推荐

  • 软链接和硬链接的区别

    软链接和硬链接的区别 什么是链接: 文件都是文件名和数据组成的,在linux中被分成两部分:数据和元数据。数据是记录文件的真实内容的地方;元数据是记录文件属性的地方:创建者、大小、创建时间等信息。元数据中的inode号这是唯一标识文件身份的属性。在linux中,文件的inode号可以通过ls –i命令查看。在linux中为了解决文件共享使用,引入了两种链接:…

    Linux干货 2016-10-20
  • nginx基础模块

    目录: nginx基础模块: 1.ngx_http_access_module模块: 2.ngx_http_auth_basic_module模块 3.ngx_http_stub_status_module模块 4.ngx_http_log_module模块 5.ngx_http_gzip_module: 6.ngx_http_ssl_module模块: 7…

    Linux干货 2017-08-08
  • 磁盘、文件系统管理

    linux磁盘、文件系统管理 硬盘:机械硬盘、固态硬盘     计算硬盘速度:IoPs:(Io  per  second ) 每秒20次 机械硬盘:     track:磁道     平均寻道时间  &nbsp…

    Linux干货 2016-08-25
  • 第二十周作业

    一、用keepalived实现nginx与lvs的高可用集群 keepalived+nginx高可用环境:node1:    192.168.31.233     keepalived+nginx masternode2:    192.168.31.72      k…

    2017-07-22
  • 简单shell脚本习题

    习题 作业 简单shell脚本习题 习题1 答案 习题2 答案 习题3 答案 习题4 答案 习题5 答案 习题6 答案 习题1 编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本, CPU型号,内存大小,硬盘大小。 答案 #!/bin/bash IPADDR=$(…

    Linux干货 2017-04-10
  • N22-第十一周作业

    第十一周作业 1、详细描述一次加密通讯的过程,结合图示最佳 (1)为了做到数据的安全,应该同时满足 保密性 完整性 可用性 (2)假设A,B通信,A是客户机,B是服务器 a、客户端向服务器端发送自己支持的加密方式,并且向服务器端请求其CA颁发给的证书 b、服务器选择共同支持的加密方式并发送自己的证书; c、客户端收到其证书,并验证证书,证书必须同时满足以下条…

    Linux干货 2016-12-06

评论列表(1条)

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

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