我正在将我的应用程序投入生产,并需要生成CSR的帮助。 我创build了一个私钥,然后执行以下步骤:
openssl genrsa -des3 -out domainname.key 1024
) openssl req -new -key domainname.key -out domainname.csr
) XX.XXX.XXX:3000
: XX.XXX.XXX:3000
,其中X是数字。 最后,我生成了CSR,但现阶段我的应用程序在IP地址为http://XX.XXX.XXX.XXX:3000/
的远程服务器上,而在thawte.com
生成试用SSL时显示错误:
The Common Name in the CSR is invalid.
有没有人有类似的任务,可以告诉我我做错了什么?
第二个问题: 你可以向我推荐什么服务器,然后在列表中select什么Web平台(生成SSL时)?
通用名称不包含端口号或冒号,例如:3000
。 他们不应该是一个IP地址。 它们也不包含协议标识符,如https://
。
如果内存正确地服务于我,那么它们自己的数字作为域名是无效的(尽pipe它们可以用于子域名),并且没有只是一个数字的顶级域名。 XX.XXX.XXX:3000
其中X是数字的通用名称不是IP地址或域名。
通用名称应该只是证书要使用的完全限定的域名。
如果您要求通配符证书,则可以使用*.example.com
作为通用名称。
如果您的应用程序在端口3000上运行,则应该正常请求您的证书,而不要使用端口号,然后告诉客户端使用端口3000.如果客户端是Web浏览器,则在URL: https:/ /www.example.com:3000/ “
“Web平台”的select是可选的,允许Thawte以该软件所需的格式为您提供文件。 例如,nginx要求证书和任何链式证书以正确的顺序在同一个文件中。 Apache可以将它们放在单独的文件中,并使用SSLCertificateFile
和SSLCertificateChainFile
将它们导入。 如果您的网站运行在列表中的已知HTTP服务器上,请select该软件。 如果您自己写的或者是为您编写的定制软件,并且不在列表中,请咨询软件的制造商。
通用名称格式为:XX.XXX.XXX:3000,其中X是数字
首先,证书中的主机名或IP地址不能包含端口。
其次,假设XX.XXX.XXX是IP地址,IP地址必须位于IP地址types的主题备用名称条目(不是DNStypes,不在主题DN的CN中)。 请参阅RFC 2818 :
在某些情况下,URI被指定为IP地址而不是a
主机名。 在这种情况下,iPAddress subjectAltName必须存在
在证书中,并且必须与URI中的IP完全匹配。
有些客户对此比较放松,但没有理由得到不符合要求的证书。
我不确定Thawte会为您颁发一个IP地址的证书,因为他们很难检查IP地址是谁的。
(我有些惊讶,他们甚至不屑地看着CN,因为他们真正需要的是从CA那里获取公钥,并且只要他们已经独立validation,就发布一个证书。)
通用名称字段应该是完全合格的域名(FQDN)或您计划使用您的证书的url,例如您希望客户使用SSL连接到您的网站的区域。 如果要用于SSL的Web地址是www.example-name.com,请确保在CSR中提交的公用名是www.example-name.com; 同样,如果要用于SSL的Web地址是secure.example-name.com,请确保在CSR中提交的公用名是secure.example-name.com。