Linux CentOS 8(HTTPS的配置与管理)


Linux CentOS 8(HTTPS的配置与管理)


目录

    • 一、HTTPS 介绍
    • 二、SSL 证书的介绍
    • 三、实验配置


一、HTTPS 介绍

HTTPS 在 HTTP 的基础下加入 SSL,SSL 是“Secure Sockets Layer”的缩写,中文为“安全套接层”。因此 HTTPS 是以安全为目标的 HTTP 通道,在 HTTP 的基础上通过传输加密和身份认证保证了传输过程的安全性。 因此 SSL 证书的两大作用是数据加密和身份认证。

二、SSL 证书的介绍

SSL 证书遵循 SSL 协议,通过在客户端浏览器和 Web 服务器之间建立一条 SSL 安全通道。一个有效、可信的 SSL 数字证书包括一个公共密钥和一个私用密钥。公共密钥用于加密信息,私用密钥用于解译加密的信息。因此,客户机浏览器指向一个安全域时,SSL 将同步确认服务器和客户端,并创建一种加密方式和一个唯一的会话密钥。它们可以启动一个保证消息的隐私性和完整性的安全会话。

三、实验配置

1、安装 openssl 软件包

[root@www test]# yum -y install openssl

2、查看openssl.cnf文件,如图1-1所示。

[root@www ~]# vim /etc/pki/tls/openssl.cnf

在这里插入图片描述

图1-1

3、创建index.txtserial文件

[root@www ~]# ls /etc/pki/tls/CA  ct_log_list.cnf  misc  openssl.cnf  certs   newcerts  private  
[root@www ~]# touch /etc/pki/tls/index.txt
[root@www ~]# echo 01 > /etc/pki/tls/serial
[root@www ~]# ls /etc/pki/tls/
CA  ct_log_list.cnf  misc  openssl.cnf  serial certs index.txt  newcerts  private 

4、安装mod_ssl模块

[root@www ~]# yum -y install mod_ssl
[root@www ~]# ls /etc/httpd/conf.d/
autoindex.conf  htpasswd  httpd-vhosts.conf  README  ssl.conf  userdir.conf  welcome.conf
//生成了ssl.conf配置文件

5、修改ssl.conf文件

[root@www ~]# vim /etc/httpd/conf.d/ssl.conf
DocumentRoot "/var/www/html"                       
//访问的目录路径
SSLCertificateFile /etc/httpd/ssl/server.crt           
//证书的路径
SSLCertificateKeyFile /etc/httpd/ssl/server.key
//证书私钥文件的路径

6、生成证书
创建并切换到指定目录下(ssl.conf文件中证书所在位置)

[root@www ssl]# cd /etc/httpd/ssl

创建私钥文件

[root@www ssl]# openssl genrsa -des3 -out server.key 2048
Generating RSA private key, 2048 bit long modulus (2 primes)
...................................................................................................................................
...................................................................................................................................
e is 65537 (0x010001)
Enter pass phrase for server.key:
Verifying - Enter pass phrase for server.key:

创建证书签署请求

