CentOS下生成自签名的证书的方法详解

2020-01-30 15:48:12刘景俊

DocumentRoot /var/www

SSLEngine On

SSLCipherSuite HIGH:MEDIUM

SSLProtocol all -SSLv2

SSLCertificateFile /etc/apache2/ssl/mars-server.crt

SSLCertificateKeyFile /etc/apache2/ssl/mars-server.key

SSLCACertificateFile /etc/apache2/ssl/my-ca.crt

<Directory /var/www>

   Order deny,allow

   Allow from localhost

</Directory>

</VirtualHost>

<VirtualHost *:80>

ServerName localhost

DocumentRoot /var/www

<Directory /var/www>    Order deny,allow

   Allow from localhost

</Directory>

</VirtualHost>

以上配置保证了用户在访问 443 和 80 端口时可以看到相同的内容,而仅仅是使用的协议不同。修改好配置后,便可以重启 Apache 服务器,这时需要输入 mars-server.key 的密码。用浏览器访问

https://localhost/

这时应当看到一个弹出对话框,让你确认是否信任该站点的证书,选择信任后,便可以查看该站点的内容了。

由于大多数 Apache 服务器都是在服务器启动时自动启动,为了避免在启动 Apache 时输入密码,可以用以下命令生成不加密的 mars-server.key 文件:

openssl rsa -in mars-server.key -out mars-server.key.insecure

用新生成的 mars-server.key.insecure 代替原有的 key 文件即可。