iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >Nginx添加SSL模块
  • 582
分享到

Nginx添加SSL模块

sslnginx服务器 2023-10-01 08:10:08 582人浏览 安东尼
摘要

目录 一、SSL Ⅰ、概述 Ⅱ、SSL证书 Ⅲ、HTTPS Ⅳ、SSL工作原理 二、创建SSL证书 Ⅰ、安装openssl  Ⅱ、生成证书  三、nginx配置 Ⅰ、nginx打补丁添加模块  Ⅱ、nginx.conf配置 四、访问 一

目录

一、SSL

Ⅰ、概述

Ⅱ、SSL证书

Ⅲ、HTTPS

Ⅳ、SSL工作原理

二、创建SSL证书

Ⅰ、安装openssl

 Ⅱ、生成证书

 三、nginx配置

Ⅰ、nginx打补丁添加模块

 Ⅱ、nginx.conf配置

四、访问


一、SSL

Ⅰ、概述

SSL(Security Socket Layer)是一个安全协议,为基于tcp(Transmission Control Protocol)的应用层协议提供安全连接,SSL介于TCP/IP协议栈第四层和第七层之间。主要提供私密性、完整性和身份验证;我们常见的就是 SSL为Http(Hypertext Transfer Protocol)协议提供安全连接。SSL协议是一种在两个机器之间提供安全通道的协议,它具有保护数据传输以及识别通信机器的功能

Ⅱ、SSL证书

SSL证书是数字证书的一种,由权威数字证书机构(CA)验证网站身份后颁发,可实现浏览器和网站服务器数据传输加密。网站安装SSL证书后会在浏览器显示安全标志,数据传输协议从http(传统协议) 升级为 https(加密协议)

Ⅲ、HTTPS

安全的原理是基于HTTP+TCL/SSL协议组合实现的,所以HTTP和HTTPS的主要区别本质在于TCL/SSL安全协议上的区别。HTTPS是一种安全的协议,通过密钥交换算法 - 签名算法 - 对称加密算法 - 摘要算法确保安全

默认443端口

Ⅳ、SSL工作原理

浏览器发送一个https的请求给服务器;
2、服务器要有一套数字证书,可以自己制作,也可以向组织申请,这套证书其实就是一对公钥和私钥;
3、服务器会把公钥传输给客户端;
4、客户端(浏览器)收到公钥后,会验证其是否合法有效,无效会有警告提醒,有效则会生成一串随机数,并用收到的公钥加密;
5、客户端把加密后的随机字符串传输给服务器;
6、服务器收到加密随机字符串后,先用私钥解密(公钥加密,私钥解密),获取到这一串随机数后,再用这串随机字符串加密传输的数据(该加密为对称加密,所谓对称加密,就是将数据和私钥也就是这个随机字符串通过某种算法混合在一起,这样除非知道私钥,否则无法获取数据内容);
7、服务器把加密后的数据传输给客户端;
8、客户端收到数据后,再用自己的私钥解密。

二、创建SSL证书

Ⅰ、安装openssl

yum install -y openssl openssl-devel

 Ⅱ、生成证书

创建一个证书存放目录

mkdir -p /etc/Nginx/ssl_key

创建私钥、生成证书

openssl genrsa -idea -out server.key 2048
openssl req -days 3650 -x509 -sha256 -nodes -newkey rsa:2048 -keyout server.key -out server.crt

         req 表示证书输出的请求

        -days 3650 时间=10 年

        -x509 签发x509格式证书命令

        -newkey  此选项创建一个新的证书请求和一个新的私钥。

        -key密钥

        -new表示新的请求

        -out输出路径

 三、nginx配置

手工编译安装nginx:nginx-1.22.0手工编译安装

Ⅰ、nginx打补丁添加模块

cd /opt/nginx-1.22.0/#nginx安装包目录nginx -V#查看是否安装了SSL模块,*如果显示没有此命令,作如下操作vim /etc/profilePATH=$PATH:/usr/local/nginx/sbinexport PATHsource /etc/profile#如果没有,进行打补丁操作./configure \--prefix=/usr/local/nginx \--user=nginx \--group=nginx \--with-http_stub_status_module \  --add-module=/opt/nginx/nginx-module-vts-master \  --with-http_ssl_module  #监控模块#ssl模块make#注意不要进行make installsystemctl stop nginxcp ./objs/nginx /usr/local/nginx/sbin/#复制并进行覆盖,如果需要保留前版本,注意先进行备份转移

 Ⅱ、nginx.conf配置

vim /usr/local/nginx/conf/nginx.conf#-----省略部分内容-----server {        listen       443 ssl;    #SSL 访问端口为443        server_name  www.lvjiapeng.com;                      #证书绑定域名        charset utf-8;        access_log  /var/log/nginx/nginx.log;                #日志文件        ssl_certificate /etc/nginx/ssl_key/server.crt;       #证书文件位置     ssl_certificate_key /etc/nginx/ssl_key/server.key;   #私钥文件位置      location / {            root   html;            index  index.html index.htm;        }      }#-----省略部分内容-----server {     listen   80;     server_name www.lvjiapeng.com;     rewrite .* https://$server_name$1 redirect;      }#-----省略部分内容--------wq

四、访问

来源地址:https://blog.csdn.net/m0_71518373/article/details/127185707

--结束END--

本文标题: Nginx添加SSL模块

本文链接: https://www.lsjlt.com/news/422166.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作