使用来自这个网站的指示,但改变他们只是一点点我创build一个使用-newca的CA,我复制cacert.pem
到我的cacert.pem
,并作为信任发行人在IE中导入。 然后我做了-newreq和-sign(注意:我做了/full/path/CA.sh -cmd
而不是sh CA.sh -cmd
)并将证书和密钥移到了apache。
我访问了IE中的网站,并使用.NET代码,它似乎值得信赖,伟大(除非我写在前面预期的WWW)。 但每次我重新启动Apache我需要input我的密码为网站(s?)。
我怎样才能让它,所以我不需要input密码?
您想要从密钥文件中删除密码。 运行这个:
openssl rsa -in key.pem -out newkey.pem
请注意,这意味着任何有权访问服务器的人都可以复制密钥(从而滥用)。
过去我一直在从自己的密钥文件中删除密码,因为这是最简单的解决scheme,但从安全angular度来看,这不是最好的主意。 另一种方法是将密码inputApache。 您可以使用httpd.conf
的SSLPassPhraseDialog
选项(或其他包含的文件)来执行此操作。
如果您的服务器上只有一个SSL站点,则最简单的forms是:
# either of these will work SSLPassPhraseDialog |/path/to/passphrase-script SSLPassPhraseDialog exec:/path/to/passphrase-script
然后,您将创build一个名为/path/to/passphrase-script
的非常简单/path/to/passphrase-script
,其中包含以下内容:
#!/bin/sh echo "put the passphrase here"
启动时,Apache将输出此脚本的输出并将其用作SSL密钥的密码。 如果您有多个SSL站点,则SSLPassPhraseDialog
具有其他可用的方法,因此您可以为所有密钥使用单个脚本,也可以为每个脚本使用一个单独的脚本,或者您想要这样做。
要从PEM文件中删除密码,您可以执行以下操作。 请注意,在私钥和公用证书位于同一文件的情况下,这两个命令都是必需的:
# you'll be prompted for your passphrase one last time openssl rsa -in mycert.pem -out newcert.pem openssl x509 -in mycert.pem >> newcert.pem
这将创build一个名为“newcert.pem”的文件,该文件是没有密码的PEM文件。 正如其他答案所指出的那样,从安全的angular度来看,这样做是否应该是一个好主意。
从这里 Sn </s>