百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

阿里云申请免费SSL证书并对Apache进行HTTPS配置

nanshan 2024-10-19 06:34 31 浏览 0 评论

在阿里云页面申请云顿证书

1.在阿里云页面搜索 “云盾证书”,并点击 “云盾证书服务包年”



2.点击 弹出窗口最底部的 “云顿证书服务包年购买页” 即可进入申请证书页面



3.选择 “免费(个人)DV” 类型,购买数量根据需要填写,每个阿里云账号最多 签发20个。免费版 每个 二级域名 和 每个 一级域名 都只能分别单独使用一个证书。



4.支付成功后 点击 “证书控制台”



5.点击证书后面的 “证书申请”,并填写信息,域名必须跟要使用的域名一致,邮箱手机号 也必须 是有效的,如果是 阿里云购买的域名,则可以选择 自动DNS验证,CSR选择系统自动生成审核速度快。



6.未申请和申请后的证书列表如下



7.下载申请通过的证书



8.选择下载 Apache 服务器对应的证书,解压得到如下3个文件

  • 3734130_blog.qinqinxia.com.key
  • 3734130_blog.qinqinxia.com_chain.crt
  • 3734130_blog.qinqinxia.com_public.crt
  • 9.以上3个文件上传到服务器如下位置,也可以是其他目录(/etc/httpd/conf.d/ssl.conf文件中配置需要与之对应)

    SSLCertificateFile /etc/pki/tls/certs/3734130_blog.qinqinxia.com_chain.crt
    SSLCertificateKeyFile /etc/pki/tls/private/3734130_blog.qinqinxia.com.key
    SSLCertificateChainFile /etc/pki/tls/certs/3734130_blog.qinqinxia.com_public.crt



    Apache配置 HTTPS

    1.Apache 安装 mod_ssl.so 模块 yum -y install mod_ssl

    [root@izhp3flliiu1wistk24f3cz modules]# yum -y install mod_ssl
    Loaded plugins: fastestmirror
    base                                                                                                                            | 3.6 kB  00:00:00     
    epel                                                                                                                            | 4.7 kB  00:00:00     
    extras                                                                                                                          | 2.9 kB  00:00:00     
    updates                                                                                                                         | 2.9 kB  00:00:00     
    (1/5): epel/x86_64/group_gz                                                                                                     |  95 kB  00:00:00     
    (2/5): epel/x86_64/updateinfo                                                                                                   | 1.0 MB  00:00:00     
    (3/5): updates/7/x86_64/primary_db                                                                                              | 7.6 MB  00:00:00     
    (4/5): extras/7/x86_64/primary_db                                                                                               | 165 kB  00:00:00     
    (5/5): epel/x86_64/primary_db                                                                                                   | 6.8 MB  00:00:00     
    Determining fastest mirrors
    Resolving Dependencies
    --> Running transaction check
    ---> Package mod_ssl.x86_64 1:2.4.6-90.el7.centos will be installed
    --> Processing Dependency: httpd = 2.4.6-90.el7.centos for package: 1:mod_ssl-2.4.6-90.el7.centos.x86_64
    --> Running transaction check
    ---> Package httpd.x86_64 0:2.4.6-80.el7.centos will be updated
    ---> Package httpd.x86_64 0:2.4.6-90.el7.centos will be an update
    --> Processing Dependency: httpd-tools = 2.4.6-90.el7.centos for package: httpd-2.4.6-90.el7.centos.x86_64
    --> Running transaction check
    ---> Package httpd-tools.x86_64 0:2.4.6-80.el7.centos will be updated
    ---> Package httpd-tools.x86_64 0:2.4.6-90.el7.centos will be an update
    --> Finished Dependency Resolution
    
    Dependencies Resolved
    
    =======================================================================================================================================================
     Package                             Arch                           Version                                         Repository                    Size
    =======================================================================================================================================================
    Installing:
     mod_ssl                             x86_64                         1:2.4.6-90.el7.centos                           base                         112 k
    Updating for dependencies:
     httpd                               x86_64                         2.4.6-90.el7.centos                             base                         2.7 M
     httpd-tools                         x86_64                         2.4.6-90.el7.centos                             base                          91 k
    
    Transaction Summary
    =======================================================================================================================================================
    Install  1 Package
    Upgrade             ( 2 Dependent packages)
    
    Total download size: 2.9 M
    Downloading packages:
    Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
    (1/3): httpd-tools-2.4.6-90.el7.centos.x86_64.rpm                                                                               |  91 kB  00:00:00     
    (2/3): httpd-2.4.6-90.el7.centos.x86_64.rpm                                                                                     | 2.7 MB  00:00:00     
    (3/3): mod_ssl-2.4.6-90.el7.centos.x86_64.rpm                                                                                   | 112 kB  00:00:00     
    -------------------------------------------------------------------------------------------------------------------------------------------------------
    Total                                                                                                                  5.3 MB/s | 2.9 MB  00:00:00     
    Running transaction check
    Running transaction test
    Transaction test succeeded
    Running transaction
      Updating   : httpd-tools-2.4.6-90.el7.centos.x86_64                                                                                              1/5 
      Updating   : httpd-2.4.6-90.el7.centos.x86_64                                                                                                    2/5 
      Installing : 1:mod_ssl-2.4.6-90.el7.centos.x86_64                                                                                                3/5 
      Cleanup    : httpd-2.4.6-80.el7.centos.x86_64                                                                                                    4/5 
      Cleanup    : httpd-tools-2.4.6-80.el7.centos.x86_64                                                                                              5/5 
      Verifying  : httpd-tools-2.4.6-90.el7.centos.x86_64                                                                                              1/5 
      Verifying  : httpd-2.4.6-90.el7.centos.x86_64                                                                                                    2/5 
      Verifying  : 1:mod_ssl-2.4.6-90.el7.centos.x86_64                                                                                                3/5 
      Verifying  : httpd-tools-2.4.6-80.el7.centos.x86_64                                                                                              4/5 
      Verifying  : httpd-2.4.6-80.el7.centos.x86_64                                                                                                    5/5 
    
    Installed:
      mod_ssl.x86_64 1:2.4.6-90.el7.centos                                                                                                                 
    
    Dependency Updated:
      httpd.x86_64 0:2.4.6-90.el7.centos                                      httpd-tools.x86_64 0:2.4.6-90.el7.centos                                     
    
    Complete!
    [root@izhp3flliiu1wistk24f3cz modules]# 

    2.安装完成 后可以在 /etc/httpd/modules 目录下找到 mod_ssl.so 文件

    [root@izhp3flliiu1wistk24f3cz modules]# pwd
    /etc/httpd/modules
    [root@izhp3flliiu1wistk24f3cz modules]# ls
    libphp5.so            mod_authn_core.so       mod_authz_host.so     mod_cgi.so           mod_dir.so         mod_heartbeat.so            mod_log_debug.so     mod_mpm_worker.so      mod_proxy_http.so      mod_rewrite.so           mod_ssl.so         mod_version.so
    mod_access_compat.so  mod_authn_dbd.so        mod_authz_owner.so    mod_charset_lite.so  mod_dumpio.so      mod_heartmonitor.so         mod_log_forensic.so  mod_negotiation.so     mod_proxy_scgi.so      mod_sed.so               mod_status.so      mod_vhost_alias.so
    mod_actions.so        mod_authn_dbm.so        mod_authz_user.so     mod_data.so          mod_echo.so        mod_include.so              mod_logio.so         mod_proxy_ajp.so       mod_proxy.so           mod_setenvif.so          mod_substitute.so  mod_watchdog.so
    mod_alias.so          mod_authn_file.so       mod_autoindex.so      mod_dav_fs.so        mod_env.so         mod_info.so                 mod_lua.so           mod_proxy_balancer.so  mod_proxy_wstunnel.so  mod_slotmem_plain.so     mod_suexec.so
    mod_allowmethods.so   mod_authn_socache.so    mod_buffer.so         mod_dav_lock.so      mod_expires.so     mod_lbmethod_bybusyness.so  mod_macro.so         mod_proxy_connect.so   mod_ratelimit.so       mod_slotmem_shm.so       mod_systemd.so
    mod_asis.so           mod_authz_core.so       mod_cache_disk.so     mod_dav.so           mod_ext_filter.so  mod_lbmethod_byrequests.so  mod_mime_magic.so    mod_proxy_express.so   mod_reflector.so       mod_socache_dbm.so       mod_unique_id.so
    mod_auth_basic.so     mod_authz_dbd.so        mod_cache.so          mod_dbd.so           mod_file_cache.so  mod_lbmethod_bytraffic.so   mod_mime.so          mod_proxy_fcgi.so      mod_remoteip.so        mod_socache_memcache.so  mod_unixd.so
    mod_auth_digest.so    mod_authz_dbm.so        mod_cache_socache.so  mod_deflate.so       mod_filter.so      mod_lbmethod_heartbeat.so   mod_mpm_event.so     mod_proxy_fdpass.so    mod_reqtimeout.so      mod_socache_shmcb.so     mod_userdir.so
    mod_authn_anon.so     mod_authz_groupfile.so  mod_cgid.so           mod_dialup.so        mod_headers.so     mod_log_config.so           mod_mpm_prefork.so   mod_proxy_ftp.so       mod_request.so         mod_speling.so           mod_usertrack.so
    [root@izhp3flliiu1wistk24f3cz modules]# 

    3. 命令执行结束安装完成后 /etc/httpd/conf.d 目录下会出现一个ssl.conf文件

    [root@izhp3flliiu1wistk24f3cz modules]# ls /etc/httpd/conf.d
    autoindex.conf  php.conf  README  ssl.conf  userdir.conf  welcome.conf
    [root@izhp3flliiu1wistk24f3cz modules]# 

    4.在这个文件里面找到如下内容

    SSLCertificateFile xxx_public.crt
    SSLCertificateKeyFile xxx.key
    SSLCertificateChainFile xxx_chain.crt

    5.修改这三项配置如下

    SSLCertificateFile /etc/pki/tls/certs/3734130_blog.qinqinxia.com_public.crt
    SSLCertificateKeyFile /etc/pki/tls/private/3734130_blog.qinqinxia.com.key
    SSLCertificateChainFile /etc/pki/tls/certs/3734130_blog.qinqinxia.com_chain.crt

    6.然后继续在此文件中配置找到以下内容配置443站点信息

  • 按照内容直接改就可以
  • # 子站点配置
    ServerName blog.qinqinxia.com #域名
    DocumentRoot "/www/wwwroot/blog_online/www/" #项目的路径
    DirectoryIndex index.php index.html index.htm
    # 项目目录权限配置
    <Directory "/www/wwwroot/www">
    	Options +Includes -Indexes
    	AllowOverride All
    	Order Deny,Allow
    	Allow from All
    </Directory>
  • 2.然后这个文件就编辑完了。
  • 3.然后找到/etc/httpd/conf/httpd.conf 文件并打开,找到#LoadModule ssl_module modules/mod_ssl.so 并将前面的#号去掉, 或者 该配置在 /etc/httpd/conf/conf.modules.d/00-ssl.conf 文件中
  • 4.在/etc/httpd/conf/httpd.conf文件的最后引入之前配置好的文件。例如:
  • #引入外部的ssl配置文件
    Include /etc/httpd/conf.d/ssl.conf
  • 5.至此,配置完成,重启Apache然后访问你的域名即可
  • systemctl restart httpd

    6.如果启动Apache失败

    则将 ssl.conf 文件备份一下,然后替换内容为如下纯净版的,其中配置换成与你对应的,然后重启apahce

    Listen 443
    <VirtualHost *:443>
    	SSLEngine on
    	SSLProtocol all -SSLv2 -SSLv3
    	SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
    	
    	SSLCertificateFile /etc/pki/tls/certs/3734130_blog.qinqinxia.com_public.crt
    	SSLCertificateKeyFile /etc/pki/tls/private/3734130_blog.qinqinxia.com.key
    	SSLCertificateChainFile /etc/pki/tls/certs/3734130_blog.qinqinxia.com_chain.crt
     
    	# 子站点配置
    	ServerName blog.qinqinxia.com
    	DocumentRoot "/www/wwwroot/blog_online/www/"
    	DirectoryIndex index.php index.html index.htm
    
    	<Directory /www/wwwroot/blog_online/www/>
    		Options +Indexes +FollowSymLinks +ExecCGI
    		AllowOverride All
    		Order allow,deny
    		Allow from all
    		Require all granted
    	</Directory>
    </VirtualHost>

    7.测试,用浏览器以https方式访问站点:https://blog.qinqinxia.com/,如下图,访问正常



    8.如果需要将 http://blog.qinqinxia.com 转发到 https://blog.qinqinxia.com 则在http.conf文件中增加如下配置并重启apche即可:

    9.测试访问80端口重定向到443端口,浏览器访问 http://blog.qinqinxia.com,如果浏览器地址会自动换成 https://blog.qinqinxia.com 表示 配置成功.

    相关推荐

    0722-6.2.0-如何在RedHat7.2使用rpm安装CDH(无CM)

    文档编写目的在前面的文档中,介绍了在有CM和无CM两种情况下使用rpm方式安装CDH5.10.0,本文档将介绍如何在无CM的情况下使用rpm方式安装CDH6.2.0,与之前安装C5进行对比。环境介绍:...

    ARM64 平台基于 openEuler + iSula 环境部署 Kubernetes

    为什么要在arm64平台上部署Kubernetes,而且还是鲲鹏920的架构。说来话长。。。此处省略5000字。介绍下系统信息;o架构:鲲鹏920(Kunpeng920)oOS:ope...

    生产环境starrocks 3.1存算一体集群部署

    集群规划FE:节点主要负责元数据管理、客户端连接管理、查询计划和查询调度。>3节点。BE:节点负责数据存储和SQL执行。>3节点。CN:无存储功能能的BE。环境准备CPU检查JDK...

    在CentOS上添加swap虚拟内存并设置优先级

    现如今很多云服务器都会自己配置好虚拟内存,当然也有很多没有配置虚拟内存的,虚拟内存可以让我们的低配服务器使用更多的内存,可以减少很多硬件成本,比如我们运行很多服务的时候,内存常常会满,当配置了虚拟内存...

    国产深度(deepin)操作系统优化指南

    1.升级内核随着deepin版本的更新,会自动升级系统内核,但是我们依旧可以通过命令行手动升级内核,以获取更好的性能和更多的硬件支持。具体操作:-添加PPAs使用以下命令添加PPAs:```...

    postgresql-15.4 多节点主从(读写分离)

    1、下载软件[root@TX-CN-PostgreSQL01-252software]#wgethttps://ftp.postgresql.org/pub/source/v15.4/postg...

    Docker 容器 Java 服务内存与 GC 优化实施方案

    一、设置Docker容器内存限制(生产环境建议)1.查看宿主机可用内存bashfree-h#示例输出(假设宿主机剩余16GB可用内存)#Mem:64G...

    虚拟内存设置、解决linux内存不够问题

    虚拟内存设置(解决linux内存不够情况)背景介绍  Memory指机器物理内存,读写速度低于CPU一个量级,但是高于磁盘不止一个量级。所以,程序和数据如果在内存的话,会有非常快的读写速度。但是,内存...

    Elasticsearch性能调优(5):服务器配置选择

    在选择elasticsearch服务器时,要尽可能地选择与当前业务量相匹配的服务器。如果服务器配置太低,则意味着需要更多的节点来满足需求,一个集群的节点太多时会增加集群管理的成本。如果服务器配置太高,...

    Es如何落地

    一、配置准备节点类型CPU内存硬盘网络机器数操作系统data节点16C64G2000G本地SSD所有es同一可用区3(ecs)Centos7master节点2C8G200G云SSD所有es同一可用区...

    针对Linux内存管理知识学习总结

    现在的服务器大部分都是运行在Linux上面的,所以,作为一个程序员有必要简单地了解一下系统是如何运行的。对于内存部分需要知道:地址映射内存管理的方式缺页异常先来看一些基本的知识,在进程看来,内存分为内...

    MySQL进阶之性能优化

    概述MySQL的性能优化,包括了服务器硬件优化、操作系统的优化、MySQL数据库配置优化、数据库表设计的优化、SQL语句优化等5个方面的优化。在进行优化之前,需要先掌握性能分析的思路和方法,找出问题,...

    Linux Cgroups(Control Groups)原理

    LinuxCgroups(ControlGroups)是内核提供的资源分配、限制和监控机制,通过层级化进程分组实现资源的精细化控制。以下从核心原理、操作示例和版本演进三方面详细分析:一、核心原理与...

    linux 常用性能优化参数及理解

    1.优化内核相关参数配置文件/etc/sysctl.conf配置方法直接将参数添加进文件每条一行.sysctl-a可以查看默认配置sysctl-p执行并检测是否有错误例如设置错了参数:[roo...

    如何在 Linux 中使用 Sysctl 命令?

    sysctl是一个用于配置和查询Linux内核参数的命令行工具。它通过与/proc/sys虚拟文件系统交互,允许用户在运行时动态修改内核参数。这些参数控制着系统的各种行为,包括网络设置、文件...

    取消回复欢迎 发表评论: