2011-01-27 140 views

回答

19

SSL证书文件包含X.509证书(其中,又包含用于加密的公钥)申报。 SSL证书密钥文件包含与证书中公钥对应的私钥。为了让网络服务器对进行加密解密,它必须同时拥有公钥(证书)和相应的私钥。与许多其他服务器产品不同,Apache将密钥和证书存储在单独的文件中。例如,基于Java的产品通常使用Java KeyStore文件,这是一个包含证书和私钥的加密数据库。

14

通常有三种指令包括:

SSLCertificateFile /opt/csw/apache2/certs/icompany/publicCert.pem 
SSLCertificateChainFile /opt/csw/apache2/certs/icompany/chain.pem 
SSLCertificateKeyFile /opt/csw/apache2/certs/icompany/PrivateKeyCert.pem 

SSLCertificateFile应该只包含您想要从网站提供给客户端的证书的公共部分。

如果指定了SSLCertificateChainFile,则网络服务器会将关联的证书(为了建立一个到根CA的整个链)附加到网络服务器证书。 您也可以将您的证书的私人部分放入文件SSLCertificateFile中指定的文件中,但这是不是出于安全原因(例如,网络服务器有一个错误,发生缓冲区溢出并将私钥输出给攻击者) 。

而是把只有私钥在一个单独的文件,并在SSLCertificateKeyFile