nginx证书基础知识及申请

简介:

TSL 是传输层安全协议,英文是transport layer security 

SSL 是安全套接字层,英文是security socket layer

这两个的区别对于不是搞安全的开发人员来讲的人来说不大

KEY 通常指私钥

CSR 是英文certificate signing request的缩写 中文名为证书签名请求,他不是证书,他是我们要申请证书时一个必要的文件, 需要给CA,CA帮我们颁发出来的证书才是我们真正的证书,这个现在可以理解为公钥

CRT 是英文certificate的缩写,中文名就是证书文件

X.509是一种证书格式,对X.509证书来说,认证者总是CA或由CA指定的人,一份X.509证书是一些标准字段的集合,这些字段包含有关用户或设备及其相应公钥的信息。一般以.crt结尾,根据文件内容编码可以分为以下两种

PEM - privacy Enhanced Mail 以文本的形式打开,以"-----BEGIN..."开头, "-----END..."结尾,内容是BASE64编码.Apache和*NIX服务器偏向于使用这种编码格式.

DER - Distinguished Encoding Rules,打开看是二进制格式,不可读.Java和Windows服务器偏向于使用这种编码格式

下面是给自己颁发证书的步骤

  1. 生成私钥

  2. 生成证书请求文件

  3. 生成CA证书

  4. 利用CA证书给自己颁发一个证书

创建目录用来存放我们的证书文件

1
# mkdir /tmp/cert/

生成私钥

1
# openssl genrsa -des3 -out server.key 2048

这一步执行完以后,cert目录下会生成server.key文件

生成证书请求文件CSR

1
# openssl req -new -key server.key -out server.csr

b342115b608e7719c27633989a1732eb.png

要注意的是Common Name这里,要填写成使用SSL证书(即:https协议)的域名或主机名,否则浏览器会认为不安全。例如:如果以后打算用https://www.zhouziqi.com/xxx 这里就填写www.zhouziqi.com


前面提过X.509证书的认证者总是CA或由CA指定的人,所以得先生成一个CA的证书

1
openssl req -new -x509 -key server.key -out ca.crt -days 3650

 最后用第3步的CA证书给自己颁发一个证书玩玩


1
2
3
openssl x509 -req -days 3650 - in  server.csr \
   -CA ca.crt -CAkey server.key \
   -CAcreateserial -out server.crt

执行完以后,cert目录下server.crt 就是我们需要的证书。当然,如果要在google等浏览器显示出安全的绿锁标志,自己颁发的证书肯定不好使,得花钱向第三方权威证书颁发机构申请(即:第4步是交给权威机构来做,我们只需要提交server.key、server.csr,哦,还有毛爷爷就好了)

下面我们认证一下我们的证书有没有问题

自己安装nginx,然后编辑配置文件nginx.conf

c0973d0295ffb75f856906eb7e6e5970.png

其中红色的方框是要自己改的

443为ssl的端口

www.zhouziqi.com是你刚刚在生成证书请求文件CSR中Common Name选项你填的网址。记住 这里你填了什么 你在访问的时候你就要怎么访问,如上,我填写了www.zhouziqi.com,那么我们就要去访问https://www.zhouziqi.com,不过我们还要去改一下hosts文件。

ssl on代表开启安全的超文本链接

ssl_certificate是ssl的证书文件的路径

ssl_certificate_key是ssl密钥的路径

重启服务

在客户端上修改C:\Windows\System32\drivers\etc目录下的hosts文件,让www.zhouziqi.com这个网址指向虚拟机的IP如下表示www.zhouziqi.com指向IP,192.168.65.128

192.168.65.128 www.zhouziqi.com

访问结果如下:

35c168540f243e995ad5b7606688f386.png

本文章转载http://www.cnblogs.com/lan1x/p/5872915.html网址


本文转自 周子琪 51CTO博客,原文链接:http://blog.51cto.com/izhouyu/1975388


相关文章
|
1月前
|
应用服务中间件 nginx
nginx反向代理与证书设置
nginx反向代理与证书设置
38 3
|
1月前
|
安全 应用服务中间件 网络安全
Nginx入门 -- 了解Nginx中证书配置
Nginx入门 -- 了解Nginx中证书配置
38 0
|
4月前
|
应用服务中间件 网络安全 nginx
使用Nginx Proxy Manager配置Halo的反向代理和申请 SSL 证书
本文引导如何用Nginx Proxy Manager (NPM)配置Halo的反向代理与SSL证书。NPM简化了Nginx的配置流程,适合无Nginx基础的用户。安装NPM无需额外安装Nginx,避免端口冲突。通过`docker-compose.yaml`启动NPM服务,并映射必要的端口。配置Halo反向代理需登录NPM面板,添加代理主机,设置域名、转发IP等参数。NPM支持自动申请与续期SSL证书,确保网站安全访问。更多Halo安装细节,请参考[如何在Linux云服务器上通过Docker Compose部署安装Halo](https://zhangfeidezhu.com/?p=631).
236 0
使用Nginx Proxy Manager配置Halo的反向代理和申请 SSL 证书
|
6月前
|
应用服务中间件 网络安全 nginx
nginx 常用命令 |升级到1.20.1版本 | 如何更换 Nginx SSL 证书
nginx 常用命令 |升级到1.20.1版本 | 如何更换 Nginx SSL 证书
455 0
|
5月前
|
网络协议 安全 应用服务中间件
阿里云申请免费ssl证书并配置nginx
阿里云申请免费ssl证书并配置nginx
343 0
|
5月前
|
网络协议 安全 应用服务中间件
阿里云 网站https设置 sll申请与nginx跳转配置
阿里云 网站https设置 sll申请与nginx跳转配置
190 0
|
tengine 应用服务中间件 Linux
【Linux环境】如何在Nginx(或Tengine)服务器上安装ssl证书----介绍nginx服务器类型证书的下载与安装操作
【Linux环境】如何在Nginx(或Tengine)服务器上安装ssl证书----介绍nginx服务器类型证书的下载与安装操作
494 0
|
应用服务中间件 Linux nginx
linux nginx域名证书到期,拿着客户给的新证书文件在nginx中对证书进行替换
业务场景: 📕1.找到原证书位置,可在nginx 配置文件中查找到 🖥️2.找到位置后将原文件名字 加上.old (需要更换两个文件 一个.pem 一个.key) 🔖3.将新证书文件放在原目录,并重命名为原证书文件名称 📌4.cd到sbin目录 reload nginx 📇5.查询是否替换成功 🧣6、最后的话 业务场景: 域名证书到期,拿着客户给的新证书文件在nginx中对证书进行替换
374 0
|
应用服务中间件 Linux nginx
NGINX配置HTTPS及PSF证书转换为PEM与KEY
NGINX配置HTTPS及PSF证书转换为PEM与KEY
798 1
|
域名解析 运维 负载均衡
【运维知识进阶篇】Tomcat集群实战之部署zrlog博客(Tomcat服务安装+静态资源挂载NFS+Nginx负载均衡+HTTPS证书+Redis会话保持)
【运维知识进阶篇】Tomcat集群实战之部署zrlog博客(Tomcat服务安装+静态资源挂载NFS+Nginx负载均衡+HTTPS证书+Redis会话保持)
390 1