https配置
https是什么
HTTPS (全称:Hyper Text Transfer Protocol over SecureSocket Layer),是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性 。
HTTPS 在HTTP 的基础下加入SSL 层,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。 HTTPS 存在不同于 HTTP 的默认端口及一个加密/身份验证层(在 HTTP与 TCP 之间)。这个系统提供了身份验证与加密通讯方法。现在它被广泛用于万维网上安全敏感的通讯,例如交易支付等方面。
SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议
https的原理
HTTPS 主要由两部分组成:HTTP + SSL / TLS,也就是在 HTTP 上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过 TLS 进行加密,所以传输的数据都是加密后的数据
优点:
安全、能保证数据的准确性、
缺点:
成本高、同网络环境下,HTTPS 协议会使页面的加载时间延长近 50%,增加 10%到 20%的耗电。此外,HTTPS 协议还会影响缓存,增加数据开销和功耗、HTTPS 协议的安全是有范围的,黑客攻击、拒绝服务攻击和服务器劫持等方面几乎起不到什么作用。
https的配置步骤
yum install mod_ssl -y #设置加密
cd /etc/httpd/conf.d/
ls
systemctl restart httpd
netstat -antlupe | grep httpd #443端口开启
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload
执行genkey www.westos.com 命令要执行 必须下载yum install crypto-utils 用来设置认证
yum install crypto-utils.x86_64 -y
genkey www.westos.org
进行手动生成证书
vim /etc/httpd/conf.d/
101 行添加新证书的 .crt文件
109 添加新证书的.key文件
systemctl restart httpd
在浏览器中输入
https://172.25.254.110 进行操作,添加自己的证书
为什么在生成证书时collecting 加载(第二次加载时,移动鼠标或者键盘速度会变快)
因为在shell输入或者移动鼠标时 /etc/dev/random的内容会变,移动它内容会写的快。
设定https虚拟主机并设定网页重写
此实验的目的是:
实现像百度一样,你不管输入什么(www.baidu.com),它都会自动跳转到https:…
1.在vhost文件对创建一个虚拟访问站点(login.westos.org) 端口为443
vim /etc/httpd/conf.d/vhost.conf
2.创建有关此站点的文件
即使创建也不会成功 ,因为当你在不做任何指定时,默认访问的端口是80
mkdir /var/www/virtual/westos.org/login
vim /var/www/virtual/westos.org/login/index.html
添加 login
vim /etc/hosts
添加
login.westos.org
3.在vhost文件创建一个虚拟访问站点 端口为80 指引对网页进行重写
指引对网页进行重写
^(/.*) $ 客户在浏览地址栏中输入的所有字符
https:// 强制客户加密访问
%{HTTP_HOST} 客户请求主机
$1 "$1"表示^(/.*)的值
[redirect=301] 永久重写 302临时,默认永久
测试:
输入login.westos.org 会自动跳转至https界面
ctrl+shfit+delete清空缓存