文档中心
ESXi瀹夎SSL瀹夊叏璇佷功鍏ㄦ敾鐣ュ憡鍒伡浜虹殑娴忚鍣ㄨ鍛?txt
时间 : 2025-09-27 15:45:27浏览量 : 2

作为一名网络安全从业者,我经常遇到客户抱怨:"每次登录ESXi管理界面,浏览器都弹出红色警告,看着就心慌!"这其实是ESXi默认使用自签名证书导致的普遍问题。今天,我就用大白话带大家彻底解决这个安全隐患。
一、为什么ESXi需要SSL证书?
想象一下ESXi就像你家的大门,自签名证书相当于你自己做了一把锁挂门上。虽然也能用,但来客(浏览器)无法确认这把锁是否可靠,所以会不停警告:"小心!这把锁的来历不明!"
专业点说:ESXi默认安装使用的是自签名SSL证书(self-signed certificate),这种证书没有经过权威CA机构认证。现代浏览器如Chrome、Firefox会对这类证书显示安全警告,影响用户体验的同时也存在中间人攻击风险。
真实案例:2025年某企业就因长期使用自签名证书,被攻击者利用伪造的登录页面窃取了多台ESXi主机的控制权。
二、准备工作:获取合适的SSL证书
你有三种主流选择:
1. 商业CA证书(最推荐):
- 比如DigiCert、Sectigo等知名机构颁发
- 价格约50-500美元/年不等
- 特点:浏览器100%信任,支持最长2年有效期
2. Let's Encrypt免费证书:
- 完全免费,每90天需要续期
- 适合技术能力较强的用户
- 需要配置自动续期脚本
3. 企业内部PKI颁发的证书(企业级方案):
- 需要已部署Windows CA或类似系统
- 管理方便但初始搭建复杂
以商业证书为例,购买时需要提供:
- 完全限定域名(如esxi01.yourcompany.com)
- 公司信息(OV/EV证书需要)
- CSR文件(下一步教你生成)
三、实操步骤:从生成CSR到安装证书
Step1:生成密钥对和CSR
通过SSH连接到ESXi主机后执行:
```bash
创建专用目录
mkdir -p /etc/vmware/ssl
cd /etc/vmware/ssl
生成私钥和CSR
openssl req -newkey rsa:2048 -nodes \
-keyout ruanyun.key \
-out ruanyun.csr \
-subj "/C=CN/ST=Shanghai/L=Shanghai/O=Ruanyun Tech/CN=esxi01.ruanyun.com"
```
关键参数说明:
- `ruanyun.key` → 你的私钥文件名
- `ruanyun.csr` → CSR文件名
- `/CN=` → 必须匹配ESXi的FQDN
Step2:提交CSR获取证书
将生成的.csr文件内容复制给CA机构。以DigiCert为例:
1. 登录账户选择"申请新证"
2. 粘贴CSR内容
3. 完成验证流程(DNS或邮件验证)
4. 下载获得的.crt文件链
你会得到两个文件:
- `your_domain.crt` → 你的服务器证书
- `DigiCertCA.crt` → CA中间证书
Step3:合并证书链
在ESXi上执行:
cat your_domain.crt DigiCertCA.crt > ruanyun.crt
这步很关键!就像把身份证+户口本装订在一起证明你的身份。
Step4:替换默认证书
备份原证书!
cp /etc/vmware/ssl/ruanyun.pem /etc/vmware/ssl/ruanyun.pem.bak
合并密钥和证书链
cat ruanyun.key ruanyun.crt > /etc/vmware/ssl/ruanyun.pem
设置权限
chmod 600 /etc/vmware/ssl/ruanyun.pem
Step5:重启服务生效
/etc/init.d/hostd restart
/etc/init.d/vpxa restart
Pro技巧:常见问题排雷指南
? 错误1:"Certificate is not valid yet"
??时间不同步导致!确保ESXi的NTP服务正常工作:
vim-cmd hostsvc/enable_ssh
vim-cmd hostsvc/enable_ntp
vim-cmd hostsvc/net/info | grep ntp
检查NTP配置
? 错误2:"Hostname mismatch"
??确认三点:
1. ESXi主机名完全匹配CN名称
2. DNS正反向解析正确
3. hosts文件没有错误配置
? 错误3:"Private key does not match"
??说明密钥对不匹配。切记:
- CSR和私钥必须成对生成
- PEM文件中密钥必须在最前面
ESXI7.0+的特殊注意事项
新版vSphere有两个重要变化:
1. 双证书记录机制:
```bash
esxcli system certificate list
查看当前使用的certificate-id
esxcli system certificate set --certificate-id=同时更新hostd和vpxa
```
2. API端点分离:
如果使用PowerCLI等工具自动化管理,可能需要额外更新:
```powershell
Set-PowerCLIConfiguration -InvalidCertificateAction Ignore -Confirm:$false
HTTPS安全强化建议(加分项)
完成基础安装后,建议进一步加固:
1??禁用TLS1.0/TLS1.1:
```bash
esxcli system settings advanced set -o /UserVars/HardeningCiphers --string="TLSv1.2:TLSv1.3"
2??启用HSTS头:
esxcli network firewall ruleset set --enabled=true --ruleset-id=httpClient
3??定期轮换监控:
openssl x509 -noout -dates -in /etc/vmware SSL/RuanYUn.pem
查看过期时间
建议在到期前30天设置提醒!
QA环节:你可能还想知道...
Q: Let's Encrypt如何自动续期?
A:可通过acme.sh脚本+crontab实现自动更新。核心思路是使用DNS API验证所有权。
Q:多台ESXi能用同一个证吗?
A:技术上可以但不推荐!最佳实践是每个主机使用独立SAN证书记录所有可能访问名。
Q:会影响现有虚拟机吗?
A:完全不影响!这只是管理接口的安全升级。VMotion、存储迁移等业务不受任何干扰。
现在打开你的ESXI管理页面吧——那个烦人的红色警告应该已经变成绿色的小锁了!如果还有疑问欢迎留言讨论。记住在网络安全领域,"看着不安全"往往就是最大的风险信号之一。
TAG:esxi安装ssl安全证书,esxi ssl证书,esxi安装server2016,esxi安装hassos