AWS PCA

bash 复制代码
# ========== 1.1 创建 Root CA ==========
ROOT_CA_ARN=$(aws acm-pca create-certificate-authority \
  --certificate-authority-configuration '{
    "KeyAlgorithm": "RSA_2048",
    "SigningAlgorithm": "SHA256WITHRSA",
    "Subject": {
      "Country": "CN",
      "Organization": "DemoCompany",
      "CommonName": "Demo Root CA"
    }
  }' \
  --certificate-authority-type ROOT \
  --usage-mode SHORT_LIVED_CERTIFICATE \
  --query 'CertificateAuthorityArn' --output text)

echo "Root CA ARN: $ROOT_CA_ARN"
# 记下这个 ARN,后面要反复用

# ========== 1.2 自签 Root CA 证书(激活 CA)==========
# 获取 CSR
aws acm-pca get-certificate-authority-csr \
  --certificate-authority-arn $ROOT_CA_ARN \
  --output text > root-ca.csr

# 用自己签发 Root 证书(短期模式,有效期 7 天)
ROOT_CERT_ARN=$(aws acm-pca issue-certificate \
  --certificate-authority-arn $ROOT_CA_ARN \
  --csr fileb://root-ca.csr \
  --signing-algorithm SHA256WITHRSA \
  --template-arn arn:aws:acm-pca:::template/RootCACertificate/V1 \
  --validity Value=7,Type=DAYS \
  --query 'CertificateArn' --output text)

echo "Root Cert ARN: $ROOT_CERT_ARN"

# 等待证书颁发
aws acm-pca wait certificate-issued \
  --certificate-authority-arn $ROOT_CA_ARN \
  --certificate-arn $ROOT_CERT_ARN

# 下载 Root CA 证书
aws acm-pca get-certificate \
  --certificate-authority-arn $ROOT_CA_ARN \
  --certificate-arn $ROOT_CERT_ARN \
  --query 'Certificate' --output text > root-ca.pem

# 导入证书以激活 CA
aws acm-pca import-certificate-authority-certificate \
  --certificate-authority-arn $ROOT_CA_ARN \
  --certificate fileb://root-ca.pem

# ========== 1.3 验证 CA 状态 ==========
aws acm-pca describe-certificate-authority \
  --certificate-authority-arn $ROOT_CA_ARN \
  --query 'CertificateAuthority.Status'

用形象的比喻解释下 这些命令,每一步是干啥的?作用是

我们用一个 "开一家权威印章公司" 的比喻来形象地解释你这段脚本的每一步在做什么。这个比喻贴合 AWS ACM PCA(私有证书颁发机构)的核心逻辑。


🏢 整体背景:你要开一家「印章公司」(即 Root CA)

  • 这家公司专门给人刻章(签发数字证书)。
  • 但首先,你自己得先有一个"公章"(Root CA 证书),别人才会相信你刻的章是合法的。
  • 而 AWS 就像一个"保险柜+刻章机一体机",帮你安全保管私钥(不能拿走),但你需要完成注册流程。

✅ 第一步:申请成立印章公司(创建 CA)

复制代码
ROOT_CA_ARN=$(aws acm-pca create-certificate-authority ...)

比喻 :你去工商局提交申请:"我要开一家叫 'Demo Root CA' 的印章公司,法人是中国 DemoCompany,用 RSA 2048 加密技术。"

  • AWS 收到申请后:
    • 在保险柜里生成一把 绝密私钥(你永远拿不到);
    • 同时生成一份 《刻章申请书》(CSR),上面写着"我想刻一个这样的章";
    • 但此时公司状态是 "待激活"PENDING_CERTIFICATE)------因为你还没拿到自己的公章!

💡 --usage-mode SHORT_LIVED_CERTIFICATE 表示这家公司只打算发短期证书(比如用于测试或 DevOps 场景)。


✅ 第二步:用自己的机器给自己刻章(自签名 + 激活)

1️⃣ 获取《刻章申请书》(CSR)

复制代码
aws acm-pca get-certificate-authority-csr ... > root-ca.csr

比喻:你从 AWS 那里拿到那份《刻章申请书》(root-ca.csr),内容是你想刻的章的样子。


