生成自签名证书并配置 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 配置。

相关推荐
兰雪簪轩4 小时前
分布式通信平台测试报告
开发语言·网络·c++·网络协议·测试报告
司徒小夜7 小时前
HTTP与HTTPS杂谈-HTTPS防御了什么
网络·http·https
只因在人海中多看了你一眼7 小时前
B.50.10.09-RPC核心原理与电商应用
qt·网络协议·rpc
小鸟啄米9 小时前
Elixir通过Onvif协议控制IP摄像机,扩展ExOnvif的摄像头停止移动 Stop 功能
网络协议·elixir·onvif
小鸟啄米11 小时前
Elixir通过Onvif协议控制IP摄像机,扩展ExOnvif的摄像头连续移动功能 ContinuousMove
网络协议·elixir·onvif
一只游鱼11 小时前
利用keytool实现https协议(生成自签名证书)
网络协议·http·https·keytool
学会煎墙12 小时前
3分钟快速入门WebSocket
网络·websocket·网络协议
码熔burning13 小时前
RPC 和 HTTP 的区别
网络协议·http·rpc
赖龙14 小时前
记录SSL部署,链路不完整问题
网络·网络协议·ssl
吐个泡泡v15 小时前
网络编程基础:一文搞懂 Socket、HTTP、HTTPS、TCP/IP、SSL 的关系
网络·网络协议·http·https·socket·ssl·tcp