同样是最近的VMware服务器虚拟化的项目,为了vSphere Client连接登录vCenter不提示警号窗口,为了IE浏览器访问Operations Manager不提示此网站安全证书有问题等,于是搭建了微软的CA服务器做统一认证,由于VMware公司不同产品组件需要不同的替换证书的方法,花费了不少时间,那么接下来几篇博文会分别介绍vCenter Server 5.0、ESXi 5.0、Operations Manager 5.0、vShield Manager 5.0、vCloud Director 5.0的证书替换方法。
首先来进行第一篇《替换vCenter Server 5.0证书》
配置环境
- vCenter Server 5.0
- Microsoft 证书服务器-CA
- OpenSSL 0.9.8
前提条件
- 安装CA证书服务器
- 安装OpenSSL (根据操作系统的位数下载相应版本的OpenSSL)
- 安装Microsoft Visual C++ 2008 Redistributable Package(X86)
输出文件
- rui.key
- rui.crt
- rui.pfx
1. 在CA服务器上,使用的是Windows Server 2008 Datacenter操作系统,在服务器管理器中安装好Active Directory证书服务及Web服务器(IIS),如下图1.1所示。
图1.1 CA服务器
2. OpenSSL功能非常强大,本次用到其证书密钥产生、请求产生、证书签发、验证的功能。下载安装好OpenSSL后,进入该应用程序的Bin文件夹,查找到openssl.cfg,见图1.2所示。
图1.2 openssl.cfg文件
3. OpenSSL.cfg中包含了默认配置参数,可以根据实际的环境产生请求,使用记事本/写字板等工具打开编辑,如下图所示1.3所示。
图1.3 打开openssl.cfg
4. 备份该文件后,直接在该文件中替换参数,部分参数建议如下图1.4所示。
VMware KB里推荐的参数修改配置
1. [ req_distinguished_name ] # change these settings for your environment
countryName = US
stateOrProvinceName = New York
localityName = New York
0.organizationName = Customer Name
organizationalUnitName = IT
commonName = vc.domain.com
emailAddress = [email protected]
[ req_attributes ]
[ usr_cert ]
basicConstraints =CA:FALSE
nsComment = “OpenSSL Generated Certificate”
subjectKeyIdentifier =hash
authorityKeyIdentifier =keyid,issuer
[ v3_req ]
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth, clientAuth
subjectAltName = DNS: vc.domain.com, DNS: vc41.domain.com, DNS: vc41 #examples only
图1.4 cfg文件配置
5. 此处我们并没有使用OpenSSL的cfg文件配置,我们先生成key,自行封装参数,使用管理员身份运行命令提示符,进入到OpenSSL\bin目录下,输入openssl genrsa 2048 > rui.key命令,生成RSA私有密钥rui.key,如下图1.5所示。
图1.5 生成rui.key
6. 回到bin的windows目录中,可以看到文件夹中产生了一个rui.key的文件,该文件为密钥文件,如下图1.6所示。
图1.6 查看生成的密钥文件
7. 接下来对key文件进行配置请求,输入以下命令,把vCenter IP和主机名同时加入到命令行,这样在vSphere Client 5.0登录vCenter时,两种方式都不会提示证书(之前只配置IP证书,创建虚拟机时提示需要认证),详见下图1.7所示
图1.7 配置申请文件
8. 命令执行完成后,在bin文件夹下可以看到输出的rui.csr文件,该文件用来向CA证书服务器申请证书,见图1.8所示。
图1.8 查看申请文件
9. 打开CA证书服务器的IE浏览器,输入https://10.1.1.2/certsrv证书服务器申请地址,输入被授权访问的域账户登录,如下图1.9所示。
图1.9 登录CA服务器
10. 申请证书,如图1.10所示。
图1.10 申请证书
11. 选择高级证书,如图1.11所示。
图1.11 高级证书申请
12. 选择使用,如图1.12所示。
图1.12 证书编码
13. 输入请求字符,如图1.13所示。
图1.13 输入字符
14. 用写字板打开rui.csr文件,看到一串字符,如下图1.14所示。
图1.14 打开csr文件
15. 复制所有的文本字符至上图CA证书申请的空白处,并选择证书模板为Web服务器,如下图1.15所示.
图1.15 选择WEB服务器
16. 提交后,允许操作,点击是,如下图1.16所示。
图1.16 WEB访问确认
17. 选择Base64编码,如下图1.17所示。
图1.17 下载证书
18. 下载证书cernew.cer,复制证书到OpenSSL/bin文件夹下,重命名为rui.crt,这样bin文件夹下就有三个文件,分别是rui.csr、rui.key、rui.crt,如图1.18所示。
图1.18 crt证书文件生成
19. vCenter的SSL证书是需要pfx证书,所以我们还要转换证书格式,输入以下命令,见下图1.19所示
图1.19 生成pfx命令
20. 可以看到bin文件夹下增加了转换的rui.pfx文件,这样vCenter需要的三个SSL证书文件已经申请完成,见下图1.20所示。
图1.20 生成pfx文件
21. 登录到vCenter服务器系统界面,备份以下目录中的SSL证书(作用:证书替代失败时回退)
For Windows 2008, the locations are typically:
l C:\Program Data\VMware\VMware VirtualCenter\SSL
l C:\Program Files\VMware\Infrastructure\Inventory Service\SSL
l C:\Program Files\VMware\Infrastructure\vSphere Web Client\DMServer\config\ssl
For Windows 2003, the locations are typically:
l C:\Documents and Settings\All Users\Application Data\VMware\VMware VirtualCenter\SSL
l C:\Documents and Settings\All Users\Application Data\VMware\Infrastructure\Inventory
Service\SSL
l C:\Documents and Settings\All Users\VMware\Infrastructure\vSphere WebClient\DMServer\config\ssl
复制rui.pfx,rui.crt,rui.key三个文件替换以上SSL目录中的文件,如没有配置vSphere WebClient组件,则系统第三项不需要替换,如下图1.21所示。
图1.21 证书文件路径
22. 替换完成后,打开IE浏览器,输入http://localhost/mob/?moid=vpxd-securitymanager&vmodl=1,输入域用户验证登陆,选择单击界面中的reloadSslCertificate,如下图1.22所示。
图1.22 重新加载证书
23. 继续点击Invoke Method,进行证书调用,如下图1.23所示。
图1.23 证书调用
24. 提示Void,表示释放OK,如下图1.24所示。
图1.24 调用结果
25. 使用管理员命令提示符进入C:\Program Files\VMware\Infrastructure\VirtualCenter Server.运行vpxd –p,在运行命令时,会提示输入两次vCenter连接SQL服务器的认证密码,如下图所示1.25所示。
图1.25 数据库验证
26. 在命令执行中,vSphere Client 连接的vCenter会中断,使用net start vpxd命令启动vCenter的服务,包括vCenter Inventory Service等服务,也可以进入服务管理器手工启用,如图1.26所示。
图1.26 重启服务
27. 此时vCenter服务器的证书已经完成替换,用户登录到CA认证服务器,准备下载CA颁发的根证书,如下图1.27所示。
图 1.27 下载根证书
28. 选择CA证书,下载到本地,如下图1.28所示。
图 1.28 下载
29. 安装证书,注意选择证书的存储路径为受信任的根证书颁发机构,其它配置默认下一步直到完成,如下图1.29所示。
图1.29 选择存储路径
30. 这里,vCenter的证书替换操作已全部完成,登录时检查是否提示证书安装,登录后检查相关菜单窗口的功能是否正常,下一遍将继续ESXi 5.0的证书替换。
其实在验证过程中有个有意思的地方,留到最后一篇揭开。
如过大家有相关的问题,请回复交流,多谢。
下一篇《替换ESXi 5.0证书》,敬请关注。