Skip to main content

自签名证书制作与使用:本地开发和测试环境SSL配置

· 2 min read
OHTTPS

自签名证书是用于本地开发和测试环境的SSL证书,不需要CA签发。本文将详细介绍如何制作和使用自签名证书。

一、什么是自签名证书

1. 自签名证书的定义

自签名证书是由自己签发的SSL证书,不需要CA验证,适用于本地开发和测试环境。

2. 自签名证书的特点

  • 免费
  • 快速生成
  • 不受浏览器信任
  • 仅适用于本地环境

二、制作自签名证书

1. 使用openssl制作

# 生成私钥
openssl genrsa -out private.key 2048

# 生成证书签名请求
openssl req -new -key private.key -out certificate.csr

# 生成自签名证书
openssl x509 -req -days 365 -in certificate.csr -signkey private.key -out certificate.crt

2. 使用mkcert制作

# 安装mkcert
brew install mkcert # macOS
# 或下载对应平台的二进制文件

# 安装本地CA
mkcert -install

# 生成证书
mkcert localhost 127.0.0.1 ::1

三、配置服务器

1. Nginx配置

server {
listen 443 ssl;
server_name localhost;

ssl_certificate /path/to/certificate.crt;
ssl_certificate_key /path/to/private.key;

# 其他配置...
}

2. Apache配置

<VirtualHost *:443>
ServerName localhost
SSLEngine on
SSLCertificateFile /path/to/certificate.crt
SSLCertificateKeyFile /path/to/private.key
# 其他配置...
</VirtualHost>

四、浏览器信任

1. 添加信任

Chrome/Edge

  • 点击地址栏的锁图标
  • 点击"证书"
  • 点击"安装证书"
  • 选择"受信任的根证书颁发机构"

Firefox

  • 点击地址栏的锁图标
  • 点击"连接安全" → "更多信息"
  • 点击"查看证书" → "导入"

Safari

  • 双击证书文件
  • 添加到"系统"钥匙串
  • 设置为"始终信任"

五、注意事项

1. 安全警告

  • 自签名证书会显示安全警告
  • 需要手动添加信任
  • 仅适用于本地环境

2. 生产环境

  • 不要在生产环境使用自签名证书
  • 使用受信任CA签发的证书
  • 推荐使用OHTTPS申请免费证书

六、最佳实践

1. 本地开发

  • ✅ 使用mkcert生成证书
  • ✅ 添加到浏览器信任
  • ✅ 使用localhost域名

2. 测试环境

  • ✅ 使用自签名证书
  • ✅ 或使用免费证书(Let's Encrypt)
  • ✅ 配置自动续期

总结

自签名证书适用于本地开发和测试环境,制作简单,但不受浏览器信任。对于生产环境,应使用受信任CA签发的证书。

OHTTPS: 免费HTTPS证书/SSL证书申请 • 自动化更新、部署、监控
OHTTPS 支持通过多种域名验证方式(DNS验证、HTTP验证、文件验证等)申请免费的HTTPS证书/SSL证书,包括单域名证书、多域名证书、通配符证书、IP证书等,支持HTTPS证书/SSL证书的自动化更新、自动化部署、自动化监控及告警等,并支持将HTTPS证书/SSL证书自动化部署至阿里云、腾讯云、群晖NAS、百度云、七牛云、多吉云、又拍云、宝塔面板、Docker容器、SSH等,实现HTTPS证书/SSL证书的一站式申请、更新、部署、监控和管理。