nginx配置ssl证书实现https加密请求详解

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 所谓对称加密即:客户端使用一串固定的秘钥对传输内容进行加密,服务端使用相同的秘钥进行解密。

一、加密方式

1、对称加密

所谓对称加密即:客户端使用一串固定的秘钥对传输内容进行加密,服务端使用相同的秘钥进行解密。

2、非对称加密

SSL证书(遵守 SSL协议,由受信任的数字证书颁发机构CA,在验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能。是公钥+私钥一对秘钥串)

非对称加密即客户端使用公钥对传输内容进行加密,服务端使用私钥对传输内容进行解密

准备材料:

服务器1台:推荐 阿里云服务器(选择Linux系统)
SSL证书1个:推荐 阿里云ssl证书(便于管理)

二、http与https

http是数据在网络上进行明文传输,不安全,但解析效率高(不用加解密);https是加密传输,如果使用对称加密,客户端与服务端秘钥固定,加解密效率不会有很大开销,但存在秘钥泄露风险,不够安全;如果使用非对称加密,客户端使用公钥,服务端使用私钥,加解密算法开销大,性能成本高,效率较对称加密要低,但具有较高的安全性。

实际生产环境中,https是使用了非对称加密与对称加密相结合的方式。首先使用非对称加密将客户端随机生成的对称秘钥发送到服务端(安全传输到服务端),之后客户端和服务端之间的加解密使用对称秘钥。如下图所示

11

三、nginx配置https

1、配置前提

nginx是否已经启用https模块,启动nginx并执行nginx -V查看,如下:

22

Nginx配置https只需要两个文件。一个是浏览器证书(内含公钥,供浏览器加密使用),一个是私钥(供服务器解密使用)

server.crt和server.key可以自己去证书颁发机构购买商业证书。也可以自己使用程序自己生成一份。此处自签一份证书。

2、自签证书

(1)创建服务器私钥,需要输入一个口令

openssl genrsa -des3 -out server.key 4096

(2)创建签名请求的证书(CSR)

openssl req -new -key server.key -out server.csr
AI 代码解读

(3)在加载SSL支持的Nginx并使用上述私钥时除去必须的口令

openssl rsa -in server.key -out server_nopass.key
AI 代码解读

(4)最后标记证书使用上述私钥和CSR

openssl x509 -req -days 365 -in server.csr -signkey server_nopass.key -out server.crt
AI 代码解读

最后生成的证书文件

33

3、配置证书

在nginx中的conf配置文件中的Server模块加入:

ssl_certificate /usr/local/nginx/server.crt;

ssl_certificate_key /usr/local/nginx/server_nopass.key;

44

目录
打赏
0
0
0
0
248
分享
相关文章
解析:HTTPS通过SSL/TLS证书加密的原理与逻辑
HTTPS通过SSL/TLS证书加密,结合对称与非对称加密及数字证书验证实现安全通信。首先,服务器发送含公钥的数字证书,客户端验证其合法性后生成随机数并用公钥加密发送给服务器,双方据此生成相同的对称密钥。后续通信使用对称加密确保高效性和安全性。同时,数字证书验证服务器身份,防止中间人攻击;哈希算法和数字签名确保数据完整性,防止篡改。整个流程保障了身份认证、数据加密和完整性保护。
IP 地址,包括 IPv6 怎么申请 SSL证书来实现 https
很多企业单位已经开始在使用 IPv6 资源,跟 IPv4 一样,IPv6也是需要SSL证书的。在目前的SSL证书品牌,KeepTrust 是可以支持 IPv6 地址的。跟普通IP地址一样,给IPv6签发SSL证书也是需要验证申请者对 IP 地址的管理权限的。如果是 OV 版,还需要验证组织信息的真实性。
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
255 60
配置Nginx反向代理实现SSL加密访问的步骤是什么?
我们可以成功地配置 Nginx 反向代理实现 SSL 加密访问,为用户提供更安全、可靠的网络服务。同时,在实际应用中,还需要根据具体情况进行进一步的优化和调整,以满足不同的需求。SSL 加密是网络安全的重要保障,合理配置和维护是确保系统安全稳定运行的关键。
332 60
nginx安装部署ssl证书,同时支持http与https方式访问
为了使HTTP服务支持HTTPS访问,需生成并安装SSL证书,并确保Nginx支持SSL模块。首先,在`/usr/local/nginx`目录下生成RSA密钥、证书申请文件及自签名证书。接着,确认Nginx已安装SSL模块,若未安装则重新编译Nginx加入该模块。最后,编辑`nginx.conf`配置文件,启用并配置HTTPS服务器部分,指定证书路径和监听端口(如20000),保存后重启Nginx完成部署。
895 8
【网络原理】——图解HTTPS如何加密(通俗简单易懂)
HTTPS加密过程,明文,密文,密钥,对称加密,非对称加密,公钥和私钥,证书加密
内网ip申请SSL证书实现https访问
内网IP地址虽不能直接申请公网SSL证书,但可通过IP SSL证书保障数据安全。流程包括:确定固定内网IP,选择支持内网IP的CA,注册申请证书,生成CSR,验证IP所有权,下载部署证书至Web服务器,测试HTTPS访问,确保配置正确及证书有效。此方法适用于内网环境,提升数据传输安全性。
内网ip申请SSL证书实现https访问
49.3k star,本地 SSL 证书生成神器,轻松解决 HTTPS 配置痛点
mkcert是一款由Filippo Valsorda开发的免费开源工具,专为生成受信任的本地SSL/TLS证书而设计。它通过简单的命令自动生成并安装本地信任的证书,使本地环境中的HTTPS配置变得轻松无比。mkcert支持多个操作系统,已获得49.2K的GitHub Star,成为开发者首选的本地SSL工具。
249 10
如何给IP地址添加SSL证书(https)
为IP地址配置SSL证书实现HTTPS访问,需拥有固定公网IP,选择支持IP证书的CA,完成账户注册、证书申请、所有权验证及证书安装。验证过程涉及在服务器上放置特定文件,确保可访问。安装后需测试连接,注意兼容性和安全性,定期维护证书。
怎么给ip地址配置https访问
为了配置公网IP地址的HTTPS访问,首先需明确需求并选择受信任的证书颁发机构(如JoySSL)。接着,在JoySSL官网注册并登录,填写特定注册码230922以获取免费IP证书的测试权限。提交证书申请时,填写IP地址及相关验证信息,并完成IP地址验证。验证通过后,下载证书文件。最后,使用浏览器访问IP地址,检查安全连接标志,确保无证书错误。通过以上步骤,可成功配置IP地址的HTTPS访问,提升数据传输安全性和可信度。
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等