写点什么

AWS Global Accelerator 的客户端 IP 地址保护

  • 2019-09-18
  • 本文字数:1535 字

    阅读完需:约 5 分钟

AWS Global Accelerator 的客户端 IP 地址保护

AWS Global Accelerator 是一种联网服务,通过将传入的网络流量路由至多个 AWS 区域,从而提高您的全球应用程序的性能和可用性。它利用了我们庞大的边缘站点群和无阻塞全球网络,根据应用程序的运行状况、网络状况和用户所在的地理位置来引导流量,并提供一组静态的任播 IP 地址,这些地址从多个 AWS 位置发布(请参阅新增功能 — AWS Global Accelerator 提升可用性和性能以了解更多信息)。传入的 TCP 或 UDP 流量可以路由至某个 Application Load Balancer、网络负载均衡器或弹性 IP 地址。



客户端 IP 地址保护


今天,我们宣布推出 AWS Global Accelerator 的一项重要新功能。现在,如果您将流量路由至某个 Application Load Balancer,用户客户端的 IP 地址将可用于在终端节点运行代码,从而执行特定 IP 地址的特定逻辑。例如,您可以使用基于 IP 地址进行筛选的安全组,也可以根据用户的 IP 地址或地理位置向其提供自定义的内容。您还可以使用 IP 地址来收集有关用户地理分布的更准确统计信息。


客户端 IP 地址保护功能的使用


如果您已经开始使用 AWS Global Accelerator,我们建议您通过终端节点权重逐步开始使用客户端 IP 地址保护功能。这将有利于您验证利用 IP 地址的任何规则或系统继续正常工作。


为测试此新功能,我启动了一些 EC2 实例,设置了一个 Application Load Balancer,将这些实例放入一个目标组,然后在我的 ALB 前创造了一个加速器:



我检查了浏览器的 IP 地址:



我安装了一个简单的 Python 程序(由 Global Accelerator 团队友情提供),向一个 Global Accelerator 的 IP 地址发送了一条 HTTP 请求,并获取了输出:



源 (99.82.172.36) 是我的加速器使用的一个内部地址。建立基线并确认一切工作正常后,现在我可以启动客户端 IP 地址保护功能!


我打开 AWS Global Accelerator 控制台,找到我的加速器并检查了当前配置,如上图所示。我单击端口 80 的侦听器,然后单击现有的终端节点组:



然后我单击添加终端节点,向该组添加了一个新的终端节点,使用的权重为 255,然后选择保护客户端 IP 地址:



我的终端节点组现在有两个终端节点(一个含有保护的客户端 IP 地址,另一个没有),这两个终端节点都指向同一个 ALB:



在生产环境中,我将从较低的权重开始并进行测试,以确保任何依赖 IP 地址的安全组或其他逻辑都继续工作正常(我还可以在蓝绿部署和软件更新期间使用权重来管理流量)。由于我只是进行简单的测试,因此无需谨慎,直接删除旧(无 IP 地址保护的)终端节点。不论采用哪种方法,终端节点的更改都将在几分钟内生效,我可以刷新测试窗口:



现在我看到我的代码已经可以访问浏览器的 IP 地址(通过 X-Forwarded-For 标头),并且我可以按希望的那样使用它。我还可以在安全组规则中使用此 IP 地址。


有关切换最佳实践的更多信息,请参阅将 ALB 终端节点逐渐过渡到使用客户端 IP 地址保护功能。


注意事项


对于客户端 IP 地址的保护需要注意以下几个方面:


弹性网络接口 (ENI) 的使用量 — Global Accelerator 将为包含 IP 保护终端节点的每个子网创建一个 ENI,并且将在不需要时删除它们。不要编辑或删除它们。



安全组 — Global Accelerator 会创建并管理一个名为 GlobalAccelerator 的安全组。同样,不要编辑或删除它。



现已推出


