zoukankan      html  css  js  c++  java
  • 在Apache服务器上安装SSL证书

    参考:链接

    前提条件

    1、您的Apache服务器上已经开启了443端口(HTTPS服务的默认端口)

    // 开通443端口
    firewall-cmd --zone=public --add-port=443/tcp --permanent 
    
    // 重新加载
    firewall-cmd --reload

    2、您的Apache服务器上已安装了mode_ssl.so模块(启用SSL功能)

    参考: 链接

    // YUM方式安装mod_ssl.so模块
    yum -y install mod_ssl
    

    安装完之后/etc/httpd/conf.d目录下会出现一个ssl.conf文件:

    3、本文档证书名称以domain name为示例,例如:证书文件名称为domain name_public.crt,证书链文件名称为domain name_chain.crt,证书密钥文件名称为domain name.key

    4、申请证书时如果未选择系统自动创建CSR,证书下载压缩包中将不包含.key文件

    操作步骤

    1、解压已下载保存到本地的Apache证书文件。

    解压后的文件夹中有3个文件:

    • 证书文件:以.crt为后缀或文件类型。
    • 证书链文件:以.crt为后缀或文件类型。
    • 密钥文件:以.key为后缀或文件类型。

    2、在Apache安装目录中新建cert目录,并将解压的Apache证书、证书链文件和密钥文件拷贝到cert目录中。如果需要安装多个证书,需在Apache目录中新建对应数量的cert目录,用于存放不同的证书 。

    Apache安装默认目录:/etc/httpd

    说明 :如果申请证书时选择了手动创建CSR文件,请将手动生成创建的密钥文件拷贝到cert目录中并命名为domain name.key。

    3、修改httpd.conf配置文件。

    在Apache安装目录下,打开conf/httpd.conf文件,并找到以下参数,按照下文中注释内容进行配置。

    #LoadModule ssl_module modules/mod_ssl.so  #删除行首的配置语句注释符号“#”加载mod_ssl.so模块启用SSL服务,Apache默认是不启用该模块的。
    #Include conf/extra/httpd-ssl.conf  #删除行首的配置语句注释符号“#”。                 
    

    说明:如果您在httpd.conf文件中没有找到以上配置语句,请确认您的Apache服务器中是否已经安装mod_ssl.so模块。

               可执行 yum install -y mod_ssl命令安装mode_ssl模块。

    保存httpd.conf文件并退出

    4、修改httpd-ssl.conf配置文件。

    1. 打开conf/extra/httpd-ssl.conf文件并找到以下参数,按照下文中注释内容进行配置。

    说明:根据操作系统的不同,http-ssl.conf文件也可能存放在conf.d/ssl.conf目录中。

    <VirtualHost *:443>     
        ServerName   #修改为申请证书时绑定的域名www.YourDomainName1.com。                    
        DocumentRoot  /data/www/hbappserver/public          
        SSLEngine on   
        SSLProtocol all -SSLv2 -SSLv3 # 添加SSL协议支持协议,去掉不安全的协议。
        SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM   # 修改加密套件。
        SSLHonorCipherOrder on
        SSLCertificateFile cert/domain name1_public.crt   # 将domain name1_public.crt替换成您证书文件名。
        SSLCertificateKeyFile cert/domain name1.key   # 将domain name1.key替换成您证书的密钥文件名。
        SSLCertificateChainFile cert/domain name1_chain.crt  # 将domain name1_chain.crt替换成您证书的密钥文件名;证书链开头如果有#字符,请删除。
    </VirtualHost>
    
    #如果证书包含多个域名,复制以上参数,并将ServerName替换成第二个域名。 
    <VirtualHost *:443>     
        ServerName   #修改为申请证书时绑定的第二个域名www.YourDomainName2.com。                    
        DocumentRoot  /data/www/hbappserver/public          
        SSLEngine on   
        SSLProtocol all -SSLv2 -SSLv3 # 添加SSL协议支持协议,去掉不安全的协议。
        SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM   # 修改加密套件。
        SSLHonorCipherOrder on
        SSLCertificateFile cert/domain name2_public.crt   # 将domain name2替换成您申请证书时的第二个域名。
        SSLCertificateKeyFile cert/domain name2.key   # 将domain name2替换成您申请证书时的第二个域名。
        SSLCertificateChainFile cert/domain name2_chain.crt  # 将domain name2替换成您申请证书时的第二个域名;证书链开头如果有#字符,请删除。
    </VirtualHost>
    

    说明:需注意您的浏览器版本是否支持SNI功能。如果不支持,多域名证书配置将无法生效。

    保存ssl.conf文件并退出。

    5、重启Apache服务器使SSL配置生效。

    在Apache的bin目录下执行以下命令:
    systemctl restart httpd
    

    6、修改httpd.conf文件,设置HTTP请求自动跳转HTTPS。

    在httpd.conf文件中的<VirtualHost *:80> </VirtualHost>中间,添加以下重定向代码。

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

    后续操作

    证书安装完成后,您可通过登录证书的绑定域名验证该证书是否安装成功。  

    https://证书绑定的域名 

    如果网页地址栏出现小锁标志,表示证书安装成功。

    DV SSL、OV SSL数字证书部署在服务器上后,您的浏览器访问网站时,展示以下效果:

    证书安装完成后,如果网站无法通过https正常访问,需确认您安装证书的服务器443端口是否已开启或被其他工具拦截。如果您使用的是阿里云ECS服务器,请前往ECS控制台安全组页面配置放行443端口。

    补充

    配置好SSL证书后网站还是不安全

    原因:

    1、SSL证书安装问题(这种情况会被绝大部分浏览器识别)

    2、SSL证书到期(这种情况被大部分浏览器识别)

    3、站内调用非HTTPS素材包括图文、CSS、js等素材(目前本屌丝常用的360浏览器、火狐浏览器、Chrome浏览器会识别)

    参考:链接    链接

    作者: Pam

    出处: https://www.cnblogs.com/pam-sh/>

    关于作者:网安在读

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 原文链接 如有问题, 可邮件(mir_soh@163.com)咨询.

  • 相关阅读:
    Single Number II
    Pascal's Triangle
    Remove Duplicates from Sorted Array
    Populating Next Right Pointers in Each Node
    Minimum Depth of Binary Tree
    Unique Paths
    Sort Colors
    Swap Nodes in Pairs
    Merge Two Sorted Lists
    Climbing Stairs
  • 原文地址:https://www.cnblogs.com/pam-sh/p/13630113.html
Copyright © 2011-2022 走看看