Linux上搭建https服务器
https原理:


步骤:
1、客户端浏览器向服务器发送如下信息:
(1)客户端支持的SSL/TLS协议的版本号
(2)密钥算法套件
(3)客户端产生的随机数,用于稍后生成“会话密钥”
2、服务器向客户端发送如下信息:
(1)确认使用的加密通信协议版本,如果浏览器与服务器支持的版本不一致,服务器关闭加密通信
(2)确认使用的加密方法
(3)服务器证书
(4)服务器生成的随机数,用于稍后生成“会话密钥”
3、客户端利用服务器发来的信息验证服务器的合法性。如果合法性验证没有通过,通讯将断开,如果合法性通过,则可以知道认证服务器的公钥是真实有效的数字证书认证机构,并且服务器发来的公钥是值得信赖的。(加密数字证书的公钥传送给客户端,客户端用私钥解密,将数字证书解开,可以看到该服务器是可信赖的和服务器发来的公钥)
4、客户端随机产生一个用于后面会话连接的对称密钥,然后用服务器的公钥加密,将加密后的对称密钥发送给服务器。
工作流程可分为三个阶段:
(1)认证服务器
浏览器内置一个受信任的CA机构列表,并保存了这些CA机构的证书。第一阶段服务器会提供经CA机构认证颁发的服务器证书,如果认证该服务器证书的CA机构存在于浏览器的受信任CA机构列表中,并且服务器证书中的信息与当前正在访问的网站(域名)一致,那么浏览器就认为服务端是可信的,并从服务器证书中取得服务器公钥,用于后续流程,否则,浏览器将提示用户,根据选择是否继续。也可管理受信任的CA机构列表,向其中添加我们想要信任的CA机构。
(2)协商会话密钥
客户端在认证完服务器后,通过服务器的公钥与服务器进行加密通信,协商出两个对称的会话密钥,分别用于加密客户端往服务端发送数据的客户端会话密钥,用于加密服务端往客户端发送数据的服务端会话密钥。(还要协商对称会话密钥,是因为非对称加密相对复杂度更高,在数据传输过程中,使用对称加密,可以节省计算资源,另外,会话密钥是随机生成,每次协商都会有不一样的结果,安全性更高)
(3)数据加密通信
此时客户端服务器都有了本次通信的会话密钥,之后传输的所有http数据,都通过会话密钥加密。从而保证了数据的私密性和完整性。
##其中非对称加密算法用于握手过程中加密生成的密码,对称加密算法用于对真正的传输数据进行加密,hash算法用于验证数据的完整性
非对称加密算法:RSA、DSA/DSS
对称加密算法:AES、3DES、RC4
hash算法:MD5、SHA1、SHA256
配置:
X.509通用的证书格式包含三个文件:
key:私钥文件
csr:证书签名请求文件,用于提交给证书颁发机构(CA)对证书签名
crt:是CA机构签名后的证书,包含证书中的信息。
例:配置安全web服务站点http://www.openlab.com配置SSL加密,
要求:生成自签名证书文件为openlab.crt,私钥文件为openlab.key
第一步:安装SSL
#yum install mod_ssl -y
#rpm -qa mod_ssl
第二步:创建访问文件目录及其内容
#mkdir /www/openlab
#echo this is openlab > /www/openlab/index.html
第三步:编辑配置文件
#vim /etc/httpd/conf.d/vhost.conf
通过#sp命令打开/etc/httpd/conf.d/ssl.conf来复制粘贴五行SSL开头的内容,此处图片内容的.crt和.key路径已修改
第四步:注册证书
#cd /ect/pki/tls/certs
#make openlab.crt
第五步:修改/etc/httpd/conf.d/vhost.conf中的.crt和.key
路径
第六步:在/etc/hosts下输入ip绑定的域名
第七步:重启http服务
#systemctl restart httpd
第八步:浏览器测试


