Window10 192.168.1.102
ESXI6.7 192.168.1.103
如图,访问esxi6.7的控制端时,会报访问连接不安全。
该问题并不影响使用,而且一般我们是通过vcenter去管理esxi主机的,但是在其他一些情况下,我们使用https开发自己本地的程序的时候,如果要通过程序去测试https的真实环境,这种方式就不失为一种很好的解决办法。
方法就是在我们window10本地,为esxi主机通过mkcert创建证书,然后倒入证书到esxi主机即可。
搜索框输入cmd选择以管理员运行:
出来的控制台输入:PowerShell,
然后在输入:Get-ExecutionPolicy,
如果输出结果是:Restricted,
就接着输入:Set-ExecutionPolicy AllSigned,
然后在输入:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
然后测试choco是否安装成功,直接输入choco。
看到版本就表示安装成功了。
然后重新打开一个cmd的管理员窗口,输入:choco install mkcert
然后在输入:mkcert -install
然后就为我们esxi主机生产证书文件:
mkcert www.esxi.com 192.168.1.103
域名随便起,因为后面我们通过本地的hosts文件来解析域名。Ip就是esxi主机的管理ip.
可以看到提示证书生成在了:C:\Users\Administrator\AppData\Local\mkcert目录。
通过ssh连接esxi主机,注意前提是需要开启esxi主机的ssh服务,默认是关闭的。
回车即可以enable ssh。
连接到sftp,上传www.esxi.com+1.pem和www.esxi.com+1-key.pem文件(这两个文件就是刚才执行mkcert在本地window10生成的证书文件)到esxi主机的/etc/vmware/ssl/目录里面
lcd C:\Users\Administrator\AppData\Local\mkcert
cd /etc/vmware/ssl
put www.esxi*
将原来esxi的证书文件备份到本地,然后删除。
rm -f /etc/vmware/ssl/rui.crt
rm -f /etc/vmware/ssl/rui.key
注意:要将原证书备份到本地,如果只是通过mv rui.crt rui.crt_bak这样备份在原目录,这个备份文件在重启esxi主机后就没了。
将我们刚才上传的两个文件分别改名成rui.crt和rui.key
#cd /etc/vmware/ssl/
#mv www.esxi.com+1-key.pem rui.key
#mv www.esxi.com+1.pem rui.crt
然后重启esxi主机。
# reboot
重启完后,在我们windows10本地添加hosts域名解析。
修改C:\Windows\System32\drivers\etc\hosts文件,添加如下记录:
192.168.1.103 www.esxi.com
这个记录就是我们使用mkcert生产证书的时候对应的ip和域名。
然后我们尝试访问esxi的管理端。
可以看到不管是通过域名还是ip访问esxi,现在都显示连接是安全的,证书是有效的。