0

我有一台配置了 ssl 的 apache 服务器。

SSLCertificateFile /etc/certs/localhost.crt 
SSLCertificateKeyFile /etc/private/localhost.key

现在我需要用新的证书替换证书(由我们部门提供)。为此,我共享了 csr,他们发回了证书。

现在他们共享的文件是 *.p7b (包含 PEM/base64 编码格式的证书。是带有 DER 编码证书和颁发 CA 证书的 .p7b 文件。)

但是在 apache ssl.conf 中我需要提供 crt 文件。如何从 p7b 获取 crt 文件

4

1 回答 1

1

在 Red Hat Linux 服务器/CentOS 7 上安装 openssl

  1. 首先我们需要在我们的服务器上安装httpd,要安装httpd,输入以下命令,yum install httpd

  2. 安装httpd后,现在我们需要安装mod_ssl,yum install mod_ssl

  3. 现在,我们在服务器上也安装了 openssl,yum install openssl

  4. 安装 httpd、mod_ssl 和 openssl 后,我们需要使用以下命令生成密钥 openssl genrsa -out ca.key 2048

  5. openssl req -new -key ca.key -out ca.csr (你可以按回车跳过步骤)

  6. openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.cert

  7. cp ca.crt /etc/pki/tls/certs

  8. cp ca.key /etc/pki/tls/private/

  9. cp ca.csr /etc/pki/tls/private

  10. vim /etc/httpd/conf.d/ssl.conf

    SSLCertificateFile /etc/pki/tls/certs/localhost.crt

替换为

SSLCertificateFile /etc/pki/tls/certs/ca.crt

SSLCertificateKeyFile /etc/pki/tls/private/localhost.key

替换为

SSLCertificateKeyFile /etc/pki/tls/private/ca.key


  11. httpd -t (check whether the above change are correct or not)

  12. vim /etc/httpd/conf/httpd.conf

Go to the bottom of the file and write

<VirtaulHost *:443>
    SSLEngine on
    SSLCertificateFile /etc/pki/tls/certs/ca.crt
    SSLCertificateKeyFile /etc/pki/tls/private/ca.key
    servername localhost
    Documentroot /var/www/html
</VirtualHost>
Save & Exit

 13. httpd -t (check whether the above change are correct or not)

 14. firewall-cmd –permanent –add-service=https

 15. firewall-cmd –permanent –add-port=443/tcp

 16. firewall-cmd  --reload

 17. service httpd restart
于 2018-02-14T12:40:26.530 回答