linux 80 httpd,SElinux配置httpd

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

1、修改selinux策略并重启

[root@localhost ~]# vim /etc/selinux/config

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

#     enforcing - SELinux security policy is enforced.

#     permissive - SELinux prints warnings instead of enforcing.

#     disabled - No SELinux policy is loaded.

SELINUX=enforcing

2、安装http服务

yum install -y httpd

3、修改默认的Directory 项指定的目录为/website

[root@localhost ~]vim /etc/httpd/conf/httpd.conf

AllowOverride None

# Allow open access:

Require all granted

# Further relax access to the default document root:

DocumentRoot "/website"

4、添加目录,创建index.html文件

[root@localhost ~]# mkdir /website

[root@localhost ~]# cd /website/

[root@localhost website]# echo "

hello world" > index.html

5、修改index文件selinux标签

[root@localhost website]# chcon -t httpd_sys_content_t index.html

[root@localhost website]# ls -Z

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

6、重启httpd服务,使用网页访问:

[root@localhost website]# systemctl restart httpd

[root@localhost website]# ss -tan

State       Recv-Q Send-Q           Local Address:Port     Peer Address:Port

.......(省略).........

LISTEN      0      128              :::80             :::*

.......(省略).........

注:如遇不能访问,查看防火墙是否打开,使用iptables -F 命令关闭。

3c8ce6380daa33c267ccb0e2e66a02de.png

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

1、编辑httpd配置文件,将80端口替换为9527

[root@localhost website]# vim /etc/httpd/conf/httpd.conf

Listen 9527

使用vim内置命令,直接将80端口替换为9527(:%s/80/9527/)

2、添加httpd的端口

(需要使用semanage 命令,如没有,使用$(yum install -y policycoreutils-python)安装

1)查看当前http服务端口

[root@localhost website]# semanage port -l | grep http_port_t

http_port_t                    tcp      80, 81, 443, 488, 8008, 8009, 8443, 9000

2)添加http服务端口9527

3、重启httpd服务,并查看端口

[root@localhost website]# systemctl restart httpd

[root@localhost website]# ss -tan

State       Recv-Q Send-Q       Local Address:Port                     Peer Address:Port

LISTEN      0      128          :::9527    /http端口变为9527监听             :::*

4、使用网页访问,ip地址加端口号9527(因为web服务默认端口为80,如不手动添加端口,则不能访问)

3c8ce6380daa33c267ccb0e2e66a02de.png

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

(如要添加家目录中的网页能通过http访问,需将httpd服务selinux限制家目录e的规则开启:)

1)查看其相关的规则:

~]# getsebool -a | grep homedir

git_cgi_enable_homedirs --> off

git_system_enable_homedirs --> off

httpd_enable_homedirs --> off   //此规则处于off状态,需要设置为on

.....(省略).....

2)将http家目录规则开启为on

[root@localhost website]# setsebool -eP httpd_enable_homedirs on   //-P选项为永久更改,直接修改进规则库保存

[root@localhost website]# getsebool -a | grep homedir

git_cgi_enable_homedirs --> off

git_system_enable_homedirs --> off

httpd_enable_homedirs --> on   //此时此规则为开启

(使用命令"semanage boolean -l"  可查看所有SElinux布尔型规则)

[root@localhost website]# semanage boolean -l

SELinux boolean                State  Default Description

ftp_home_dir                   (off  ,  off)  Allow ftp to home dir

smartmon_3ware                 (off  ,  off)  Allow smartmon to 3ware

mpd_enable_homedirs            (off  ,  off)  Allow mpd to enable homedirs

xdm_sysadm_login               (off  ,  off)  Allow xdm to sysadm login

.........(省略)........

(使用命令"semanage boolean -l  -C "  可查看所有更改过SElinux布尔型规则)

[root@localhost website]# semanage boolean -l -C

SELinux boolean                State  Default  Description

httpd_enable_homedirs          (on   ,   on)   Allow httpd to enable homedirs

3)修改http服务的配置文件,将其中的禁用家目录字段开启

(注:Centos6和Centos7配置文件地址不相同)

Centos6配置文件:/etc/httpd/conf/httpd.conf

Centos7配置文件:/etc/httpd/conf.d/userdir.conf

[root@localhost website]# vim /etc/httpd/conf.d/userdir.conf

#

....(省略)......

#

#UserDir disabled     //此项原来为开启,将其注释掉,

# To enable requests to /~user/ to serve the user's public_html

# directory, remove the "UserDir disabled" line above, and uncomment

# the following line instead:

#

UserDir web   //此项原来为禁止,将其开启,意为使用用户目录访问,访问方式上面的描述已经说明了“To enable requests to /~user/ to serve the user's public_html ”,由于我更改了目录名称,“public_html”则就为web

4)在用户家目录下创建web目录,在其中创建index.html文件,更改其他用户访问权限,查看权限及标签信息

[root@localhost ~]# su - li

[li@localhost ~]$ mkdir web

[li@localhost ~]$ echo "

This is user:

 li

home" > ./web/index.html

[li@localhost ~]$ cd web/

[li@localhost web]$ chmod 711 index.html

[li@localhost web]$ ls -Z

-rwx--x--x. li li unconfined_u:object_r:httpd_user_content_t:s0 index.html

5)重启服务,使用格式:"IP地址/~用户名/web/index.html" 访问

[root@localhost ~]# systemctl restart httpd

3c8ce6380daa33c267ccb0e2e66a02de.png

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值