httpd

  HTTP指的是Hyper Text Transfer Protocol,超文本传输协议,主要为网站服务器程序与浏览器之间传输网页定义相关的标准。
  HTML指的是Hyper Text Markup Language,超文本标记语言,是静态网页文件的标记规范。

1.Web通信基本概念
基于B/S(Browser/Server)架构的网页服务
服务端提供网页,浏览器下载并显示网页
实现Web的软件: httpd nginx tomcat
Apache
网络路径:在浏览器输入的地址
实际路径:服务器存放网页文件的路径
2.独立Web主机
装包httpd > 重启httpd > 测试 > 默认网页存放路径 /var/www/html
配置文件路径:
/etc/httpd/conf/httpd.conf //主配置文件
/etc/httpd/conf.d/.conf //调用配置文件
提供的默认配置:
Listen:监听地址:端口(80)
ServerName:本站点注册的DNS名称(空缺)
DocumentRoot:网页根目录(/var/www/html)
DirectoryIndex:起始页/首页文件名(index.html)
3.虚拟Web主机
1)由一台服务器提供多个不同的Web站点
2)分类:基于域名的虚拟主机
基于端口的虚拟主机
基于ip地址的虚拟主机
3)配置一个虚拟站点: (每四行为一个虚拟主机)
vim /etc/httpd/conf.d/
.conf
<VirtualHost ip地址:端口>
ServerName 此站点的DNS名称
DocumentRoot 此站点的网页根目录

4)一旦启用虚拟Web主机后
—外部的ServerName DocumentRoot会被忽略
—第一个虚拟站点被视为默认站点
4. 网页内容访问
文件夹权限
–针对DocumentRoot网页目录的控制权限
–httpd运行身份(用户/组):apache
客户机地址限制
使用配置区段
–每个文件夹自动继承其父目录的ACL访问权限
–除非针对子目录有明确设置
配置: vim /etc/httpd/conf.d/.conf
<Directory 目录的绝对路径>
Require all denied //拒绝所有客户端访问
Require all granted //允许所有客户端访问
Require ip IP或网段地址 … … //允许个别客户端访问

5.增加新的Web目录
SELinux策略: 更改安全上下文值
ls -Zd 目录 //查看目录安全上下文值
semanage fcontext -l //查看安全上下文值列表
semanage fcontext -a -t httpd_sys_content_t '新目录(/.)?’ //将新目录增加到预设的标准Web目录范围(增加Web目录)
chcon -R --reference=模板目录 新目录 //参照模板目录,重设新目录的属性 -R:递归
6.部署动态网站
静态网站概述
–服务端的原始网页=浏览器访问到的网页
–由Web服务软件处理所有请求
–文本/图片等静态资源
动态网站的运行
–服务端的原始网页≠浏览器访问到的网页
–由Web服务软件接受请求,动态程序转后端模块处理
–PHP网页 Python网页 JSP网页 …
1) 具备Python网页文件
webinfo.wsgi
2)页面跳转
vim /etc/httpd/conf.d/virtualhost.conf
<VirtualHost ip地址:端口>
ServerName 此站点的DNS名称
DocumentRoot 此站点的网页根目录
Alias 网页文件根目录(/) 目标路径/文件名

3)装mod_wsgi软件
vim /etc/httpd/conf.d/virtualhost.conf
<VirtualHost ip地址:端口>
ServerName 此站点的DNS名称
DocumentRoot 此站点的网页根目录
WsgiScriptAlias 网页文件根目录(/) 目标路径/文件名

4)监听端口
Listen 端口
<VirtualHost ip地址:端口>
ServerName 此站点的DNS名称
DocumentRoot 此站点的网页根目录
WsgiScriptAlias 网页文件根目录(/) 目标路径/文件名

5)SELinux策略更改(非默认端口开放)
semanage port -l //查看默认端口
semanage port -a -t http_port_t -p tcp 端口号 //非默认端口开放 a:添加 t:类型 p:协议
7.安全Web服务
PKI公钥基础设施
Public Key Infrastructure,公钥基础设施
– 公钥:主要用来加密数据
– 私钥:主要用来解密数据(与相应的公钥匹配)
– 数字证书:证明拥有者的合法性/权威性(单位名称、有效期、公钥、颁发机构及签名、…)
– Certificate Authority,数字证书授权中心:负责证书的申请/审核/颁发/鉴定/撤销等管理工作
配置思路:
/etc/pki/tls/certs/证书文件.crt
/etc/pki/tls/private/私钥文件.key
指定SSL虚拟站点的DNS名称,网页根目录
指定站点证书/根证书/站点秘钥的位置

1.部署网站证书(营业执照)
]# cd /etc/pki/tls/certs/
]# wget http://classroom.example.com/pub/tls/certs/server0.crt
2.部署根证书(工商局信息)
]# cd /etc/pki/tls/certs/
]# wget http://classroom.example.com/pub/example-ca.crt
3.部署私钥(用于解密数据)
]# cd /etc/pki/tls/private/
]# wget http://classroom.example.com/pub/tls/private/server0.key
4.安装mod_ssl软件,支持https加密通信
[root@server0 /]# yum -y install mod_ssl
[root@server0 /]# ls /etc/httpd/conf.d/ssl.conf
5.修改支持https加密通信的配置文件
[root@server0 /]# vim /etc/httpd/conf.d/ssl.conf
59 DocumentRoot “/var/www/html”
60 ServerName www0.example.com:443
指定网站证书
100 SSLCertificateFile /etc/pki/tls/certs/server0.crt
指定私钥
107 SSLCertificateKeyFile /etc/pki/tls/private/server0.key
指定根证书
122 SSLCACertificateFile /etc/pki/tls/certs/example-ca.crt
6.重起httpd服务
[root@server0 /]# systemctl restart httpd
[root@desktop0 ~]# firefox https://www0.example.com
我已了解可能的风险----》添加例外----》确认安全例外

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值