点赞
评论
收藏
分享
举报
【转载】NGINX添加SSL证书实现https访问
发表于2021-10-27 14:00

浏览 1.7k

文章标签

原文作者:追风人聊Java

原文链接: Nginx添加SSL证书实现https访问

转载来源:博客园


1、概述

为了安全考虑,正式上线的网站或接口,都需要使用https协议进行数据传输。

IOS、安卓、微信小程序等也都只允许访问https协议的后台接口。


2、https协议的作用

1)加密传输数据,保护数据的安全

2)证明网站真实身份,防止被钓鱼网站攻击

3)提升公司形象


3、如何实现https

企业向权威的证书颁发机构申请SSL证书。

如果使用的是云服务器,直接在云服务器的官网就能方便的申请域名和SSL证书。

SSL证书支持的WEB服务器有很多, 例如:Apache、IIS、Nginx、Tomcat 。

根据具体使用的WEB服务器,添加配置即可。

这里我们简单讲一下,如何将SSL证书,部署在Nginx中,实现https。


4、检查Nginx是否安装SSL模块

Nginx必须安装了SSL模块,才能支持SSL证书的配置。

1)进入到Nginx安装目录(例如:/usr/local/nginx/sbin),输入命令 # ./nginx -V,查看是否有SSL模块(http_ssl_module)

 2)没有的话,进入Nginx安装包的目录(例如:/home/nginx-1.20.1),重新配置并编译安装Nginx

# ./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/local/nginx/nginx.pid \
--lock-path=/var/local/nginx/nginx.lock \
--error-log-path=/var/local/nginx/error.log \
--http-log-path=/var/local/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/local/nginx/client \
--http-proxy-temp-path=/var/local/nginx/proxy \
--http-fastcgi-temp-path=/var/local/nginx/fastcgi \
--http-uwsgi-temp-path=/var/local/nginx/uwsgi \
--http-scgi-temp-path=/var/local/nginx/scgi \
--with-http_ssl_module
# make && make install

3)再次在Nginx安装目录(例如:/usr/local/nginx/sbin),输入命令 # ./nginx -V,查看是否有SSL模块(http_ssl_module)


5、配置Nginx

申请下来的SSL证书文件有两个,.crt文件 和 .key文件,例如:1_www.zhuifengren.cn_bundle.crt 和 2_www.zhuifengren.cn.key。

然后在Nginx配置文件中增加如下配置,然后重新加载Ngixn即可:

server {
listen 443;
server_name www.zhuifengren.cn;

ssl_certificate 1_www.zhuifengren.cn_bundle.crt;
ssl_certificate_key 2_www.zhuifengren.cn.key;

ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;

ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;

location / {
root html;
index index.html index.htm;
}
}

通常证书颁发机构会附上SSL证书部署的教程,不同机构的配置方式会有些许差别,根据实际情况调整即可。


6、综述

好了,到此为止,我们的网站也支持https传输协议了。

欢迎大家多多评论交流,共同进步。








已修改于2023-03-09 02:07
创作不易,留下一份鼓励
NGINX社区小N助手

暂无个人介绍

关注



写下您的评论
发表评论
全部评论(0)

按点赞数排序

按时间排序

关于作者
NGINX社区小N助手
这家伙很懒还未留下介绍~
14
文章
0
问答
12
粉丝
相关文章
介绍nginx网页配置工具QQ技术交流群1:1106758598QQ技术交流群2:560797506邮箱: cym1102@qq.com官网地址: http://www.nginxwebui.cn码云: https://gitee.com/cym1102/nginxWebUIgithub: https://github.com/cym1102/nginxWebUI功能特点nginxWebUI也可管理多个nginx服务器集群,随时一键切换到对应服务器上进行nginx配置,也可以一键将某台服务器配置同步到其他服务器,方便集群管理.部署此项目后,配置nginx再也不用上网各种搜索配置代码,再也不用手动申请和配置ssl证书,只需要在本项目中进行增删改查就可方便的配置和启动nginx。技术说明本项目是基于springBoot的web系统,数据库使用sqlite,因此服务器上不需要安装任何数据库项目启动时会释放一个.sqlite.db到系统用户文件夹中,注意进行备份本系统通过Let'sencrypt申请证书,使用acme.sh脚本
点赞 6
浏览 6.4k
  前三周学习了陶辉老师的“NGINX基础培训系列课程”,感觉受益良多,在这里想把一些知识点记录一下,和大家分享一下知识点,也方便日后的随手查看,温故知新。  首先,我们了解到了Nginx的版本,Nginx发布版本分为主线版本和稳定版本,区分两个版本也非常简单,主线版本版本号为单数,比如1.19,稳定版本为双数,比如1.18,今天我要说的是稳定版本,这个版本会尽量少的减少Nginx的bug问题,适用于生产环境,这里我不建议使用Nginx和其他软件一样在生产环境中落后一个或多个大版本使用,之前生产环境做过漏扫,发现我们编译自带的Nginx版本为:nginx/1.13.3(查询命令为nginx-V),结果出现了多个漏洞,四个高危和一个中危漏洞:        通过升级Nginx到稳定版最新版本后修复!  其次,是Nginx发行版本的选择,目前比较流行的有:nginx、nginxplus、Tengine、openresty、ope
点赞 1
浏览 3.5k
感谢您参加“NGINX从入门到精通进阶系列培训”!以下为培训的问答、课件和录像,希望您能通过此培训学有所得,祝学习进步!>问与答:- 基础篇+高级篇 - 应用篇+实战篇(New)>课件(PPT):基础篇:-NGINX概要、安装、配置:https://interact.f5.com/rs/653-SMC-783/images/CNFEB22-NginxCoreCourse-Setup.pdf-NGINX日志、运维:https://interact.f5.com/rs/653-SMC-783/images/cnfeb22-nginxcorecourse-maintenance.pdf高级篇:-NGINX变量、API:https://interact.f5.com/rs/653-SMC-783/images/CNFEB22-NginxCoreCourse-API.pdf-NGINXSSL、NJS:https://interact.f5.com/rs/653-SMC-783/images/CNFEB22-NginxCoreCourse-SSL.pdf
点赞 10
浏览 5k