您可以在下列区域为 Application Load Balancer 启用此新功能:美国东部(弗吉尼亚北部)、美国东部(俄亥俄)、美国西部(俄勒冈)、美国西部(加利福尼亚北部)、欧洲(爱尔兰)、欧洲(法兰克福)、欧洲(伦敦)、亚太地区(东京)、亚太地区(新加坡)、亚太地区(首尔)、亚太地区(孟买)和亚太地区(悉尼)。


本文转载自 AWS 博客。


原文链接


https://amazonaws-china.com/cn/blogs/china/new-client-ip-address-preservation-for-aws-global-accelerator/


2019-09-18 15:061239
用户头像

发布了 1959 篇内容, 共 166.9 次阅读, 收获喜欢 82 次。

关注

评论

发布
暂无评论
发现更多内容

node版本管理器:nvm 和 n区别

乌龟哥哥

10月月更

Laravel-EloquentORM高级部分解析

乌龟哥哥

10月月更

如何快速解决恶意进程导致CPU飙升问题 | Linux | 运维

Appleex

Linux centos 运维 cpu 服务器

ARM架构下的Docker环境,OpenJDK官方没有8版本镜像,如何完美解决?

程序员欣宸

Java Docker 10月月更

3分钟快速了解什么是千兆以太网?

wljslmz

网络技术 以太网 10月月更 千兆以太网

数据湖(十二):Spark3.1.2与Iceberg0.12.1整合

Lansonli

数据湖 10月月更

第九期-模块三

wuli洋

假如面试官问你Babel的原理该怎么回答

loveX001

JavaScript

架构实战营 - 学生管理系统架构设计

π

#架构实战营

高效IO之零拷贝技术

乌龟哥哥

10月月更

“程”风破浪的开发者|学习力是这个时代的终极竞争力

石云升

学习方法 知行合一 10月月更 “程”风破浪的开发者

【一Go到底】第二十七天---数组注意事项及细节

指剑

Go 10月月更 goalgn

【web 开发基础】PHP 的流程控制之嵌套(巢状)条件分支结构 -PHP 快速入门 (15)

迷彩

嵌套条件表达式 10月月更 web开发基础 PHP基础

技术同学如何面对裁员浪潮?

老张

职场发展 求职面试

阶段三作业

Johnny

#架构实战营

模块三作业-外包学生管理系统架构设计

Diana S

架构训练营

String源码分析(一)

知识浅谈

10月月更

线性表数据结构和使用数组实现顺序表

石柒

10月月更

项目开发全流程梳理

甜点cc

团队管理 技术管理 敏捷研发 10月月更

架构实战训练营模块 3 作业

atcgnu

一文带你了解 Python 中的继承知识点

宇宙之一粟

Python 面向对象 继承 10月月更

面试官:聊聊长连接下的负载均衡

小小怪下士

Java 负载均衡 程序员 TCP

JavaScript数组常用方法大全

CoderBin

JavaScript 面试 前端 数组 10月月更

“程”风破浪的开发者|OpenHarmony 开发环境搭建

鸿蒙之旅

OpenHarmony 10月月更 “程”风破浪的开发者

“程”风破浪的开发者|数据包分析思路方法分享

穿过生命散发芬芳

学习方法 数据包分析 10月月更 “程”风破浪的开发者

熬夜整理前端高频面试题(已拿offer)

loveX001

JavaScript

offset新探索:双管齐下,加速大数据量查询

华为云开发者联盟

数据库 后端 华为云 企业号十月 PK 榜

使用NeuVector开展云原生安全测试

QE_LAB

云原生 安全测试

Kafka生产者客户端几种异常Case详解

石臻臻的杂货铺

kafka Kafka实战 10月月更

vue项目启动失败,内存不足处理

甜点cc

JavaScript Vue V8 10月月更

前端安全性问题以及防御措施

甜点cc

前端 安全 学习笔记 10月月更

AWS Global Accelerator 的客户端 IP 地址保护_安全_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章