Apache_SSL证书安装部署指南

一、安装

1、打开 apache 安装目录下 conf 目录中的 httpd.conf 文件,找到

#LoadModule ssl_module modules/mod_ssl.so

去掉 # 加载SSL模块

2、打开 apache 安装目录下的配置文件,添加https配置

<VirtualHost *:443>
    DocumentRoot /var/www/html/
    ServerName www.domain.com
    #启用SSL
    SSLEngine on
    #添加 SSL 协议支持,关闭不安全的协议和加密套件
    SSLProtocol all -SSLv2 -SSLv3
    #修改加密套件如下
    SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256;
    #服务器证书(公钥)(CA机构颁发)
    SSLCertificateFile /etc/ssl/crt/domain.crt
    #私钥文件
    SSLCertificateKeyFile /etc/ssl/crt/domain.key
    #将服务器证书链配置到该路径下
    SSLCertificateChainFile /etc/ssl/crt/root_bundle.crt
</VirtualHost>

保存退出。

二、重启apache

centos5/6
service httpd start #启动
service httpd restart #重新启动
service httpd stop #停止服务
centos7
systemctl start httpd #启动
systemctl restart httpd #重新启动
systemctl stop httpd #停止服务

ubuntu
sudo /etc/init.d/apache2 start #启动apache服务
sudo /etc/init.d/apache2 restart #重启apache服务
sudo /etc/init.d/apache2 stop #停止apache服务

三、其他

http跳转https(建议非强制)

让用户请求直接跳转https,加载rewrite模块:

LoadModule rewrite_module modules/mod_rewrite.so

http(80端口)的virtualhost中配置:

RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R]