参考:链接

前提条件

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

  1. // 开通443端口
  2. firewall-cmd --zone=public --add-port=443/tcp --permanent
  3.  
  4. // 重新加载
  5. firewall-cmd --reload

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

参考: 链接

  1. // YUM方式安装mod_ssl.so模块
  2. 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文件,并找到以下参数,按照下文中注释内容进行配置。

  1. #LoadModule ssl_module modules/mod_ssl.so #删除行首的配置语句注释符号“#”加载mod_ssl.so模块启用SSL服务,Apache默认是不启用该模块的。
  2. #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目录中。

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

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

保存ssl.conf文件并退出。

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

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

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

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

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

后续操作

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

  1. https://证书绑定的域名 

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

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

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

补充

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

原因:

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

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

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

参考:链接    链接

在Apache服务器上安装SSL证书的更多相关文章

  1. Linux CentOS 7 在Apache服务器上安装SSL证书

    在开发微信小程序的时候,wx.request请求的地址必须是https的,所以只能重新配置服务器. 域名和服务器都是在阿里云上买的,系统是CentOS7,安装了Apache服务器.网上也找了一下,很多 ...

  2. 极简】如何在服务器上安装SSL证书?

    本文适合任何人了解,图形化操作.下面以腾讯云为例,并且服务器(linux)也安装了宝塔面板. 1.登陆腾讯云账号进入控制台,找到SSL的产品 2.按要求申请并填写表单,记住私钥密码 3.提交后,待腾讯 ...

  3. 在Nginx服务器上安装SSL证书

    配置nginx 1.下载证书文件 2.在nginx的conf目录中创建目录cert目录,并将证书文件拷贝进去. 3.配置nginx.conf,完整的nginx.conf如下: #user nobody ...

  4. Linux+Apache下如何安装SSL证书

    最近很多站长在问linux系统平台下如何安装SSL证书?Linux+Apache下如何安装SSL证书?本文整理了关于Linux+Apache下如何安装SSL证书的相关教程供大家参考,更多SSL证书安装 ...

  5. Linux+Apache环境下安装SSL证书

    一.安装证书 (温馨提示:安装证书前请先备份您需要修改的服务器配置文件) 1.确认证书文件及证书路径.  例证书文件为:zzidc.com.jks,放置目录为Tomcat的conf目录下.  2.配置 ...

  6. Nginx上安装SSL证书

    准备 参考 :链接 下载的Nginx证书压缩文件解压后包含: .pem:证书文件.PEM文件的扩展名为CRT格式. .key:证书密钥文件.申请证书时如果未选择自动创建CRS,则下载的证书文件压缩包中 ...

  7. 在阿里云IIS服务器上安装证书

    在IIS服务器上安装证书 您可将下载的阿里云SSL证书安装到IIS服务器上,使您的IIS服务器支持HTTPS安全访问. 一.前提条件 申请证书时需要选择 系统自动创建CSR. 申请证书时如果选择手动创 ...

  8. 在Linux(CentOS 6.6)服务器上安装并配置基于Apache的SVN服务器

    #!/bin/bash # # 在Linux(CentOS 6.6)服务器上安装并配置基于Apache的SVN服务器: # # .安装服务 # .创建svn版本库 # .创建svn用户 # .配置sv ...

  9. MVC图片上传详解 IIS (安装SSL证书后) 实现 HTTP 自动跳转到 HTTPS C#中Enum用法小结 表达式目录树 “村长”教你测试用例 引用provinces.js的三级联动

    MVC图片上传详解   MVC图片上传--控制器方法 新建一个控制器命名为File,定义一个Img方法 [HttpPost]public ActionResult Img(HttpPostedFile ...

随机推荐

  1. 数据结构C++使用邻接表实现图

    定义邻接表存储的图类.[实验要求] (1)创建一个邻接表存储的图:(2)返回图中指定边的权值:(3)插入操作:向图中插入一个顶点,插入一条边:(4)删除操作:从图中删除一个顶点,删除一条边:(5)图的 ...

  2. 提前批笔试一道算法题的Java实现

    题目描述 这是2021广联达校招提前批笔试算法题之一. 我们希望一个序列中的元素是各不相同的,但是理想和显示往往是有差距的.现在给出一个序列A,其中难免有相同的元素,现在提供了一种变化方式,使得经过若 ...

  3. elementUI 表单清空问题

    在使用表单的清空方法时,我们需要注意几个问题: 1.我们需要为每个form-item加上prop属性,要不然无法清空(大部分的问题就是出在这) 2.resetFields()方法是重置表单,重置为默认 ...

  4. MySQL服务操作

    启动: systemctl start mysqld.service; 状态: systemctl status mysqld.service; 重启: systemctl restart mysql ...

  5. node mssql 无法连接sql server

    mssql无法连接sql server主要有两种原因: Sql server使用的是Windows身份验证 Sql server并没有打开网络连接功能 1.打开Sql Server身份验证 参考这篇文 ...

  6. CSS动画实例:Loading加载动画效果(一)

    一些网站或者APP在加载新东西的时候,往往会给出一个好看有趣的Loading图,大部分的Loading样式都可以使用CSS3制作出来,它不仅比直接使用gif图简单方便,还能节省加载时间和空间.下面介绍 ...

  7. 【Floyd】珍珠

    [题目描述] 有n颗形状和大小都一致的珍珠,它们的重量都不相同.n为整数,所有的珍珠从1到n编号.你的任务是发现哪颗珍珠的重量刚好处于正中间,即在所有珍珠的重量中,该珍珠的重量列(n+1)/2位.下面 ...

  8. python3 - 常用的操作数据库

    # 获取手机号数据表的中的数据 sql2 = 'SELECT shoujihao FROM shoujihao' self.cursor.execute(sql2) sjh_dates = self. ...

  9. Spark基础学习精髓——第一篇

    Spark基础学习精髓 1 Spark与大数据 1.1 大数据基础 1.1.1 大数据特点 存储空间大 数据量大 计算量大 1.1.2 大数据开发通用步骤及其对应的技术 大数据采集->大数据预处 ...

  10. unity探索者之UGUI圆形图片组件

    版权声明:本文为原创文章,转载请声明https://www.cnblogs.com/unityExplorer/p/13524824.html 使用UGUI进行游戏开发的过程中经常会遇到一个问题:玩家 ...