文档中心
SSL鑷鍚嶈瘉涔︾敵璇锋寚鍗楁墜鎶婃墜鏁欎綘鎼缓瀹夊叏娴嬭瘯鐜
时间 : 2025-09-27 16:37:53浏览量 : 2
什么是SSL自签名证书?

想象一下你要给朋友寄一封机密信件,自签名证书就像你自己制作的蜡封印章。正规CA机构颁发的证书好比公安局备案的官方印章,而自签名证书则是你自己刻的私人印章——虽然能保证信件不被拆开(加密),但收件人无法验证印章的真伪(缺乏第三方认证)。
典型应用场景:
- 公司内部测试服务器(如开发中的电商平台)
- IoT设备本地管理界面(如路由器后台192.168.1.1)
- CI/CD流水线中的临时加密需求
OpenSSL实战:5步生成自签名证书
第一步:安装OpenSSL工具
```bash
Ubuntu/Debian
sudo apt install openssl
CentOS/RHEL
sudo yum install openssl
```
第二步:生成私钥(保险柜钥匙)
openssl genrsa -out server.key 2048
这就像打造一把2048位复杂度的钥匙,`server.key`文件必须严格保密,泄露它等于交出服务器控制权。
第三步:创建CSR(证书签名请求)
openssl req -new -key server.key -out server.csr
系统会交互式询问信息,关键提示:
- `Common Name`必须填写实际访问的域名(如test.example.com)
- 局域网使用时建议用IP SAN扩展(后文详述)
第四步:添加SAN扩展
现代浏览器要求证书包含Subject Alternative Name,新建`san.ext`文件:
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName = @alt_names
[alt_names]
DNS.1 = localhost
IP.1 = 192.168.1.100
第五步:生成最终证书
openssl x509 -req -in server.csr -signkey server.key \
-out server.crt -days 365 -sha256 -extfile san.ext
现在你得到了:
- `server.crt`:公开分发的证书文件
- `server.key`:绝不可泄露的私钥
Nginx配置示例
```nginx
server {
listen 443 ssl;
ssl_certificate /path/to/server.crt;
ssl_certificate_key /path/to/server.key;
强制TLS1.2以上更安全
ssl_protocols TLSv1.2 TLSv1.3;
}
配置后访问https页面会看到浏览器警告,这是正常现象。Chrome中可按`Ctrl+Shift+I` > Security > View Certificate可查看证书详情。
企业级优化方案
对于需要多人协作的场景,建议建立私有CA:
1. 创建根CA:
```bash
openssl req -x509 -newkey rsa:4096 -days 3650 \
-keyout ca.key -out ca.crt -subj "/CN=My Private CA"
```
2. 用根CA签发终端证书:
openssl x509 -req -in device.csr -CA ca.crt \
-CAkey ca.key -CAcreateserial -out device.crt
3. 分发ca.crt给所有员工设备,将其导入"受信任的根证书颁发机构"存储区。
安全风险警示
2025年某金融公司曾因自签名证书配置不当导致中间人攻击:
- 错误做法:在所有生产环境使用同一份自签名证书
- 攻击者通过WiFi嗅探获取证书后,可解密所有内部通信
- 正确姿势:每个服务使用独立证书,设置合理的有效期(不超过90天)
进阶工具推荐
对于需要管理大量证书的场景:
- `mkcert`:一键生成本地可信证书的工具
- `HashiCorp Vault`:企业级PKI管理系统
- `Let's Encrypt`:免费自动化公共CA(适合对外服务)
> 最佳实践提示:即使使用自签名证书,也要遵循PCI DSS要求的最低标准——采用2048位以上RSA密钥+SHA256哈希算法。
通过本文的实操指南,您现在已经掌握了在内网环境中快速部署加密通道的核心技能。记住定期轮换密钥(建议每季度一次),让安全防护持续有效!
TAG:ssl自签名证书申请,ssl证书自签发,ssl证书 自己制作,自签ssl证书变为可信任