由于使用的是lets-encrypt证书,需要经常续签,于是就出现了这个脚本
#!/bin/sh #关闭虚拟机 for vmid in `vim-cmd vmsvc/getallvms | awk '{print $1}' | sed -n '2,$p'` do vm_state=`vim-cmd vmsvc/power.getstate $vmid | sed -n '2p' | awk '{print $2}'` if [ "$vm_state" = "on" ] then vim-cmd vmsvc/power.shutdown $vmid fi done #进入维护模式 esxcli system maintenanceMode set -e yes esxi_state=`esxcli system maintenanceMode get` if [ "$esxi_state" = "Disabled" ] then sleep 3 fi #传输证书 touch test.txt #重启服务 services.sh restart #退出维护模式 esxcli system maintenanceMode set -e no
你好,我用使用lets-encrypt在VPS上生成泛域名的证书,命令如下:
acme.sh –issue –dns dns_ali -d abc.com -d ‘*.abc.com’ –keylength ec-256 –force
之后通过installcert安装到VPS上
acme.sh –installcert -d abc.com -d ‘*.abc.com’ –fullchainpath /etc/cert/rui.crt –keypath /etc/cert/rui.key –ecc
最后把目录里的 rui.crt和rui.key复制出来,复制到esxi的 /etc/vmware/ssl的目录下覆盖原证书。重启esxi后,无法开机,只能还原证书。
请问,用lets-encrypt生成证书后,该怎么生成适用于esxi的证书呢?谢谢。
初步猜测是esxi不支持ECC证书,目前我ESXI上用的证书是RSA,你试试签发RSA的证书
https://docs.vmware.com/cn/VMware-vSphere/6.7/com.vmware.vsphere.security.doc/GUID-0AE0B563-59D6-45A5-BF46-6FE68607687B.html