【Amazon】AWS实战 | 快速发布安全传输的静态页面

文章目录

    • 一、实验架构图
    • 二、实验涉及的AWS服务
    • 三、实验操作步骤
      • [1. 创建S3存储桶,存放网站网页](#1. 创建S3存储桶,存放网站网页)
      • [2. 使用ACM建立域名证书](#2. 使用ACM建立域名证书)
      • [3. 设置Cloudfront,连接S3存储桶✴️](#3. 设置Cloudfront,连接S3存储桶✴️)
      • [4. 设置Route53,解析域名服务](#4. 设置Route53,解析域名服务)
      • [5. 通过CLI工具上传网页更新内容【可选】](#5. 通过CLI工具上传网页更新内容【可选】)
    • 四、实验总结

一、实验架构图

二、实验涉及的AWS服务

  • AWS S3
  • AWS Certificate Manager(简称:ACM)
  • AWS Cloudfront
  • AWS Route 53
  • AWS CLI

三、实验操作步骤

1. 创建S3存储桶,存放网站网页

创建S3存储桶

  • Name:xybdiyaws-s3-web

测试网页代码如下:

html 复制代码
<!DOCTYPE html>
<html lang="zh-cn">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>xybaws</title>
    </head>
    <body>
        <h1>
            你好,AWS。
        </h1>
    </body>
</html>

2. 使用ACM建立域名证书

访问AWS官网ACM链接:https://aws.amazon.com/cn/certificate-manager/

  • 导航至Certificate Manager

选择请求证书

  • 域名:xybdiytop.top
  • 验证方法:DNS验证

添加标签。

  • Name:xybdiyaws.top

点击在Route S3中创建记录

勾选该域名,选择创建记录

可以查看到该域名的状态,显示是已颁发

3. 设置Cloudfront,连接S3存储桶✴️

根据如下设置,创建分配。

此时该分配的状态显示已启用

我们可以导航至S3控制台,点击之前创建的名为xybdiyaws-s3-web的存储桶之中。点击权限。下拉至存储桶策略

该存储桶依然是阻止所有公开访问的设置状态,我们可以从存储桶策略中,看到允许通过Cloudfront的去访问到该存储桶。

json 复制代码
{
    "Version": "2008-10-17",
    "Id": "PolicyForCloudFrontPrivateContent",
    "Statement": [
        {
            "Sid": "1",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity E2I7O41RM11TVD"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::xybdiyaws-s3-web/*"
        }
    ]
}

通过该界面,可以查看到分配信息。

4. 设置Route53,解析域名服务

导航至Route 53,我们选择xybdiyaws.top托管的域名。


创建记录。

  • 开启别名
  • 流量路由至CloudFront分配的别名
  • 选择之前cloudfront创建临时的域名

显示已成功为xybdiyaws.top创建记录

查看显示状态。

测试通过该域名是否可以正常访问到AWS S3中的资源。

HTTPS加密传输。

5. 通过CLI工具上传网页更新内容【可选】

通过 AWS CLI 命令行工具,上传网页更新内容

前提:设置好 AWS CLI 授权配置,拥有对于 S3 的读写权限

  • 列出S3存储桶一览表
bash 复制代码
C:\Users\xyb>aws s3 ls
2023-10-30 09:41:01 xybaws-account-access-s3
2023-10-30 16:16:46 xybaws-web
2023-09-20 23:32:14 xybawsbucket
2023-11-01 09:42:28 xybdiyaws-s3-web
2023-10-31 17:41:24 xybdiyaws-web-s3
  • 测试本地应用
bash 复制代码
$ npm run dev
  • 打包编辑本地应用
bash 复制代码
$ npm run build
$ npm run generate
  • 上传至 S3 xybdiyaws 存储桶
bash 复制代码
$ aws s3 sync ./dist s3://xybdiyaws-web/ --delete

四、实验总结

通过该实验,掌握了如何创建S3存储桶并上传资源,通过ACM创建域名证书,进而设置CloudFront连接到S3存储桶,最后设置Route 53,解析该域名服务,最终达到通过该域名访问到S3存储桶中的资源的目的。

相关推荐
碳水加碳水1 小时前
Java代码审计实战:XML外部实体注入(XXE)深度解析
java·安全·web安全·代码审计
AKAMAI5 小时前
Entity Digital Sports 降低成本并快速扩展
人工智能·云计算
打码人的日常分享5 小时前
运维服务方案,运维巡检方案,运维安全保障方案文件
大数据·运维·安全·word·安全架构
荣光波比6 小时前
Nginx 实战系列(一)—— Web 核心概念、HTTP/HTTPS协议 与 Nginx 安装
linux·运维·服务器·nginx·云计算
WhoisXMLAPI6 小时前
WhoisXML API再次荣登2025年美国Inc. 5000快速成长企业榜单
网络·安全
lingggggaaaa10 小时前
小迪安全v2023学习笔记(七十九讲)—— 中间件安全&IIS&Apache&Tomcat&Nginx&CVE
笔记·学习·安全·web安全·网络安全·中间件·apache
慧星云12 小时前
双节模型创作大赛开赛啦:和魔多一起欢庆中秋国庆
人工智能·云计算·aigc
Hi2024021712 小时前
基于阿里云ECS搭建Tailscale DERP中继服务器:提升跨网络连接速度
服务器·阿里云·云计算
无线图像传输研究探索13 小时前
无定位更安全:5G 高清视频终端的保密场景适配之道
5g·安全·音视频·无人机·5g单兵图传·单兵图传·无人机图传
喜欢你,还有大家13 小时前
SSH服务远程安全登录
运维·安全·ssh