当前位置: 首页 > news >正文

HTTPS基础

目录

HTTPS简介

HTTP与HTTPS的区别

CA证书

案例

服务器生成私钥与证书

查看证书和私钥存放路径

Cockpit(图像化服务管理工具)


HTTPS简介

超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息。HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此HTTP协议不适合传输一些敏感信息,比如信用卡号、密码等。为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS。HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer 或 Hypertext Transfer Protocol Secure,超文本传输安全协议),是以安全为目标的HTTP通道。HTTPS并不是一个新协议,而是HTTP+SSL(TLS)。原本HTTP先和TCP(假定传输层是TCP协议)直接通信,而加了SSL后,就变成HTTP先和SSL通信,再由SSL和TCP通信,相当于SSL被嵌在了HTTP和TCP之间。

SSL 是“Secure Sockets Layer”的缩写,中文叫做“安全套接层”。它是在上世纪90年代中期,由网景公司设计的。到了1999年,SSL 应用广泛,已经成为互联网上的事实标准。IETF 就把SSL 标准化。标准化之后SSL被改为 TLS(Transport Layer Security传输层安全协议)。

SSL协议分为两层:

SSL记录协议 (SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能。
SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。

SSL协议提供的服务:

(1)认证用户和服务器,确保数据发送到正确的客户机和服务器

(2)加密数据以防止数据中途被窃取

(3)维护数据的完整性,确保数据在传输过程中不被改变

HTTP与HTTPS的区别

CA证书

CA(Certificate Authority,证书授权)是由认证机构服务者签发,是数字签名的技术基础保障,也是网上实体身份的证明,能够证明某一实体的身份及其公钥的合法性,证明该实体与公钥二者之间的匹配关系。

证书是公钥的载体,证书上的公钥与实体身份相绑定。现,一个是签名证书行的PKI机制一般为双证书机制,即一个实体应具有两个证书、两个密钥对,其中一个是加密证书,一个是签名证书,而加密证书原则上是不能用于签名的。

在电子商务系统中,所有实体的证书都是由证书授权中心即CA中心颁发并签名的。一个完整的、安全的电子商务系统必须建立一个完整的、合理的CA体系。CA体系由证书审批部门和证书操作部门组成。

认证CA证书的过程,私钥加密,公钥解密

案例

服务器生成私钥与证书

[root@Server conf.d]# yum install mod_ssl

[root@Server conf.d]# rpm -ql mod_ssl

/etc/httpd/conf.d/ssl.conf     ---ssl配置文件

查看证书和私钥存放路径

[root@Server conf.d]# vim ssl.conf

SSLCertificateFile /etc/pki/tls/certs/localhost.crt     --证书存放路径

SSLCertificateKeyFile /etc/pki/tls/private/localhost.key  --私钥存放路径

在虚拟机标签内添加证书和私钥路径,并指定为443端口

[root@Server ~]# vim /etc/httpd/conf.d/vhosts.conf

<VirtualHost 192.168.221.135:443>

        DocumentRoot /www/private

        ServerName 192.168.221.135

        SSLEngine on

        SSLCertificateFile /etc/pki/tls/certs/openlab.crt

        SSLCertificateKeyFile /etc/pki/tls/private/openlab.key

</VirtualHost>

[root@Server ~]# mkdir /www/private

[root@Server ~]# echo 我是私密的 > /www/private/index.html

[root@Server conf.d]# openssl req -newkey rsa:4096 -keyout /etc/pki/tls/private/openlab.key -x509 -days 365 -out  /etc/pki/tls/certs/openlab.crt

...........+..+.+...............+.....+............+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.........+...+......+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*................+.........+..+.+..+............+.+........+.......+.........+........+...+.......+....................+.+...........+.+..+.......+...........+........................+.............+......+...............+.........+..+.+..+.............+..+......+.+........................+..+...+......+.......................................+.+...+..................+...+..+...............+..........+.....+..........+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

......+.+..+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*...+.+.....+....+..+.........+......+....+...+..+......+....+...+........+...+.......+........+.........+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.+........+.+.....+.+...+.....+......+......+.........+......+.+.................+.......+.....+.........+...............................+........+...+............+............+......+...+.+......+.........+.....+.............+......+..+.......+........+..........+..+.+............+...+..............+...+....+...+........+...+....+..+.............+........+.........+..................+...+.......+..+.+..+.+............+...+.........+..................+...+.........+........+.........+......+....+......+.....+....+.....+...+................+......+..........................+...+.......+..+...+....+.......................+...+...+................+.....+...+..........................................+....+.........+.....+...+..................+..........+...........+....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Enter PEM pass phrase:

Verifying - Enter PEM pass phrase:

-----

You are about to be asked to enter information that will be incorporated

into your certificate request.

What you are about to enter is what is called a Distinguished Name or a DN.

There are quite a few fields but you can leave some blank

For some fields there will be a default value,

If you enter '.', the field will be left blank.

-----

Country Name (2 letter code) [XX]:86

State or Province Name (full name) []:guangxi

Locality Name (eg, city) [Default City]:wu'zhou

Organization Name (eg, company) [Default Company Ltd]:openlab

Organizational Unit Name (eg, section) []:ce

Common Name (eg, your name or your server's hostname) []:Server

Email Address []:admin@admin.com

[root@Server conf.d]# systemctl restart httpd   --重启服务

🔐 Enter TLS private key passphrase for 192.168.221.135:443 (RSA) : ******      

Cockpit(图像化服务管理工具)

Cockpit 是红帽开发的网页版图像化服务管理工具,优点是无需中间层,且可以管理多种服务。

[root@Server conf.d]# yum install cockpit

[root@Server conf.d]# systemctl restart cockpit

#端口9090

http://www.lryc.cn/news/320069.html

相关文章:

  • 【Flink SQL】Flink SQL 基础概念(四):SQL 的时间属性
  • 文字弹性跳动CSS3代码
  • 前端小白的学习之路(事件流)
  • 电脑文件误删除如何恢复?分享三个简单数据恢复方法
  • MySQL实战:监控
  • MySQL自增主键自动生成的主键重置
  • reverse_iterator实现
  • C++:什么情况下函数应该声明为纯虚函数
  • 【全面了解自然语言处理三大特征提取器】RNN(LSTM)、transformer(注意力机制)、CNN
  • 区块链推广海外市场怎么做,CloudNEO服务商免费为您定制个性化营销方案
  • 【S5PV210】 | ARM的指令集合
  • 2024-3-17Go语言入门
  • AJAX-XMLHttpRequest
  • 【GPT-SOVITS-04】SOVITS 模块-鉴别模型解析
  • 论文阅读_时序模型_iTransformer
  • Docker 哲学 - 容器操作 -cp
  • 作品展示ETL
  • python的集合应用
  • 盒子IM开源仿微信聊天程序源码,可以商用
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Web)中篇
  • 静默安装OGG21.3微服务版本FOR ORACLE版本
  • [二分查找]LeetCode2040:两个有序数组的第 K 小乘积
  • 【Godot4.2】颜色完全使用手册
  • Blocks —— 《Objective-C高级编程 iOS与OS X多线程和内存管理》
  • Python零基础---爬虫技术相关
  • 利用 STM32 TIMER 触发 ADC 实现分组转换
  • 2024 年(第 12 届)“泰迪杯”数据挖掘挑战赛——B 题:基于多模态特征融合的图像文本检索完整思路与源代码分享
  • Java12~14 switch语法
  • 小狐狸ChatGPT智能聊天系统源码v2.7.6全开源Vue前后端+后端PHP
  • The Rise and Potential of Large Language Model Based Agents: A Survey