在我的公司有很多服务器,用户远程login到他们的职责。 我们已经启用了计算机证书自动注册,以确保安全连接。 但是由于我们有一些具有多个DNSlogging的服务器,很可能用户不使用服务器的主DNS名称,或者使用它的IP地址,以便在尝试连接时出现证书错误。 因此,我们希望能够自动将所有DNSlogging和服务器的IP地址包含在证书的主题备用名称中。
由于CA和服务器都不知道客户端用来访问服务器的DNS名称,所以您无法自动执行此操作。 您需要指定您想要使用的DNS名称。 为此,您需要为服务器创build自定义请求。
用下面的内容创build一个名为requestSAN.inf的文件
[Version] Signature="$Windows NT$ [NewRequest] Subject = "C=DE,O=YOUR-COMPANY-NAME,CN=SERVER.COMPANY.COM"; EncipherOnly = FALSE Exportable = TRUE KeyLength = 2048 KeySpec = 1 KeyUsage = 0xA0 ; Digital Signature, Key Encipherment MachineKeySet = True ProviderName = "Microsoft RSA SChannel Cryptographic Provider" ProviderType = 12 RequestType = CMC [RequestAttributes] ;I assume you don`t use a customer Template, otherwise use the proper template CertificateTemplate = WebServer SAN="dns=SERVER.COMPANY.COM&dns=SERVER2.COMPANY.COM&dns=SERVER3.COMPANY.COM"
在服务器执行下面的命令来生成证书签名请求:
certreq -new requestSAN.inf certnew.req
提交certnew.req到您的CA并获得相应的证书