2️⃣ 提交申请:"请用我的申请书,给我刻一个公章!"

复制代码
ROOT_CERT_ARN=$(aws acm-pca issue-certificate ... --template-arn RootCACertificate ...)

比喻 :你对 AWS 说:"我自己就是最高权威,请按这份申请书,用我自己的机器(私钥)给我刻一个公章!"

  • --template-arn arn:aws:acm-pca:::template/RootCACertificate/V1
    👉 相当于选择"根公章模板"(不是普通员工章,而是董事长章!)
  • --validity Value=7,Type=DAYS
    👉 公章 7 天后失效(因为是测试用,短期有效)

AWS 用保险柜里的私钥,在内部完成了签名,生成了你的 Root CA 证书(即公章)。


3️⃣ 等待公章制作完成

复制代码
aws acm-pca wait certificate-issued ...

比喻:你站在柜台前等:"公章刻好了吗?好了我才走。"


4️⃣ 拿到公章(下载证书)

复制代码
aws acm-pca get-certificate ... > root-ca.pem

比喻 :工作人员把刻好的 实体公章(root-ca.pem) 交给你(虽然是电子文件,但代表权威)。


5️⃣ 把公章装回公司(激活 CA)

复制代码
aws acm-pca import-certificate-authority-certificate ...

比喻:你把公章郑重地挂到公司墙上,并告诉 AWS:"现在我正式开业了!请把我的状态从'待激活'改为'营业中'!"

✅ 此时,CA 状态变为 ACTIVE ------ 你的印章公司正式开张!


✅ 第三步:检查公司是否正常营业

复制代码
aws acm-pca describe-certificate-authority ... --query 'Status'

比喻 :你打电话问工商局:"我家印章公司现在状态是?"

回答:"ACTIVE" ✅ ------ 可以开始给别人刻章了!


🎯 总结:整个流程就像

技术操作 现实比喻
create-certificate-authority 申请开印章公司
get-certificate-authority-csr 拿到刻章申请书
issue-certificate(Root 模板) 用自己当权威,给自己刻公章
import-certificate-authority-certificate 把公章挂上墙,正式开业
describe-certificate-authority 查营业执照状态

🔐 关键点提醒:

  • 私钥始终锁在 AWS 的"保险柜"(KMS/HSM)里,你无法导出 ------ 这是安全设计。
  • 只有导入了 自己签发的 Root 证书 ,CA 才能从 PENDING_CERTIFICATE 变成 ACTIVE
  • 之后你就可以用这个 Root CA 去签发服务器证书、客户端证书等(就像给客户刻章)。

需要我继续用这个比喻解释"如何用这个 Root CA 签发一个网站证书"吗?😊

相关推荐
淘源码A3 小时前
多院区集团化云PACS系统源码,原生兼容国产软硬件环境
java·云计算·源码·saas·pacs·医学影像系统
leijiwen12 小时前
Bsin-PaaS(毕昇)——LinkLifeVerse OS 的产业智能工程底座
云原生·云计算·paas
DolitD15 小时前
无人机×云渲染:点量云流实时交互云推流方案
3d·云计算·数据可视化·虚拟现实
hz5678917 小时前
内网视频会议系统建设方案:适合政企单位的安全会议选择
安全·云计算·音视频·实时音视频·信息与通信
Qimooidea1 天前
祁木 CAD Translator:基于阿里云百炼与 DeepSeek 的图纸翻译实战
阿里云·云计算
楚来客1 天前
云计算全栈架构详解
云计算
Elastic 中国社区官方博客1 天前
如何为阿里云 Elasticsearch 创建推理端点,连接器,Workflow 并写入数据
大数据·人工智能·elasticsearch·搜索引擎·阿里云·云计算·全文检索
Database_Cool_1 天前
实时计数器/排行榜首选:阿里云 Tair 高并发数据结构实践
数据结构·数据库·阿里云·云计算
hey you~1 天前
呼叫中心系统技术选型全景指南:从CTI架构到云原生演进的技术决策框架
系统架构·云计算·技术选型·呼叫中心·cti
Devlive 开源社区1 天前
一口气新增三家云——七牛云 Kodo、AWS S3、Cloudflare R2;并支持应用内自动检测与一键升级
云计算·aws