http://www.dtmao.cc/news_show_1307991.shtml
Linux上搭建https服务器的更多相关文章
- CentOS Linux上搭建PPPoE服务器及拨号设置
CentOS Linux上搭建PPPoE服务器及拨号设置 搭建PPPoE,成功了的话,就觉得超级简单,在CentOS Linux更是5步左右就能搞定. 1.安装pppoe,安装完成后,会有pppoe- ...
- linux上搭建图片服务器
之前写过一个搭建图片服务器的随笔:https://www.cnblogs.com/xujingyang/p/7163290.html ,现在回头看看,我去,感觉写的好乱,现在再整一个吧.o(╯□╰ ...
- linux上搭建ftp服务器
摘要 vsftpd 是"very secure FTP daemon"的缩写,安全性是它的一个最大的特点.vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行 ...
- 在linux上搭建SVN服务器并自动更新至WEB目录
1.仓库放在 /var/svn/ 目录下,并且仓库名为 project 2.创建用户组user,该组下添加两个成员user1.user2,密码直接用用户名,两用户可以checkout代码和提交代码 3 ...
- Linux上搭建Elasticsearch服务器并同步数据库
1.准备工作 下载Elasticsearch版本号2.3.4 https://www.elastic.co/downloads/past-releases/elasticsearch- ...
- linux上搭建svn服务器
1.检查当前版本,没有的话用yum安装rpm -qa subversion 2.安装yum install subversion -y 2.建库mkdir -p /home/svn/projectsv ...
- Linux上部署web服务器并发布web项目-转
Linux上部署web服务器并发布web项目 近在学习如何在linux上搭建web服务器来发布web项目,由于本人是linux新手,所以中间入了不少坑,搞了好久才搞出点成果.以下是具体的详细步骤以 ...
- Linux上部署web服务器并发布web项目
近在学习如何在linux上搭建web服务器来发布web项目,由于本人是linux新手,所以中间入了不少坑,搞了好久才搞出点成果.以下是具体的详细步骤以及我对此做的一些总结和个人的一些见解,希望对跟我一 ...
- windows 上搭建 sftp 服务器 -freesshd全过程( 在linux上部署逐浪CMS的必读教程)
文章标题: windows 上搭建 sftp 服务器 - freesshd全过程 关键字 : freesshd 文章分类: 教程 创建时间: 2020年3月23日 缘由 动手 第一步:添加用户 第二步 ...
随机推荐
- vue中的一些用法,持续更新中......
1.跳转用法 @1.在template模板中通常使用router-link to='url' @2.在js中 1.this.$router.push({path: ''/order/index''}) ...
- CSS_rules
CSS 特性 1)控制灵活,功能强大 元素-->标签 针对html的元素 2)可以设置html元素的属性,与html框架的进行分离 3)执行效率更高 CSS语法 text-indent 文字缩进 ...
- Debian安装HomeBrew
前言 HomeBrew 的用处我想使用 Mac 的开发人员都知道, 本篇讲解如何在 Debian 上安装 BrewLinux 更新: 后来发现并不是很好用, 不建议使用 官方推荐的脚本安装 注意这里只 ...
- maven 的安装与配置详细步骤
1. 直接搜索maven 2. 进入后点击download界面,这时出现的是当前最新版本, 当然还有以前的版本可供下载 3. 下载解压到你指定的目录后,需要配置一下环境变量. a. 右键此电脑点击属性 ...
- kali中安装漏洞靶场Vulhub
一.什么是vulhub? Vulhub是一个基于docker和docker-compose的漏洞环境集合,进入对应目录并执行一条语句即可启动一个全新的漏洞环境,让漏洞复现变得更加简单,让安全研究者更加 ...
- zabbix_server上的问题
不要写成127.0.0.1,要不然一直包zabbix agent没有启动.
- [java]文件上传下载删除与图片预览
图片预览 @GetMapping("/image") @ResponseBody public Result image(@RequestParam("imageName ...
- 2V转5V输出,2.4V转5V输出,DC-DC同步整流升压电路
PW5100可以适用于2V转5V和2.4V转5V的应用电路中,PW5100是一颗DC-DC的同步升压转换器芯片. PW5100特点: 1, 低输入,宽范围:0.7V-5V 2, 输出电压固定,外围少: ...
- Effective Java, 3e阅读笔记一
引言 本书的目标是帮助读者更加有效地使用Java编程语言及其基本类库,适用于任何具有实际Java工作经验的程序员. 本书一共90个条目,12章,每个条目讨论一条规则,这些规则反映了最有经验的优秀程序员 ...
- FLask的偏函数应用
偏函数 实际上,偏函数主要辅助原函数,作用其实和原函数差不多,不同的是,我们要多次调用原函数的时候,有些参数,我们需要多次手动的去提供值.而偏函数便可简化这些操作,减少函数调用,主要是将一个或多个参数 ...