aws申请ssl证书的方法【该证书仅供aws】

ops/2024/11/13 10:45:04/

这里先声明,过程是对的,最终没有达到目的。

原本想着申请ssl证书替代,结果发现aws证书只能给自己的服务器

但是整套申请证书以及下载,以及使用aws控制台的过程可以参考借鉴。

===========================

起因:

腾讯云的ssl证书越来越没法用了,免费证书只能用三个月

所以想其他办法吧,想到了aws,查了一下,他的证书免费

永久免费,而且通过dns验证,还可以自动续签,这个比腾讯云方便太多太多了。

AWS Certificate Managericon-default.png?t=O83Ahttps://ap-east-1.console.aws.amazon.com/acm/home?region=ap-east-1#/welcome

aws 里面搜索 cert就能出来

这里面可以点击请求

然后申请证书

这里有两种验证,一个是dns验证,比较靠谱

最关键的是复制cname名称和cname值

然后填到腾讯云的域名解析

上图是最关键的,复制aws的名称时候,记得把最后的域名和腾讯云的对齐,最后面的小数点都是多余的,删掉。

大约过一分钟。这就完成了。

完美,据说这种方式只要主机cnma记录不删除,就可以自动续签,太方便了。这个只能一年后到期再看是不是这样了。

下来申请一个邮件验证,这个就恶心了。

邮件验证界面我就不贴了,恶心的是必须拥有这几个常用邮箱,而不能自己指定验证邮箱。

并企不能自动续订,必须到期发送验证邮件到邮箱。

邮箱里会受到验证链接,点一下就通过验证了。

验证通过,下来第二个大麻烦

在AWS Certificate Manager (ACM) 控制台中,您无法直接下载由ACM颁发的公有证书,因为AWS不提供导出公有证书和私钥的选项。这是因为公有证书的私钥是由AWS管理的,并且不会提供给用户以确保安全性。您只能在AWS服务中使用这些证书,例如在Elastic Load Balancing、Amazon CloudFront或Amazon API Gateway等AWS服务中。

但是,如果您需要将ACM颁发的公有证书用于非AWS服务,您可以采取以下步骤:

  1. 获取证书ARN:在ACM控制台中找到您的证书,并记下证书的ARN(Amazon Resource Name)。

  2. 使用AWS CLI或API:通过AWS CLI或API,您可以获取证书的详细信息,包括证书内容本身。使用get-certificate命令来检索证书详情,如下所示:

     

    bash

    aws acm get-certificate --certificate-arn arn:aws:acm:region:account-id:certificate/certificate-id

    这将返回证书的详细信息,包括证书体、证书链等,但不包括私钥。

  3. 手动复制证书内容:从CLI或API返回的结果中,您可以手动复制证书内容(包括证书体和证书链),并将其保存为PEM格式的文件。

请注意,这种方法只适用于公有证书的证书体和证书链,不包括私钥。私钥始终由AWS管理,并且不会提供给用户。因此,如果您需要在非AWS服务上使用SSL/TLS证书,您将只能使用证书的公共部分,而无法使用私钥。

官方文档也提到过

这个页面拉到最下面

在中申请公共证书 AWS Certificate Manager - AWS 证书 Managericon-default.png?t=O83Ahttps://docs.aws.amazon.com/zh_cn/acm/latest/userguide/acm-public-certificates.html

下来从aws cli下载

https://awscli.amazonaws.com/AWSCLIV2.msi

安装上面这个

cmd中对aws --version 进行验证

服务器端创建用户::

创建用户的权限策略

{"Version": "2012-10-17","Statement": [{"Effect": "Allow","Action": ["acm:DescribeCertificate","acm:GetCertificate"],"Resource": "arn:aws:acm:*:*:certificate/*"}]
}

创建密码

配置cli::

注意区域!!!!

运行 aws configure 命令时,AWS CLI 会提示您输入一些信息以配置您的环境。以下是您需要输入的信息:

  1. AWS Access Key ID

    • 这是您的AWS账户的访问密钥ID,您可以在AWS管理控制台的IAM(Identity and Access Management)服务中找到或创建。请确保您有权限访问您需要操作的AWS资源。
  2. AWS Secret Access Key

    • 这是与上述访问密钥ID相对应的秘密访问密钥。同样,您可以在IAM服务中找到或创建。
  3. Default region name

    • 这是您默认想要操作的AWS区域。例如,如果您的资源大多在亚太东部(首尔)区域,您可以输入 ap-northeast-2。如果您不确定,可以输入 us-east-1,这是AWS的默认区域。
  4. Default output format

    • 这是CLI命令输出的格式。AWS CLI支持多种输出格式,如JSON、TEXT等。如果您不需要特别指定,可以输入 json,这是默认的输出格式。

