问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

OpenSSL 生成自签名证书

创作时间:
作者:
@小白创作中心

OpenSSL 生成自签名证书

引用
CSDN
1.
https://blog.csdn.net/HD243608836/article/details/137925745

本文将详细介绍如何使用 OpenSSL 工具生成自签名证书,并在本地 Nginx 服务器上部署证书服务。通过本文,你将掌握 OpenSSL 的基本使用方法,学会生成私钥、证书请求文件和自签名证书,以及如何在 Nginx 中配置 SSL/TLS 证书。

前言

学习使用 OpenSSL。由于电脑较卡只能在win上进行演示。

一、下载 OpenSSL

官网下载

下载编译完成的

安装步骤1:

步骤2:
步骤3
步骤四
步骤五

完成安装

注意:需要配置系统环境变量

测试是否可用:

openssl version

二、OpenSSL 工具来生成自签名证书

  1. 打开命令行窗口,输入以下命令以生成私钥文件(例如:mykey.pem):
openssl genrsa -out mykey.pem 2048
# 2048 是生成秘钥大小  mykey.pem 是证书名称及其后缀
  1. 接下来,使用以下命令生成自签名证书请求文件(例如:mycert.csr):
openssl req -new -key mykey.pem -out mycert.csr

可用随便填写。在生成证书请求文件时,系统会提示您输入一些信息,如国家、组织名称等。根据需要填写这些信息。

  1. 最后,使用以下命令生成自签名证书文件(例如:mycert.crt):

方法一:

openssl x509 -req -days 365 -in mycert.csr -signkey mykey.pem -out mycert.crt
# 365 是自签名证书 的天数

完成:cmd在哪里运行的,生成的证书会在什么目录下;

方法二、完整代码

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout mydomain.key -out mydomain.crt

三、本地 Nginx 部署证书服务

ssl_certificate ssl/mycert.pem;
ssl_certificate_key ssl/mycert.key;
ssl_password_file ssl/mycert.pass;

ssl_certificate E:/nginx-1.25.2/nginx-1.25.2/zhengshu/mydomain.crt;
ssl_certificate_key E:/nginx-1.25.2/nginx-1.25.2/zhengshu/mydomain.key;

总结

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       3001;
        server_name  127.0.0.1;
        return 301 https://$host$request_uri;
    }

    server {
        listen       443 ssl;
        server_name  127.0.0.1;

        location / {
            # 代理 3000 服务端口
            proxy_pass http://127.0.0.1:3000;
        }

        ssl_certificate E:/nginx-1.25.2/nginx-1.25.2/zhengshu/mydomain.crt;
        ssl_certificate_key E:/nginx-1.25.2/nginx-1.25.2/zhengshu/mydomain.key;
    }
}
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号