Linux中怎么使用SSL搭建https服务器
文章目录
Linux中怎么搭建https服务器
说明:本次实验环境在虚拟机上进行,使用的镜像文件是RH7.5的镜像文件。
一、SSL认证(https):
理解:HTTPS=HTTP+SSL
1、简介:
https超文本传输安全协议,默认端口为443,可以理解为安全的http,它是在http和TCP之间插入了TSL/SSL密码加密层。在说https的时候就一定要提一下http,超文本传输协议http被用于在web浏览器和网站服务器之间传递信息,但是它是以明文的方式发送内容的,不提供任何方式的数据加密。因此web浏览器和网站服务器之间传输数据报文的时候,很容易被攻击者直接截取到信息。因此http协议不适合传输一些敏感信息,比如说账号、密码等。
为了解决http协议的缺陷,就出现了https安全套接字层超文本传输协议,https在http的基础上加上了SSL协议,SSL依靠证书验证服务器的身份,并为浏览器和服务器之间进行通信加密。
2、http和https的区别:
类别 | http | https |
---|---|---|
是否付费 | 否 | https协议需要到ca (Certificate Authority)申请证书,一般免费证书很少,需要交费 |
传输 | 明文传输 | 具有安全性的ssl加密传输协议 |
连接端口 | 80 | 443 |
复杂度 | 连接简单 | 加密传输、身份认证 |
3、SSL建立过程:
证书的格式遵循X.509 V3标准,该证书格式包含三个标准文件:key、csr、crt
文件 | 注解 |
---|---|
key | 是服务器上的私钥文件,用于对发送给客户端数据的加密,以及对从客户端接收到的数据的解密。 |
csr | 证书签名请求文件,用于提交给证书颁发机构(CA)对证书的签名 |
crt | 是由证书颁发机构(CA)签名后的证书,或者是开发者自签名的证书,包含证书持有人的信息,持有人的公钥,以及签署者的签名等信息 |
PKI:公钥基础设施,提供公钥加密和数字签名服务的系统或平台,为了管理密钥和证书。它遵循一种标准的利用公钥加密技术,为电子商务的开展提供了一套安全基础平台的技术规范。
证书如下:
二、准备工作:
1、挂载光盘: 使用命令: mount /dev/sr0 /mnt
2、配置yum: 如图所示:
3、安装httpd服务: 使用命令: yum install httpd -y
4、关闭防火墙: systemctl stop firewalld.service
5、关闭SELinux: setenforce 0
三、搭建https服务器:
1、安装认证模块:
(1)使用命令: yum install mod_ssl.x86_64 -y 进行安装。安装完成之后可以使用命令: rpm -ql mod_ssl 查看安装包释放了哪些文件在哪里。这里需要注意的是:/etc/httpd/conf.d/ ssl.conf ,这个就是我们的SSL配置文件。
(2)安装自签名证书:
①切换到安装证书的目录: cd /etc/pki/tls/certs/
②开始安装自签名证书: make zhengshu.crt
③如果安装成功,会在当前目录看到以下证书文件:
2、定义虚拟主机配置文件:
使用命令: vim /etc/httpd/conf.d/vhosts.conf
<Directory /www/https>
AllowOverride none
Require all granted
</Directory>
<VirtualHost 192.168.112.132:443>
ServerName 192.168.112.132
DocumentRoot /www/https
SSLEngine on 认证引擎
SSLProtocol all -SSLv2 -SSLv3 所对应的协议版本
SSLCipherSuite HIGH:3DES:!aNULL:!MD5:!SEED:!IDEA 支持的加密算法
SSLCertificateFile /etc/pki/tls/certs/zhengshu.crt 携带的证书文件
SSLCertificateKeyFile /etc/pki/tls/certs/zhengshu.key 当前服务器的私钥文件
</VirtualHost>
3、创建访问目录:
4、重启httpd服务:
重启服务它会提示你输入SSL认证短语。其实就是我们制作证书所用到的密码。
5、检查httpd服务:
三、验证
我们使用IE浏览器访问https//192.168.112.132/,它会出现以下界面:
点开后会出现以下页面,即证实服务器搭建成功。
更多推荐
所有评论(0)