网络安全(3)_安全套接字层SSL

4. 安全套接字层

4.1 安全套接字层(SSL)和传输层安全(TLS)

(1)SSL/TLS提供的安全服务

  ①SSL服务器鉴别允许用户证实服务器的身份。支持SSL的客户端通过验证来自服务器的证书,来鉴别服务器的真实身份,并获取服务器的公钥。

  ②SSL客户鉴别允许服务器证实客户身份。这个信息对服务器很重要的。例如,当银行把有关财务的保密信息发送给客户时,就必须检验接收者的身份。

  ③加密的SSL会话,客户和服务器交互的所有数据都在发送方加密,在接收方解密。第三方无法窃听。同时SSL具有校验机制,一旦被篡改,通信双方会立刻发现。

(2)SSL/TLS协议

  ①IETF将Netscape公司的SSL(安全套接字,Secure Socket Layer)作了标准化,并将其称为TLS(传输层安全, Transport Layer Security)。从技术上讲,TLS1.0与SSL3.0的差异非常微小。

   ②浏览器默认支持SSL/TLS:IE→“Internet选项”→“高级”中可以看到默认己经选中了“使用SSL2.0”和“使用SSL3.0”等项。

  ③安全套接字层的常见协议与端口

协议

端口

https

443

imaps

993

pop3s

995

smtps

465

4.2 安全套接字层的工作过程(以使用https协议为例)

(1)浏览器A将自己支持的一套加密算法发送给服务器B。

(2)服务器B从中选出一组加密算法和哈希算法并将自己的身份信息以证书的形式发回给客户端浏览器。证书里包含了网站域名、加密公钥以及证书颁发机构等信息。

(3)客户端验证证书的合法性(是否信任证书颁发机构,证书中包含的网站域名地址是否与正在访问的地址一致,证书是否过期等)。如果证书受信任,浏览器栏里会显示一个小锁图标,否则会给出证书不受信任的提示。如果证书受信任或用户接受了不受信任的证书(这说明A可以不必事先信任该证书颁发机构!),浏览器会产生秘密数,客户端使用双方协商的算法将秘密数转换成会话密钥。同时使用B提供的公钥加密秘密数,然后发送给服务器B

(4)服务器B用私钥解密秘密数根据双方协商的算法产生会话密钥,这和浏览器A产生的会话密钥相同。

(5)安全数据传输。双方用会话密加密和解密它们之间传送的数据并验证其完整性。

4.3 证书颁发机构层次

(1)证书的层次结构

  ①CA认证中心是一个负责发放和管理数字证书的权威机构。认证中心通常采用多层次的分级结构。上级认证中心负责签发(或签名)和管理下级认证中心的证书,最下一级的认证中心直接面向最终用户发放证书。

  ②顶层CA称为根CA,根CA的子CA称为从属CA。从属CA也可以给它的下级发证,即给下级CA数字证书签名。

  ③互联网中的用户只需信任根证书颁发机构,就能信任其所有从属CA,然后验证所有从属CA颁发的用户证书或服务器证书。

(2)使用根CA的公钥验证完整证书的过程

  ①客户端首先使用根CA公钥验证子CA的证书是否是根CA颁发的。(注意,验证子CA之前要求客户端要先信任根CA。可以通过IE→“Internet选项”→“内容”→“证书”→“受信任的根证书颁发机构”中查看到!微软在安装操作系统时就己经将那些知名的证书颁发机构添加到这里!)

  ②验证通过,再使用子CA的公钥验证Web证书是否是子CA颁发的。所以客户端只要信任了根证书颁发机构,就能验证其所有从属CA,以及由从CA颁发的用户证书或服务器证书。

4.4 实战:配置网站使用https通信

(1)实验环境:三个虚拟机(Win2003Web服务器(192.168.80.20)Win2003证书颁发机构(192.168.80.100)和一个WinXP作为浏览器。)

