菜鸟学Linux 第054篇笔记 建立加密的http

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介:

菜鸟学Linux 第054篇笔记  建立加密的http





csr (Certificate Signing Request)

crt (未找到解释)


yum install mod_ssl



建立加密http访问步骤


1.安装mod_ssl

2.建立私有CA

为私有CA颁发自己的证书.pem

3.在http server 生成自己的私有key

并生成私有key的证书请求文件(请求文件的host名字必须要和站点名字相同).csr

将该请求文件送到私有CA处进行颁发证书,并把证书拷贝回到本地目录.crt

4.修改/etc/httpd/conf.d/ssl.conf文件

<VirtualHost 192.168.11.122:443> (IP为所要访问的主机名的IP)

ServerName www.mysky.com:443  

DocumentRoot "/web/html"(这两项不多做解释)

SSLCertificateFile /etc/httpd/ssl/httpd.crt (证书文件位置)

SSLCertificateKeyFile /etc/httpd/ssl/httpd.key(生成和私钥位置)

</VirtualHost>



这样即可实现http加密访问了,客户端直接访问会提示证书不受信任

解决此问题需要将私有CA的证书拷贝到本地安装后即提示消失

有的浏览器还是会提示证书有问题,这是因为咱们是自己建立的CA颁发机构(你懂得)



注意事项

1.建立私有CA时需要修改/etc/pki/tls/openssl.cnf文件

2.建立serial只可两位数(个人测试三位提示有问题,不清楚为何)

3.配置/etc/httpd/conf.d/ssl.conf文件,此文件仅在安装mod_ssl时才会有

4.一个IP只可建立一个加密的http传输

5.如果连接网站不成功可能iptables SELinux开启

关闭 setenforce 0

service iptables stop 

(这里因为没有学习此两项所以暂时先关闭)


https 连接步骤

1.客户端首先建立tcp三次握手与服务器端

2.客户端和服务器端协商要使用的对称加密算法,公钥加密算法

3.服务器端发送证书(证书里有服务器的公钥)给客户端

3.客户端验证证书如没有问题后生成随机对称密钥,用服务器的公钥加密,传送给server

4.客户端发送http请求用对称密码加密传送给服务器

5.服务器端回复http请求也用对称密码加密传送给客户端 

(4,5条个人想法,上课走神了呵呵 )

本文转自Winthcloud博客51CTO博客,原文链接http://blog.51cto.com/winthcloud/1884062如需转载请自行联系原作者


Winthcloud

相关文章
|
5月前
|
存储 NoSQL Java
http数据包抓包解析课程笔记
http数据包抓包解析课程笔记
|
7月前
|
缓存 网络协议 算法
(二)Java网络编程之爆肝HTTP、HTTPS、TLS协议及对称与非对称加密原理!
作为一名程序员,尤其是Java程序员,那必须得了解并掌握HTTP/HTTPS相关知识。因为在如今计算机网络通信中,HTTP协议的作用功不可没,无论是日常上网追剧、冲���、亦或是接口开发、调用等,必然存在HTTP的“影子”在内。尤其对于WEB开发者而言,HTTP几乎是每天会打交道的东西。
128 10
|
7月前
|
存储 网络安全 数据安全/隐私保护
[flask]使用mTLS双向加密认证http通信
【7月更文挑战第16天】在Flask应用中实现mTLS双向TLS加密认证可增强HTTP通信安全性。步骤包括: 1. 使用OpenSSL为服务器和客户端生成证书和密钥。 2. 配置Flask服务器使用这些证书: - 安装`flask`和`pyopenssl`. - 设置SSL上下文并启用mTLS验证: 注意事项: - 保持证书有效期并及时更新. - 确保证书链信任. - 充分测试mTLS配置.
136 2
|
6月前
|
安全 网络安全 数据安全/隐私保护
[flask]使用mTLS双向加密认证http通信
[flask]使用mTLS双向加密认证http通信
165 0
|
6月前
|
网络协议 应用服务中间件 Go
[golang]使用mTLS双向加密认证http通信
[golang]使用mTLS双向加密认证http通信
123 0
|
6月前
|
网络协议 Go
【go笔记】简单的http服务
【go笔记】简单的http服务
|
7月前
|
安全 网络协议 网络安全
SSL(Secure Sockets Layer)是一种安全协议,用于在客户端和服务器之间建立加密的通信通道。
SSL(Secure Sockets Layer)是一种安全协议,用于在客户端和服务器之间建立加密的通信通道。
|
7月前
|
数据安全/隐私保护
https【详解】与http的区别,对称加密,非对称加密,证书,解析流程图
https【详解】与http的区别,对称加密,非对称加密,证书,解析流程图
227 0
|
8月前
|
Java BI C#
技术笔记:SM4加密算法实现Java和C#相互加密解密
技术笔记:SM4加密算法实现Java和C#相互加密解密
142 0

热门文章

最新文章