它必须在Firefox和所有其他浏览器中都可以使用我正在使用IIS 10服务器。而Firefox v70,Firefox Dev版本v72b5,Chrome v79,Edge v44。我希望HTTPS绑定在所有这些浏览器中都能使用。
必须创建证书真实性才能使用HTTPS绑定,因此我们所有的证书都将由此签名。为此,请从此处下载OpenSSL
的合适版本:Win32/Win64 OpenSSL Installer for Windows并安装。然后,为了快速,轻松地工作,可以制作一些脚本文件,
在运行脚本的文件夹中添加一个名为
#
的文件夹。所有的证书文件都将存储在此处。
RootCA.bat
,openssl genrsa -des3 -out #/RootCA.key 4096
openssl req -x509 -new -nodes -sha256 -days 730 -key #/RootCA.key -out #/RootCA.crt -config rootca.csr
openssl pkcs12 -export -out #/RootCA.p12 -inkey #/RootCA.key -in #/RootCA.crt
openssl pkcs12 -export -out #/RootCA.pem -inkey #/RootCA.key -in #/RootCA.crt
openssl pkcs12 -export -out #/RootCA.pfx -inkey #/RootCA.key -in #/RootCA.crt
并且,对于RootCA
的详细信息,请创建RootCa.csr
,
[req]
default_bits = 4096
prompt = no
default_md = sha256
req_extensions = req_ext
distinguished_name = dn
[ dn ]
C=US
ST=New York
L=Rochester
O=Developer
OU=CodeSigner
CN=*.codesigning.in
[ req_ext ]
subjectAltName = @alt_names
[ alt_names ]
DNS.1 = *.codesigning.in
当您运行
RootCA.bat
时,它将使用RootCa.csr
的详细信息创建证书并导出.pem
,.pfx
和.p12
以及证书文件(RootCA.csr
和'RootCA.key'是也创建了)。
server.bat
,openssl req -new -sha256 -nodes -out #/server.csr -newkey rsa:2048 -keyout #/server.key -config server.csr
openssl x509 -req -in #/server.csr -CA #/RootCA.crt -CAkey #/RootCA.key -CAcreateserial -out #/server.crt -days 365 -sha256 -extfile v3.ext
openssl pkcs12 -export -out #/server.p12 -inkey #/server.key -in #/server.crt -chain -CAfile #/RootCA.crt
openssl pkcs12 -export -out #/server.pem -inkey #/server.key -in #/server.crt -chain -CAfile #/RootCA.crt
openssl pkcs12 -export -out #/server.pfx -inkey #/server.key -in #/server.crt -chain -CAfile #/RootCA.crt
而且,当然,要创建详细信息,请创建server.csr
文件,
[req]
default_bits = 4096
prompt = no
default_md = sha256
req_extensions = req_ext
distinguished_name = dn
[ dn ]
C=US
ST=New York
L=Rochester
O=Developer
OU=Test & Learn
CN=*.localhost.in
[ req_ext ]
subjectAltName = @alt_names
[ alt_names ]
DNS.1 = *.localhost.in
而且,另一个名为v3.ext
的文件(我不太了解),
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName = @alt_names
[ alt_names ]
DNS.1 = *.localhost.in
再次运行
server.bat
时,它将使用server.csr
的详细信息创建证书并导出.pem
,.pfx
和.p12
以及证书文件(server.csr
和server.key
也是创建)。注意:您将必须为自定义域修改
server.csr
(默认情况下,它将为dev.localhost.in
域创建)。!!!警告:您必须记住输入的密码。并且,您可以根据需要修改
RootCA.csr
和RootCA.bat
。 (以增加到期时间,修改细节等)
当我使用Windows时,我只知道导入Windows。要添加窗口,只需单击RootCA.p12
文件并导入。请记住,您必须在受信任的根证书颁发机构和中间证书颁发机构中信任RootCA
。
除firefox以外的所有浏览器都将信任该站点。完成(部分完成)!
您可以在运行中使用mmc进行检查。然后使用Ctrl
+ M
来管理单元证书。
因为FireFox使用它自己的证书管理器,并且对系统证书没有任何注意。因此,您将必须手动导入RootCA.crt
以获得信任,并且所有继承证书都将被信任。如下,