验证配置::

aws acm describe-certificate --certificate-arn YOUR_CERTIFICATE_ARN

YOUR_CERTIFICATE_ARN是需要下载的证书arn,如果配置都正确,那么就可以看到返回json

下载证书::

  1. 获取证书(juliangyinqing.techxixi.cn.crt)

    • 可以使用AWS CL导出证书。以下是使用AWS CLI导出证书的命令示例:

      aws acm describe-certificate --certificate-arn arn:aws:acm:region:account-id:certificate/certificate-id --query 'Certificate' --output text > test.xxxxx.cn.crt
      请替换arn:aws:acm:region:account-id:certificate/certificate-id为您的证书ARN。这个命令会将证书内容保存到test.xxxx.cn.crt文件中。

证书下载完毕

只能做到这一步了。

====================================================

重点来了,这个文章再往下没法弄了,经过研究,aws的证书只有这个了,再往下部署apache就不行了,需要私钥生成证书,但是aws的私钥不公开就只能它自己用用,到此为止了,没法给自己服务器的apache用了。

抱歉各位。


http://www.ppmy.cn/ops/132532.html

相关文章

SpringMVC总结 我的学习笔记

SpringMVC总结 我的学习笔记 一、SpringMVC简介1.MVC2.SpringMVC概述3. SpringMVC中的核心组件4.SpringMVC核心架构流程 二、SpringMVC框架实例具体实现使用注解实现 四、数据处理及跳转1.结果跳转方式2.处理器方法的参数与返回值处理提交数据数据显示到前端 五、RestFul风格1.…

ORACLE 删除archivelog日志

监控信息 df -h 查看磁盘空间 /oracle 500G 已用 450G,剩余 50G 具体分析 /oracle/oraarch 421G 占绝对大头,看文件信息 ,从2023年以来一直没有做过日志删除 参考ORACLE 正确删除归档日志的方法_oracle 清理归档日志-CSDN博客 0. 切换…

Ingress nginx 公开TCP服务

文章目录 背景搞起拓展( PROXY Protocol )参考 背景 公司业务繁多, HTTP、GRPC、TCP多种协议服务并存,Kubernetes流量入口复杂,所以萌生了通过LoadBalancer Ingress-nginx 的方式完全的结果入口流量,当然在高并发的场景下可以对…

Chromium 中chrome.system.memory扩展接口定义c++

一、chrome.system.memory chrome.system.memory API。 权限 system.memory 类型 MemoryInfo 属性 availableCapacity number 可用容量的量(以字节为单位)。 容量 number 物理内存容量的总容量(以字节为单位)。 方法 ge…

红黑视觉化

有图有真相 不堪回首图最美公式 log ⁡ 2 n \log_{2}{n} log2​n 2 n 2^n 2nNIL节点(空叶子节点)为黑色 准备工作不用担心本子不够画了说明只能到九层了从任意结点画 观止 不堪回首 第一篇前就想画了,没有底气只能说打印。曾经手画过&#x…

github.com port 22

使用GitHub的443端口 22端口可能被防火墙屏蔽了,可以尝试连接GitHub的443端口。 查看ssh文件夹内是否存在config文件,没有的话创建一个 config文件内容为 Host github.comHostname ssh.github.comPort 443 保存后重新运行git操作即可

逐梦代码深林:Linux编译之舞,链接之诗——自举、动静态库的浪漫旅程

文章目录 问题引入,为什么要进行编译->汇编?一、详细解释编译器自举1. 从最初的二进制编程到汇编2. 第一代汇编编译器的诞生3. 编译器自举的出现:从汇编到更高级的编译器4. 自举的延续:从汇编到高级编程语言5. 为什么要进行编译器自举&am…

PDF编辑工具Adobe Acrobat DC 2023安装教程(附安装包)

Adobe Acrobat DC 2023 是 Adobe 公司推出的一款功能强大的 PDF 文档处理软件。它不仅支持创建、编辑和签署 PDF 文件,还提供了丰富的工具来管理和优化这些文件。以下是 Acrobat DC 2023 的一些主要特点: 1.PDF 创建与编辑:用户可以直接从多…