Linux之RHCE阶段服务-Apache服务


准备工作
克隆一台新的rhel8

设置网络

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
搭建yum仓库

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

不开图形
在这里插入图片描述
在这里插入图片描述

1、Apache的作用

在web被访问时通常使用http://的方式
http:// #超文本传输协议

http://超文本传输协议提供软件:
Apache
nginx
stgw
jfe
Tengine

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、Apache的安装

dnf install httpd.x86_64 -y

在这里插入图片描述
在这里插入图片描述

3、Apache的启用

systemctl enable --now httpd			#开启服务并设定服务为开机启动
firewall-cmd --list-all				#查看火墙信息
firewall-cmd --permanent --add-service=http	#在火墙中永久开启http访问
firewall-cmd --permanent --add-service=https	#在火墙中永久开启https访问
firewall-cmd --reload				#刷新火墙使设定生效

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

开启没有生效在这里插入图片描述
在这里插入图片描述
rhel7http://192.168.1.100
在这里插入图片描述

4、Apache的基本信息

服务名称: httpd
配置文件:

/etc/httpd/conf/httpd.conf	#主配置文件
/etc/httpd/conf.d/*conf 	#子配置文件

默认发布目录:

/var/www/html

默认发布文件:
index.html

默认端口:
80 #http
443 #https

用户:apache

日志:/etc/httpd/logs

5、Apache的基本配置

(1)Apache端口修改

vim /etc/httpd/conf/httpd.conf
Listen 6666
firewall-cmd --permanent --add-port=6666/tcp
firewall-cmd --reload
semanage port -l | grep http
semanage port -a -t http_port_t -p tcp 6666
systemctl restart httpd

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
火墙未允许使用8080端口

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(2)默认发布文件

vim /etc/httpd/conf/httpd.conf
	DirectoryIndex westos.html index.html
systemctl restart httpd

在这里插入图片描述
若index.html不存在,访问Apache的默认测试页,否则,访问文件内容。
在这里插入图片描述
修改端口
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
先访问westos.html,再访问index.html
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(3)默认发布目录

vim /etc/httpd/conf/httpd.conf	
	DocumentRoot "/westos/html"
	<Directory "/westos/html">
	    Require all granted
	</Directory>
semanage fcontext -a -t httpd_sys_content_t '/westos(/.*)?'
restorecon -RvvF /westos/
systemctl restart httpd

firefox http://192.168.1.100

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6、Apache的访问控制

实验素材

mkdir  /var/www/html/westos
vim /var/www/html/westos/index.html
	<h1>westosdir's page</h1>

firefox http://192.168.1.100/westos

(1)基于客户端IP的访问控制

IP白名单

<Directory "/var/www/html/westos">
    Order Deny,Allow
    Allow from 192.168.1.200
    Deny from All
</Directory>

IP黑名单

<Directory "/var/www/html/westos">
    Order Allow,Deny
    Allow from All
    Deny from 192.168.1.200
</Directory>

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
先读Allow,再读Deny,Deny覆盖Allow中的内容,范围小要后读

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
用rhel8访问
在这里插入图片描述

(2)基于用户认证

vim /etc/httpd/conf/httpd.conf 
<Directory "/var/www/html/westos">
    AuthUserfile /etc/httpd/htpasswdfile		#指定认证文件
    AuthName "Please input your name and password"	#认证提示语
    AuthType basic					#认证类型	
    Require user admin					#允许通过的认证用户
    (2选1)/Require valid-user				#允许所有用户通过认证
</Directory>

htpasswd -cm /etc/httpd/htpasswdfile admin		#生成认证文件
注意:当/etc/httpd/htpasswdfile存在,那么在添加用户时不要加-c参数,否则会覆盖原文件内容

systemctl restart httpd

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
若文件/etc/httpd/htpasswdfile不存在+c,若存在后+c文件中原来内容会被清除
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
指定用户admin可以访问
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7、Apache的虚拟主机

mkdir /var/www/westos.com/{news,wenku} -p
echo "wenku's page" > /var/www/westos.com/wenku/index.html
echo "news's page" > /var/www/westos.com/news/index.html
echo "default's page" > /var/www/html/index.html

wenku.westos.com————>wenku's page
news.westos.com————>news's page
www.westos.com————>default's page

设定客户端解析(浏览器所在的主机中)

vim /etc/hosts
192.168.1.100 www.westos.com news.westos.com wenku.westos.com
vim /etc/httpd/conf.d/VirtHost.conf
    <VirtualHost _default_:80>
        DocumentRoot "/var/www/html"
        CustomLog logs/default.log combined
    </VirtualHost>

    <VirtualHost *:80>
        ServerName wenku.westos.com
        DocumentRoot "/var/www/westos.com/wenku"
        CustomLog logs/wenku.log combined
    </VirtualHost>

    <VirtualHost *:80>
        ServerName news.westos.com
        DocumentRoot "/var/www/westos.com/news"
        CustomLog logs/news.log combined
    </VirtualHost>

systemctl restart httpd

修改本地解析

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

news.westos.com————>/var/www/westos.com/news/index.html
news.wenku.com————>/var/www/westos.com/wenku/index.html

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
当访问不同站点时,访问的是不同页面
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
安装Apache手册
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

8、Apache的语言支持

html #默认支持
php
perl
asp
jsp

(1)html

(2)php

vim /var/www/html/index.php
    <?php
        phpinfo();
    ?>

dnf install php.x86_64 -y
systemctl restart httpd

firefox http://192.168.1.200/index.php

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
php默认测试页

(3)perl

cgi

mkdir -p /var/www/html/cgidir
vim /var/www/html/cgidir/index.cgi
    #!/usr/bin/perl
    print "Content-type:text/html\n\n";
    print `date`;

vim /etc/httpd/conf.d/VirtHost.conf
    <Directory "/var/www/html/cgidir">
        Options +ExecCGI
        AddHandler cgi-script .cgi
    </Directory>

systemctl restart httpd

firefox http://192.168.1.200/cgidir/index.cgi

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

9、Apache的加密访问

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
生成证书之前把已加载的证书删除
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
rhel7中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
rhel8生成证书

openssl genrsa -out /etc/pki/tls/private/www.westos.com.key 2048
#生成私钥
openssl req -new -key /etc/pki/tls/private/www.westos.com.key -out /etc/pki/tls/certs/www.westos.com.csr
#生成证书签名文件
openssl x509 -req -days 365 -in /etc/pki/tls/certs/www.westos.com.csr -signkey /etc/pki/tls/private/www.westos.com.key -out /etc/pki/tls/certs/www.westos.com.crt
#生成证书
#x509 证书格式 -req 请求 -in 加载签证名称 -signkey 指定签证key文件

vim /etc/httpd/conf.d/VirtHost.conf
    <VirtualHost *:443>
        ServerName login.westos.com
        DocumentRoot "/www/westos.com/login"
        CustomLog logs/login.log combined
        SSLEngine on
        SSLCertificateFile /etc/pki/tls/certs/www.westos.com.crt
        SSLCertificateKeyFile /etc/pki/tls/private/www.westos.com.key
    </VirtualHost>
    <VirtualHost *:80>
        ServerName login.westos.com
        RewriteEngine on 
        RewriteRule ^(/.*)$ https://%{HTTP_HOST}$1
    </VirtualHost>
^(/.*)$		#客户主机在浏览器地址栏中输入的字符
https://	#强制客户访问加密
%{HTTP_HOST}	#客户主机
$1		#$1表示RewriteRule后所接入的第一串字符

测试:
vim /etc/hosts
192.168.1.100 login.com

firefox http://login.westos.com
当访问此网页时会自动跳转到https://login.westos.com

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
rhel7中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
需手动填写https在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

自动跳转在这里插入图片描述

10、Squid+Apache

(1)squid正向代理

实验环境:
单网卡主机设定ip不能上网
双网卡主机设定ip1可以连接单网卡主机,设定ip2可以上网

实验效果:
让单网卡主机不能上网但浏览器可以访问互联网络

操作:

在双网卡主机中
dnf install squid -y
vim /etc/squid/squid.conf
    59 http_access allow all
    65 cache_dir ufs /var/spool/squid 100 16 256
systemctl restart squid
firewall-cmd --permanent --add-port=3128/tcp
firewall-cmd --reload

在单网卡主机中选择
NetWork Proxy
172.25.254.13 3128

测试:
在单网卡主机中
ping www.baidu.com  	不通
在浏览器中访问www.baidu.com可以

Apache所在主机:
在这里插入图片描述
不能上网

另一台rhel8:
在这里插入图片描述
可上网,另给其增加一块网卡
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Apache所在主机
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(2)squid反向代理

实验环境:
192.168.1.11 		#Apache服务器
192.168.1.150 		#squid,没有数据负责缓存
vim /etc/squid/squid.conf
    http_port 80 vhost vport	#vhost支持虚拟域名,vport支持虚拟端口
    cache_peer 192.168.1.11 parent 80 0 proxy-only
    #当192.168.1.150的80端口被访问会从192.168.1.11的80端口缓存数据

systemctl restart squid

测试:
firefox http://192.168.1.150
访问看到的是192.168.1.11上的数据

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值