(2)申请Web服务器证书

  ①为Web站点创建证书申请文件。IIS→“默认网站”→“属性”→“目录安全性”中点击“服务器证书”。

  ②在“新建证书”中,输入相关信息。但要注意的是当出现“站点公用名称”对话框时,输入的网站域名要与用户访问该网站的域名相同,否则用户在访问该网站时会出现安全警告。最后,将证书申请文件保存在桌面。

  ③登录Win2003CA提供的页面(http://192.168.80.100/certsrv)去申请Web服务器证书:“申请一个证书”→“高级证书申请”→“使用base64编码的CMC或PKCS#10文件提交一个证书。申请,或使用base64编码的PKCS#7文件续订证书”→在“保存的申请”框中将之前保存在桌面的申请文件导入进来→“提交”。注意,要登录Win2003CA服务器审核刚才Web服务器的证书申请,然后“颁发”。

  ④然后回到Win2003Web服务器刚刚申请证书的首页,查看“挂起的证书申请状态”并下载证书保存到桌面

(2)配置Web站点使用https通信

  ①将证书与Web站点绑定。IIS→“默认站点”→“属性”→“目录安全性”→“服务器证书”→“处理挂起的请求并安装证书”→浏览到刚保存的证书→SSL端口号保留默认值(443)。

  ②查看证书:可以看出MyWeb服务器证书己颁发下来,但前面有个红色的“×”。说明目前5ieduCA这个证书颁发机构仍不是我们信任的机构。可以在“5ieduCA”→“查看证书”→“安装证书”→在“证书存储”→选择“本地计算机”,完成证书导入。

  ③强制使用SSL安全协议:“目录安全性”→“编辑”→“安全通信”→勾选“要求安全通道(SSL)”,这样就只允许使用https协议访问了。否则即可以通过https,也可以通过http协议和IP地址直接访问。

  ③在Win2003Web服务器上配置DNS,使得www.5iedu.net指向Web服务器。同时将WinXP虚拟机的DNS设置为192.168.80.20,然后在WinXP上打开IE使用https协议浏览https://www.5iedu.net站点如果直接使用IP或http协议访问时则无法访问。(注意观察浏览器右下访有一个小锁的图标,可以双击查看证书及有效期。如果出现根证书机构未被信任,说明客户端未信任根证书颁发机构,客户要自己确认该站点的合法性!)

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

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

相关文章

【ArcGIS Pro】水文水资源、水生态与水环境

ArcGIS Pro 是一款集数据采集、处理、分析和可视化于一体的强大 GIS 工具,广泛应用于水文、水资源、水生态和水环境等领域。其全面的功能使得研究人员能够高效地处理各种水文和环境数据,从而为科学研究和决策支持提供强有力的技术保障。在水文分析方面&a…

【前端系列】Element-UI 悟道

???欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老…

中软高科身份证云解码金融(银行)解决方案介绍

多年来,中软高科一直深耕身份证云解码领域,对身份证云解码应用于金融(银行),进行了大量且深入的研究。从长期调研来看,金融(银行)的痛点需求主要有: 传统身份证解码设备…

【LeetCode】每日一题 2024_12_19 找到稳定山的下标(模拟)

前言 每天和你一起刷 LeetCode 每日一题~ 最近力扣的每日一题出的比较烂,难度过山车,导致近期的更新都三天打鱼,两天断更了 . . . LeetCode 启动! 题目:找到稳定山的下标 代码与解题思路 先读题:最重要…

SpringBoot开发——详解Tomcat线程池默认最大支持200并发

文章目录 1、SpringBoot 应用可以同时并发处理多少请求2、Tomcat线程池3、底层源码3.1 runWorker3.2 workQueue.offer 4、总结 1、SpringBoot 应用可以同时并发处理多少请求 Q:经典面试题,SpringBoot 应用可以同时并发处理多少请求? A&#…

Linux限制root 用户的远程登录(安全要求)

前言:现在基本用户主机都不允许使用root来操作,所以本文通过创建新用户,并限制root用户的ssh来解决这个问题 1. 创建新账户 aingo 首先,使用 root 账户登录系统。 sudo useradd aingo设置 aingo 账户密码: sudo pa…

计算机网络之王道考研读书笔记-2

第 2 章 物理层 2.1 通信基础 2.1.1 基本概念 1.数据、信号与码元 通信的目的是传输信息。数据是指传送信息的实体。信号则是数据的电气或电磁表现,是数据在传输过程中的存在形式。码元是数字通信中数字信号的计量单位,这个时长内的信号称为 k 进制码…

谁说C比C++快?

看到这个问题,我我得说:这事儿没有那么简单。 1. 先把最大的误区打破 "C永远比C快" —— 某位1990年代的程序员 这种说法就像"自行车永远比汽车省油"一样荒谬。我们来看个例子: // C风格 char* str (char*)malloc(100…

【Unity3D】无限循环列表(扩展版)

基础版:【Unity技术分享】UGUI之ScrollRect优化_ugui scrollrect 优化-CSDN博客 using UnityEngine; using UnityEngine.UI; using System.Collections.Generic;public delegate void OnBaseLoopListItemCallback(GameObject cell, int index); public class BaseLo…

Hive SQL 查询所有函数

-- 显示所有的函数 show functions; -- 对函数year进行解释 desc function year; -- 对函数year进行详细解释,并举例说明 desc function extended year;– 对函数year进行解释 desc function year; – 对函数year进行详细解释,并举例说明 desc functio…

Android13 系统签名应用编译调试说明

Android13 系统签名应用编译调试说明 文章目录 Android13 系统签名应用编译调试说明一、前言二、系统签名应用调试步骤1、新建一个应用,确保可以正常编译出APK2、获取系统签名文件3、Android Studio 编译安装系统权限应用(1)导入签名文件生成…

基于Spring Boot的医院质控上报系统

一、系统背景与意义 医院质控上报系统旨在通过信息化手段,实现医院质量控制的标准化、流程化和自动化管理。该系统能够帮助医院实时监控医疗质量数据,及时发现和处理潜在的质量问题,从而确保医疗服务的安全性和有效性。同时,系统…

将java项目部署到linux

命令解析 Dockerfile: Dockerfile 是一个文本文件,包含了所有必要的指令来组装(build)一个 Docker 镜像。 docker build: 根据 Dockerfile 或标准指令来构建一个新的镜像。 docker save: 将本地镜像保存为一个 tar 文件。 docker load: 从…

LeetCode:226.翻转二叉树

跟着carl学算法,本系列博客仅做个人记录,建议大家都去看carl本人的博客,写的真的很好的! 代码随想录 LeetCode:226.翻转二叉树 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 …

Webpack学习笔记(2)

1.什么是loader? 上图是Webpack打包简易流程,webpack本身只能理解js和json这样的文件,loader可以让webpack解析其他类型文件,并且将文件转换成模块供我们使用。 test识别出那些文件被转换,use定义转换时使用哪个loader转换 上图…

【WebDriver】浏览器驱动下载及其配置

一、Windows电脑环境搭建-Chrome浏览器 行业内,Chrome (谷歌) 浏览器对于自动化程序来讲是比较稳定的. 自动化程序推荐使用 Chrome 浏览器的原因有几个: 开发者工具:Chrome 提供强大的开发者工具,方便调试和测试自动化脚本。 稳…

list使用

目录 list介绍 list使用 list创建 list迭代器 容量操作 元素访问 修改元素 其他操作 list介绍 ● list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代 ● list的底层是双向链表结构,双向链表中每个元素存…

【AIGC】如何高效使用ChatGPT挖掘AI最大潜能?26个Prompt提问秘诀帮你提升300%效率的!

还记得第一次使用ChatGPT时,那种既兴奋又困惑的心情吗?我是从一个对AI一知半解的普通用户,逐步成长为现在的“ChatGPT大神”。这一过程并非一蹴而就,而是通过不断的探索和实践,掌握了一系列高效使用的技巧。今天&#…

windows 使用python共享网络给另外一个网卡

# -*- coding: utf-8 -*- import subprocessdef open_share(to_shared_adapter, from_shared_adapter):"""打开以太网的网络共享:return: None"""powershell_script f"""# Register the HNetCfg library (once)# regsvr32 hnetc…

devops-部署Harbor实现私有Docker镜像仓库

文章目录 概述下载配置安装安装后生成的文件使用和维护Harbor参考资料 概述 Harbor是一个开源注册中心,它使用策略和基于角色的访问控制来保护工件,确保镜像被扫描并且没有漏洞,并将镜像签名为可信的。Harbor是CNCF的一个毕业项目&#xff0…