Apache服务( 加密访问的设置及证书的生成)

https

超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。

为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

一、HTTP和HTTPS的基本概念

HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。

 HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。

HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。

二、HTTP与HTTPS有什么区别?

HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。简单来说,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。

HTTPS和HTTP的区别主要如下:

1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。

2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。

3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

三、

加密访问


访问百度时,输入网址 www.baidu.com(实质上是 http://www.baidu.com

自动跳转到 https://www.baidu.com
在这里插入图片描述

如何设置加密访问

下载

 yum install mod_ssl -y

cd /etc/httpd/conf.d/
ls              生成ssl.conf(ssl服务的主配置文件)
autoindex.conf  php.conf  ssl.conf      vhost.conf
manual.conf     README    userdir.conf  welcome.conf

systemctl restart httpd

firewall-cmd --reload 
success
firewall-cmd --list-all
public (default, active)
  interfaces: eth0
  sources: 
  services: dhcpv6-client dns http https ssh
  ports: 8080/tcp 6666/tcp
  masquerade: no
  forward-ports: 
  icmp-blocks: 
  rich rules: 

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

在这里插入图片描述
测试

访问apache时,系统自动生成证书在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

利用自己制作的证书实现apache的加密访问

删除系统生成的证书
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

自己制作的证书

yum install -y crypto-utils
genkey www.westos.com

vim /etc/httpd/conf.d/ssl.conf 
systemctl restart httpd.service 

在这里插入图片描述
构建https虚拟主机并设定网页重写(http—>https)
genkey www.westos.com
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

vim /etc/httpd/conf.d/ssl.conf 
systemctl restart httpd.service

在这里插入图片描述
构建httpd虚拟主机

ls
cgi-bin  html  vhost
cd /var/www/vhost/
ls
music  news
mkdir -p /var/www/vhost/login/html
cd /var/www/vhost/login/html/

 <h1>login's page</h1>

在这里插入图片描述
编写配置文件

vim /etc/httpd/conf.d/vhost.conf

在这里插入图片描述

客户端
配置域名

vim  /etc/hosts

在这里插入图片描述
测试
需保证已经添加证书
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

网页重写

实现直接输入ip便能自动跳转到https加密

 <VirtualHost *:443> 
  SSLEngine on             开启ssl服务
  SSLCertificateFile /etc/pki/tls/certs/www.westos.com.crt  证书
  SSLCertificateKeyFile /etc/pki/tls/private/www.westos.com.key  钥匙
  ServerName login.westos.com    搜索域名
  DocumentRoot /var/www/vhost/login/html  存放路径
  CustomLog logs/login.log combined
 </VirtualHost>
  
  <VirtualHost *:80>
     ServerName login.westos.com       搜索域名
     RewriteEngine on                  打开
     RewriteRule ^(/.*)$ https://%{HTTP_HOST}$1 [redirect=301]
  </VirtualHost>

  <Directory "/var/www/vhost/login/html">   授权
   Require all granted
  </Directory>

在这里插入图片描述

重启服务

systemctl restart httpd

测试

在这里插入图片描述

   ^(/.*)$ 
    ##表示客户端在浏览器地址栏中输入的所有字符
    https:// 
    ##强制客户加密访问 
    %{HTTP_HOST} 
    ##客户请求主机 
    $1 
    ##^(/.*)$的值 
    [redirect=301] 
    ##永久重写(302是临时转换)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值