生成自签名证书并配置 HTTPS 使用自签名证书

生成自签名证书

1. 运行 OpenSSL 命令生成证书和私钥

在终端中输入以下命令,生成自签名证书和私钥文件:

bash 复制代码
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout self_signed.key -out self_signed.pem
  • -x509:生成自签名证书。
  • -nodes:不加密私钥文件。
  • -days 365:证书有效期为 365 天,可根据需要调整。
  • -newkey rsa:2048:生成 2048 位 RSA 密钥。
  • -keyout self_signed.key:指定私钥文件输出路径(生成 self_signed.key 文件)。
  • -out self_signed.pem:指定证书文件输出路径(生成 self_signed.pem 文件)。
2. 填写证书信息

在执行命令后,系统将提示输入证书信息:

信息项 示例输入 说明
Country Name (2 letter code) CN 国家代码,使用两位字母表示,例如中国是CN
State or Province Name Beijing 省份或州名称,例如"Beijing"
Locality Name (eg, city) Beijing 城市名称,例如"Beijing"
Organization Name MyCompany 组织或公司名称,例如"MyCompany"
Organizational Unit Name IT Department 组织单元名称,例如"IT Department"
Common Name xx.xx.xxx.xx 服务器的 IP 地址或域名
Email Address xxxxxx@qq.com 您的电子邮箱地址(可选)

示例输入:

复制代码
Country Name (2 letter code) [XX]: CN
State or Province Name (full name) []: Beijing
Locality Name (eg, city) [Default City]: Beijing
Organization Name (eg, company) [Default Company Ltd]: MyCompany
Organizational Unit Name (eg, section) []: IT Department
Common Name (eg, your name or your server's hostname) []: xx.xx.xxx.xx
Email Address []: xxxxxx@qq.com

配置 Nginx 使用自签名证书

可以通nginxwebui这个软件来配,比较方便
2.或者 编辑 Nginx 配置文件 手动配置

打开Nginx 配置文件(通常在 /etc/nginx/sites-available/default/etc/nginx/nginx.conf),并添加以下内容以启用 HTTPS:

nginx 复制代码
server {
    listen 11323 ssl;
    server_name xx.xx.xxx.xx;

    ssl_certificate /path/to/self_signed.pem;
    ssl_certificate_key /path/to/self_signed.key;

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

/path/to/self_signed.pem/path/to/self_signed.key 替换为实际生成的证书和私钥文件路径。

2. 检查并重启 Nginx

检查 Nginx 配置文件是否正确:

bash 复制代码
sudo nginx -t

如果配置无误,重启 Nginx 以应用更改:

bash 复制代码
sudo systemctl restart nginx

访问 HTTPS 网站

完成上述配置后,您可以通过 https://xx.xx.xxx.xx:11323 访问您的网站。由于这是自签名证书,浏览器可能会提示证书不受信任。您可以选择忽略此警告,继续访问。


这样即可完成 HTTPS 配置。

相关推荐
DemonAvenger40 分钟前
高性能 TCP 服务器的 Go 语言实现技巧:从原理到实践
网络协议·架构·go
tmacfrank3 小时前
Android 网络全栈攻略(四)—— TCPIP 协议族与 HTTPS 协议
android·网络·https
2501_916013744 小时前
iOS 多线程导致接口乱序?抓包还原 + 请求调度优化实战
websocket·网络协议·tcp/ip·http·网络安全·https·udp
M1A14 小时前
TCP/IP协议精解:IP协议——互联网世界的邮政编码系统
后端·网络协议·tcp/ip
夏天想5 小时前
优化 WebSocket 实现单例连接用于打印【待测试 】
网络·websocket·网络协议
路长且阻5 小时前
网络协议(TCP/IP、HTTP、HTTPS)
网络协议·tcp/ip·http
杰尼橙子5 小时前
DPDK基础架构解析:EAL环境抽象层的设计与实现
网络协议·性能优化
吴free6 小时前
mac电脑wireshark快速实现http接口抓包
网络·测试工具·http·wireshark
THMOM9110 小时前
TinyWebserver学习(9)-HTTP
网络协议·学习·http
en-route12 小时前
HTTP 缓存
网络协议·http·缓存