在nginx上为 IP 地址生成 SSL 证书并在windosw签证

使用 OpenSSL 生成自签名证书

1.1 创建配置文件

创建 ip-san.cnf文件:

bash 复制代码
[ req ]
default_bits = 2048
distinguished_name = req_distinguished_name
req_extensions = req_ext
prompt = no

[ req_distinguished_name ]
countryName = CN
stateOrProvinceName = Beijing
localityName = Beijing
organizationName = MyCompany
commonName = 192.168.1.100  # 您的IP地址

[ req_ext ]
subjectAltName = @alt_names

[ alt_names ]
IP.1 = 192.168.1.100  # 主IP
# 可以添加多个IP
# IP.2 = 10.0.0.1
# DNS.1 = example.com

1.2 生成证书(Linux)

bash 复制代码
# 生成私钥
openssl genrsa -out server.key 2048

# 生成CSR
openssl req -new -key server.key -out server.csr -config ip-san.cnf

# 生成自签名证书(有效期10年)
openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt -extfile ip-san.cnf -extensions req_ext

# 生成PFX格式(Windows用)
openssl pkcs12 -export -out server.pfx -inkey server.key -in server.crt -password pass:123456

在 Nginx for Windows 使用证书

bash 复制代码
# nginx.conf 配置
server {
    listen 443 ssl;
    server_name 192.168.1.100;
    
    ssl_certificate /nginx/ssl/server.crt;
    ssl_certificate_key /nginx/ssl/server.key;
    
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;
    
    location / {
        root html;
        index index.html;
    }
}

在 Windows 上安装证书

bash 复制代码
# 方法1:图形界面
# 1. 双击 server.pfx
# 2. 选择"本地计算机" → 下一步
# 3. 输入密码 → 勾选"标记此密钥为可导出"
# 4. 选择"根据证书类型,自动选择证书存储" 或
#    选择"个人" → 下一步 → 完成


密码123456




测试 https://192.168.1.100

相关推荐
Sunny_yiyi2 小时前
阿里云轻量服务器安装nginx(不期而遇)
服务器·nginx·阿里云
隐退山林3 小时前
JavaEE初阶:网络原理之TCP/IP协议(一)
服务器·网络·tcp/ip
艾文-你好3 小时前
深信服SSL aTrust设备密码重置及管理密码重置
linux·服务器·ssl
南梦浅3 小时前
校园失物招领平台项目自动化部署指南(Docker + Nginx)
nginx·docker·自动化
AquaPluto3 小时前
Nginx的性能优化
nginx·性能优化
冬奇Lab1 天前
一天一个开源项目(第46篇):Caddy - 自动 HTTPS 的现代化 Web 服务器,支持 HTTP/3
网络协议·nginx·开源
Qinana3 天前
从数据包旅程到首屏渲染:深入理解 TCP/IP 如何决定你的 Web 性能
前端·tcp/ip·浏览器
顺风尿一寸3 天前
Nginx源码分析:变量系统的设计与请求生命周期中的日志记录
nginx