前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[ChatGPT解决方案]生成 nginx 自签名证书

[ChatGPT解决方案]生成 nginx 自签名证书

作者头像
Hopetree
发布2022-12-10 14:08:11
9490
发布2022-12-10 14:08:11
举报
文章被收录于专栏:tendcodetendcode

经常在内部环境需要将网站配置成 https,于是就有了一个需求:创建一个不会过期的 ngxix 自签名证书。于是就向 ChatGPT 提出了这个需求,得到了想要的解决方案。

提问:写一个shell脚本,读取配置文件中的参数,生成自签名证书,证书可以给nginx使用

您好,下面是一个示例 shell 脚本,它可以读取配置文件中的参数并生成自签名证书。配置文件的格式为 key=value,其中 key 为参数名,value 为参数值。证书文件将保存在当前目录的 certs 目录中。

代码语言:javascript
复制
#!/bin/bash

# 读取配置文件
if [ -f "./config" ]; then
  source ./config
else
  echo "配置文件 config 不存在!"
  exit 1
fi

# 生成证书文件
mkdir -p certs
openssl req -newkey rsa:2048 -nodes -keyout certs/server.key -x509 -days 365 -out certs/server.crt -subj "/C=$country/ST=$state/L=$locality/O=$organization/OU=$organizational_unit/CN=$common_name"

在使用该脚本之前,您需要创建一个名为 config 的配置文件,并在其中设置所需的参数值。例如,您可以创建一个如下所示的配置文件:

代码语言:javascript
复制
country=US
state=California
locality=Mountain View
organization=Acme Inc.
organizational_unit=IT
common_name=acme.com

为了使用该脚本,请在终端中运行以下命令:

代码语言:javascript
复制
./generate_certificate.sh

如果一切正常,您应该会看到类似于下面的输出:

代码语言:javascript
复制
Generating a 2048 bit RSA private key
......+++++
..................................................+++++
writing new private key to 'certs/server.key'
-----

如果配置文件不存在,您应该会看到类似于下面的错误消息:

代码语言:javascript
复制
配置文件 config 不存在!

版权声明:如无特殊说明,文章均为本站原创,转载请注明出处 本文链接:https://cloud.tencent.com/developer/article/2190148 许可协议:署名-非商业性使用 4.0 国际许可协议

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022年12月10日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档