我是靠谱客的博主 温婉羽毛,最近开发中收集的这篇文章主要介绍自建ssl证书进行https访问生成自建证书nginx配置修改,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

生成自建证书

  • 生成私钥文件
openssl genrsa -out private.key 1024
# -out 参数指定密钥文件存放的位置和名字,1024是指密钥文件的长度,一般为1024或者2048
  • 生成一个证书请求
openssl req -new -key private.key -out cert_req.csr
# 指定密钥密钥文件来生成一个ca请求
# 这个步骤会要求填入国家区域以及域名等信息
# 最重要的一行是Common Name,需要填入与服务器关联的域名,或者是您服务器的公共IP地址
  • 将请求发给CA机构进行签名
openssl x509 -req -days 365 -in cert_req.csr -signkey private.key -out server_cert.crt

相关参数说明
req:此子命令指定我们要使用X.509证书签名请求(CSR)管理。“X.509”是SSL和TLS为其密钥和证书管理所遵循的公钥基础结构标准。我们想要创建一个新的X.509证书,所以我们使用这个子命令
-x509:通过告诉实用程序我们要创建自签名证书而不是生成证书签名请求(通常会发生)来进一步修改上一个子命令
-nodes:这告诉OpenSSL跳过用密码保护我们的证书的选项。当服务器启动时,我们需要Nginx能够在没有用户干预的情况下读取文件。密码短语会阻止这种情况发生,因为我们必须在每次重启后输入密码
-days 365:此选项设置证书被视为有效的时间长度。我们在这里设置了一年

  • 生成文件的列表
    • cert_req.csr 请求
    • server_cert.crt 签名证书
    • private.key 密钥

nginx配置修改

server {
        listen  443     ssl;
        server_name     sms_task.local;
        ssl_certificate         ssl/server_cert.crt; 
        #证书和密钥文件均放在nginx/conf/ssl目录下
        ssl_certificate_key     ssl/private.key;
        ssl_session_cache    shared:SSL:10m;
        #设置存储session参数的缓存的类型和大小
        ssl_session_timeout  5m;
        #指定客户端可以重用会话参数的时间
        ssl_protocols        TLSv1 TLSv1.1 TLSv1.2;
        access_log           /var/log/nginx/sms_task.log;
        error_log            /var/log/nginx/sms_task.error.log;
        location / {
                        proxy_pass      http://sms-task;
                        #指定转发的上游服务器
                        proxy_set_header X-Real-IP $remote_addr;
                }
        }
  • 强制重写(可以不使用)
server{
        listen 80;
        server_name sms_task.local;
        rewrite "^/(.*)$" https://sms_task.local/$1 break; #访问时做自动跳转
}

最后

以上就是温婉羽毛为你收集整理的自建ssl证书进行https访问生成自建证书nginx配置修改的全部内容,希望文章能够帮你解决自建ssl证书进行https访问生成自建证书nginx配置修改所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部