httpd

apache安装

yum install httpd
systemctl restart httpd
systemctl enable httpd (加如开机启动项)


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

网站的登录用户为apache
在这里插入图片描述
apache为其他用户,如果没有读权限是无法加载网页信息
在这里插入图片描述
在这里插入图片描述


通过apache分享文件

在/var/www/html下建立一个文件夹
在这里插入图片描述
由于有执行权限,所以apache用户可以进入该文件夹
拷贝文件到此文件夹
在这里插入图片描述
猜一猜,这两个文件能分享吗?
在这里插入图片描述
很显然,passwd文件能分享,而shadow不能,因为他对其他用户没有读权限!
当给他加上读权限时:
在这里插入图片描述
在这里插入图片描述
成功读取!

那在配置文件中哪个选项是管文件分享的呢?
在这里插入图片描述
把Indexes删除就不会共享了
在这里插入图片描述
重启apache,从新访问,就不能共享了!
在这里插入图片描述


apache白名单和黑名单

在这里插入图片描述
没有就自己添加,这只对这个标签表示的目录文件有限!
这两句意思为:先允许再拒绝,允许所有人访问。

我改下:
在这里插入图片描述
我主机地址:172.21.204.107
kali地址:172.21.230.72
表示:允许172.21.230.72访问,其他都拒绝!

重启后主机访问:只能访问apache的默认内容
在这里插入图片描述
kali访问:正常访问!
在这里插入图片描述

同样可以对网段进行设置:
在这里插入图片描述
表示允许172.21网段访问,其他拒绝!

同样可以反过来进行操作:
在这里插入图片描述
重启Http

拒绝:172.21.230.72,其他允许!
主机访问:正常!
在这里插入图片描述
kali访问:失败!


修改默认文件存放目录

默认位置:/var/www/html

修改:vim /etc/http/conf/httpd.conf

(119行) DocumentRoot “/var/www/html” --> 修改指定位置

(124) <Directory “/var/www/html” --> 修改指定位置


设置用户都有独立的网站

vim /etc/httpd/conf.d/userdir.conf
UserDir disabled —> UserDir public_html 这样用户就可以在自己的家目录里新建一个目录为public_html的文件来存放网站html

  1. su - xiaoming #切换用户

  2. mkdir public_html&&cd public_html

  3. vim a.html
    最后设置 setcebool -P httpd_enable_homedirs=on


对网站进行密码登录操作

vim /etc/httpd/conf.d/userdir.conf

htpasswd -c /etc/httpd/passwd(密码文件) linuxprobe(用户名) 生成该用户网站的密码文件
在这里插入图片描述


使用多个IP来定义网站

vim /etc/httpd/conf.d/userdir.conf

113 <VirtualHost 192.168.10.10>  定义哪个IP的网站
114 DocumentRoot /home/wwwroot/10  定义这个IP的网站存放路径
115 ServerName www.linuxprobe.com  定义域名
116 <Directory /home/wwwroot/10 >  设定权限
117 AllowOverride None             禁止伪协议
118 Require all granted							所有人都可以访问
119 </Directory>										结束权限标志
120 </VirtualHost>									结束定义标志

设置SE上下文权限(限制网站权限)

vim /etc/selinux/config
设置
SELINUX=enforcing

设置这个目的是为了防止黑客拿到网站权限以后肆意破环(限定权限)

可以使用getenforce命令获得当前SELinux服务的运行模式:

  • enforcing:强制启用安全策略模式,将拦截服务的不合法请求。

  • permissive:遇到服务越权访问时,只发出警告而不强制拦截。

  • disabled:对于越权的行为不警告也不拦截。

具体设置

setenforce 1
ls -Zd /var/www/html
drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 /var/www/html
ls -Zd /home/wwwroot
drwxrwxrwx. root root unconfined_u:object_r:home_root_t:s0 /home/wwwroot
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot
semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/*

对网站进行域名设置

  1. vim /etc/hosts
按照这种格式写 IP 域名 域名 ......
192.168.10.10 www.linuxprobe.com bbs.linuxprobe.com tech.linuxprobe.com
  1. 然后创建网站目录
[root@linuxprobe ~]# mkdir -p /home/wwwroot/www
[root@linuxprobe ~]# mkdir -p /home/wwwroot/bbs
[root@linuxprobe ~]# mkdir -p /home/wwwroot/tech
[root@linuxprobe ~]# echo "WWW.linuxprobe.com" > /home/wwwroot/www/index.html
[root@linuxprobe ~]# echo "BBS.linuxprobe.com" > /home/wwwroot/bbs/index.html
[root@linuxprobe ~]# echo "TECH.linuxprobe.com" > /home/wwwroot/tech/index.html
  1. 修改网站配置信息
vim /etc/httpd/conf/httpd.conf
===========================================
113 <VirtualHost 192.168.10.10>
114 DocumentRoot "/home/wwwroot/www"
115 ServerName "www.linuxprobe.com"
116 <Directory "/home/wwwroot/www">
117 AllowOverride None
118 Require all granted
119 </directory> 
120 </VirtualHost>
=============================================
121 <VirtualHost 192.168.10.10>
122 DocumentRoot "/home/wwwroot/bbs"
123 ServerName "bbs.linuxprobe.com"
124 <Directory "/home/wwwroot/bbs">
125 AllowOverride None
126 Require all granted
127 </Directory>
128 </VirtualHost>
=============================================
129 <VirtualHost 192.168.10.10>
130 DocumentRoot "/home/wwwroot/tech"
131 ServerName "tech.linuxprobe.com"
132 <Directory "/home/wwwroot/tech">
133 AllowOverride None
134 Require all granted
135 </directory>
136 </VirtualHost>
  1. 如果设置SE安全则需要进行设置
[root@linuxprobe ~]# ls -Zd /var/www/html
drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 /var/www/html
[root@linuxprobe ~]# ls -Zd /home/wwwroot
drwxrwxrwx. root root unconfined_u:object_r:home_root_t:s0 /home/wwwroot

[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot
[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/www
[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/www/*
[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/bbs
[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/bbs/*
[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/tech
[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/tech/*
[root@linuxprobe ~]# restorecon -Rv /home/wwwroot/

使用端口号进行网站设置

vim /etc/httpd/conf/httpd.conf 
43 Listen 6111  #设置监听端口号
44 Listen 6222
====================================== 
113 <VirtualHost 192.168.10.10:6111>
114 DocumentRoot "/home/wwwroot/6111"  #对应这个端口号的网站目录路径(前提已经创建好了)
115 ServerName www.linuxprobe.com
116 <Directory "/home/wwwroot/6111">
117 AllowOverride None
118 Require all granted
119 </Directory> 
120 </VirtualHost>
======================================
121 <VirtualHost 192.168.10.10:6222>
122 DocumentRoot "/home/wwwroot/6222"
123 ServerName bbs.linuxprobe.com
124 <Directory "/home/wwwroot/6222">
125 AllowOverride None
126 Require all granted
127 </Directory>
128 </VirtualHost>

然后设置SE

[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot
[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6111
[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6111/*
[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6222
[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6222/*
[root@linuxprobe ~]# restorecon -Rv /home/wwwroot/

然后再设置SE对端口号的支持

semanage port -l | grep http  #先查看支持没如果支持了就不用再设置了
===========进行设置
[root@linuxprobe ~]# semanage port -a -t http_port_t -p tcp 6111  
[root@linuxprobe ~]# semanage port -a -t http_port_t -p tcp 6222
# -a 设置添加
# -t 端口号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值