[root@www ssl]# openssl req -new -key server.key -out server.csr
Enter pass phrase for server.key:
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]:CN
State or Province Name (full name) []:GD
Locality Name (eg, city) [Default City]:GZ
Organization Name (eg, company) [Default Company Ltd]:Jan16
Organizational Unit Name (eg, section) []:Technology
Common Name (eg, your name or your server's hostname) []:www.example.com
Email Address []:www.jan16.com
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:jan16
An optional company name []:jan16

创建自签证书

[root@www ssl]# openssl req -new -x509 -key server.key -out ca.crt -days 3650
Enter pass phrase for server.key:
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]:CN
State or Province Name (full name) []:GD
Locality Name (eg, city) [Default City]:GZ
Organization Name (eg, company) [Default Company Ltd]:Jan16
Organizational Unit Name (eg, section) []:Technology
Common Name (eg, your name or your server's hostname) []:www.example.com
Email Address []:www.jan16.com 

签发证书

[root@www ssl]# openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey server.key -CAcreateserial -out server.crt
Signature ok
subject=C = cn, ST = gz, L = th, O = jan16, OU = t, CN = www.example.com, emailAddress = 11.com
Getting CA Private Key
Enter pass phrase for server.key:

7、重启服务

[root@www ssl]# systemctl restart httpd
Enter TLS private key passphrase for www.example.com:443 (RSA) : **********

8、验证

[root@www httpd]# cat /var/www/html/index.html
This is my website!!

显示当前网站不安全,如图2-1所示。
在这里插入图片描述

图2-1

点击设置中的【首选项】,导入证书,如图2-2所示。
在这里插入图片描述

图2-2

点击【隐私与安全】,查看证书,如图2-3所示。
在这里插入图片描述

图2-3

点击导入,如图2-4所示。
在这里插入图片描述

图2-4

切换到对应的目录,选择ca.crt 证书,如图2-5所示。
在这里插入图片描述

图2-5

勾选【信任由此证书颁发机构来标识网址】和【信任由此证书颁发机构来标识电子邮件用户】两个选项,点击【确定】,如图2-6所示。
在这里插入图片描述

图2-6

刷新网站,能成功访问,如图2-7所示。
在这里插入图片描述

图2-7

制作成员: 何嘉愉
排版: 裕新
初审: 杨佳佳
复审: 二月二

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/184915.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt 二维码生成与识别

1.简介 QZXing是一个基于Qt框架的二维码解码库,它是对ZXing(Zebra Crossing)开源项目的一个Qt封装。ZXing是一个功能强大的开源二维码解码库,支持多种类型的码,包括QR码、DataMatrix码、Aztec码等。 QZXing提供了一个…

【C++】一文简练总结【多态】及其底层原理&具体应用(21)

前言 大家好吖,欢迎来到 YY 滴C系列 ,热烈欢迎! 本章主要内容面向接触过C的老铁 主要内容含: 欢迎订阅 YY滴C专栏!更多干货持续更新!以下是传送门! 目录 一.多态的概念二.多态的实现1&#xff…

SSM项目与Redis整合以及Redis注解式开发以及Redis击穿穿透雪崩

目录 前言 一、SSM项目整合Redis 1.导入pom依赖 2.Spring-redis相关配置 3.Spring上下文配置 二、redis注解式缓存 1.Cacheable 注解 2.CachePut 注解 3.CacheEvict 注解 三、redis击穿、穿透、雪崩 1. 缓存击穿 2. 缓存穿透 3. 缓存雪崩 前言 当将SSM项目与Red…

NSSCTF逆向题解

[SWPUCTF 2021 新生赛]简简单单的逻辑 直接把key打印出来,然后整理一下result,让key和result进行异或 key[242,168,247,147,87,203,51,248,17,69,162,120,196,150,193,154,145,8] data[0xbc,0xfb,0xa4,0xd0,0x03,0x8d,0x48,0xbd,0x4b,0x00,0xf8,0x27,0x…

uniapp中picker 获取时间组件如何把年月日改成年月日默认时分秒为00:00:00

如图所示,uniapp中picker组件的日期格式为: 但后端要 2023-11-08 00:00:00格式 如何从2023-11-08转化为 2023-11-08 00:00:00:👇 const date new Date(e.detail.value);//"2023-11-17" date.setHours(0, 0, 0); // 2…

docker部署MinIo

部署单个的MinIo 要在Docker中安装Minio,您可以按照以下步骤进行操作: 使用Docker命令拉取Minio镜像: docker pull minio/minio创建一个用于存储数据的本地目录。例如: mkdir -p /minio/path/to/data运行Minio容器&#xff1a…

[Linux/UOS]同一解决方案下的控制台程序依赖SO库的方法

该方法是基于VS2019的远程调试Linux的方案,使用的是UOS系统,本文不会去详述如何远程调试Linux和如何新建解决方案中的.so项目和.out项目 只关注于如何令.out项目依赖.so,并成功调用运行 以一个如上图结构的解决方案为例子,SysInfo…

合肥中科深谷嵌入式项目实战——基于ARM语音识别的智能家居系统(一)

基于ARM语音识别的智能家居系统 我们接下来带大家完成基于语音识别的智能家居系统嵌入式项目实战,使用到stm32开发板,讯飞的离线语音识别,我们在此之前,我们先学习一些Linux系统的基本操作。 。 一、Linux简介 在嵌入式开发中&am…

Linux开发工具的使用(vim、gcc/g++ 、make/makefile)

文章目录 一 :vim1:vim基本概念2:vim的常用三种模式3:vim三种模式的相互转换4:vim命令模式下的命令集- 移动光标-删除文字-剪切/删除-复制-替换-撤销和恢复-跳转至指定行 5:vim底行模式下的命令集 二:gcc/g1:gcc/g的作用2:gcc/g的语法3:预处理4:编译5:汇编6:链接7:函…

数字通信和fpga概述——杜勇版本学习笔记

1数字通信处理流程 脉冲调制是每个数字通信系统中间必不可少的环节,通常是使用升余弦滚降滤波器来实现。 超外差接收机原理是利用本地产生的振荡波与输入信号混频,将输入信号频率变换为某个预先确定的频率的方法。超外差原理最早是由E.H.阿姆斯特朗于1…

【理解链表指针赋值】链表中cur->next = cur->next->next->next与cur =cur->next->next的区别

最近在做链表的题目的时候,对于所定义的cur链表指针产生了一些疑惑,查阅资料后整理一下我的理解: /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int x) : val(x), next(n…

React中组件之间如何通信?

一、是什么 我们将组件间通信可以拆分为两个词: 组件通信 回顾Vue系列的文章,组件是vue中最强大的功能之一,同样组件化是React的核心思想 相比vue,React的组件更加灵活和多样,按照不同的方式可以分成很多类型的组件…

SQL注入漏洞 其他注入

文章目录 宽字节注入案例 HTTP头部注入Cookie注入base64User-Agent注入Referer 注入 SQL注入读写文件条件1.是否拥有读写权限2.文件路径3.secure_file_priv 读取文件写入文件 SQLMap安装sqlmapkail 源安装仓库克隆 参数简介快速入门;SQLmap(常规&#xf…

Vim编辑器学习

B站学习vim指令链接 1:vim下有两种模式,一种是命令模式,一种是编辑模式 2:命令到编辑模式,按键盘i,编辑到命令格式按Esc 3::wq 保存并退出 :wq code.c保存并把文件命名为…

unity Holoens2开发,使用Vuforia识别实体或图片 触发交互

建议:先看官方文档 我使用的utniy 版本:Unity 2021.3.6f1 官方建议:混合现实工具包简介 - 设置项目并使用手势交互 - Training | Microsoft Learn 配置了正确工具的 Windows 10 或 11 电脑Windows 10 SDK 10.0.18362.0 或更高版本安装了 U…

Redis实战 | 使用Redis 的有序集合(Sorted Set)实现排行榜功能,和Spring Boot集成

专栏集锦,大佬们可以收藏以备不时之需 Spring Cloud实战专栏:https://blog.csdn.net/superdangbo/category_9270827.html Python 实战专栏:https://blog.csdn.net/superdangbo/category_9271194.html Logback 详解专栏:https:/…

网络通信——与Socket交换数据(三十一)

1. 与Socket交换数据 1.1 知识点 (1)通过Android与Socket完成基本的Echo程序实现; (2)通过对象序列化进行大数据的传输; 1.2 具体内容 对于网络的开发而言,最常使用的交互模式:W…

算法之路(一)

🖊作者 : D. Star. 📘专栏 :算法小能手 😆今日分享 : 如何学习? 在学习的过程中,不仅要知道如何学习,还要知道避免学习的陷阱。1. 睡眠不足;2. 被动学习和重读;3. 强调标记或画线&am…

基于单片机的甲醛检测器设计

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 技术交流认准下方 CSDN 官方提供的联系方式 文章目录 概要 一、设计的主要内容二、系统硬件设计三、软件设计4.1 程序结构流程图原理图 四、结论五、 文章目录 概要 本文将要提…

【k8s】pod控制器

一、pod控制器及其功用 Pod是kubernetes的最小管理单元,在kubernetes中,按照Pod的创建方式可以将其分为两类 自主式Pod: kubernetes直接创建出来的Pod,这种Pod删除后就没有了,也不会重建 控制器创建的Pod&#xff1a…