亚马逊AWS官方博客

使用 AWS Network Firewall 过滤 WorkSpaces 网络流量,为 Quant 构建安全、高效的量化策略开发环境

一、摘要

远程办公渐成趋势,量化交易机构需要为移动办公的 Quant 提供安全的策略开发桌面入口。
全球头部资产管理公司(例如 AQR、桥水)的最佳实践,是为 Quant 配置云桌面作为策略开发入口。
AWS 提供了托管的云桌面产品 WorkSpaces,并用 Network Firewall 对 WorkSpaces 进行流量的上下文过滤(如跟踪连接和协议识别,匹配对应策略进行处理),防止未经授权的互联网访问。
为了让客户更加快速地理解 WorkSpaces 的适用性,并能够使用 Network Firewall 过滤 WorkSpaces 的互联网流量,作者撰写了本篇文章。

二、公司需要为远程办公的 Quant 提供安全的策略开发桌面入口

Quant,是 Quantitative Analyst(量化交易分析师) 的简写,工作内容是设计并建立数学模型,为相关的金融行为,如衍生品定价、风险估价或预测市场行为等提供数学理论基础,并在此基础上开发交易使用的价格模型。
Quant 理解物理学中对动态状态的研究,熟悉各种数学分析工具,能够从数据中分析规律实现预测,并用高效的代码将模型复现,最后要对金融产品与市场拥有灵敏的直觉,而这种直觉有时候重要性甚至还会超过设计精巧的模型。毫不夸张地说,Quant 是集数据分析、模型研究、投资决策于一身的全能型人才,集投资的艺术性与科学性于一身,在投资科学化与交易工业化已经成为了全球量化工作不可逆的发展趋势下,Quant 的重要性越发凸显。

Quant 的数据为什么需要进行特别的保护?

Quant 日常工作所用的策略开发环境,需要频繁访问量化交易机构的独家数据及重金打造的策略模型,而这些数据及策略模型是各家量化机构的核心资产,所以需要进行严格保护。

Quant 为什么需要远程办公?

起始于 2019 年底的大流行(冠状病毒病(COVID-19),后续简称大流行),改变了很多组织在固定办公室办公的习惯,加速了远程办公的趋势。
PwC(普华永道,四大会计师事务所之一)在 2021 年 1 月 12 日发布的统计报告(原文链接: https://www.pwc.com/us/en/services/consulting/business-transformation/library/covid-19-us-remote-work-survey.html )数据表明,”远程工作对员工和雇主来说都取得了压倒性的成功。 对远程工作的积极态度的转变是显而易见的:现在有 83% 的雇主表示,向远程工作的转变对他们的公司来说是成功的,而在我们 2020 年 6 月的调查中,这一比例为 73%。

三、全球头部资产管理公司,为其遍布全球各个国家的 Quant 提供云桌面,用于接入策略开发环境

全球头部的量化机构大多低调、神秘,他们普遍不愿公开自己使用云的经验,以及对远程办公 Quant 的策略开发环境保护的最佳实践。
但是依然有一些机构(例如 AQR桥水),把他们使用 AWS 的经验,在不同时期的 AWS ReInvent 以及 Summit 上进行了分享,其中包括使用云桌面作为 Quant 接入策略开发环境入口。

3.1 AQR 在 2018 年度的 AWS Summit 大会上,进行了主题为“How AQR Capital Uses AWS to Research New Investment Signals”的案例分享。

图例:How AQR Capital Uses AWS to Research New Investment Signals

在这个分享会上,AQR 有披露使用基于 EC2 自建的云桌面VDI)作为 Quant 进入策略开发环境统一入口的架构设计。

图例:AQR 部署在 AWS 上的策略开发环境部署架构

AQR 分享的完整文档下载链接:https://www.slideshare.net/AmazonWebServices/how-aqr-capital-uses-aws-to-research-new-investment-signals
使用虚拟桌面软件厂商(例如 Citrix)在 AWS 上基于 EC2 自建云桌面,提供给 Quant 用于接入策略开发环境入口也是一种选项。
虚拟桌面软件厂商 Citrix 是 AWS 的合作伙伴,有发布“AWS 云上部署 Citrix Virtual Apps and Desktops Service 资源”的部署指南:
https://thinkwithwp.com/cn/quickstart/architecture/citrix-virtual-apps/?nc1=h_ls

图例:Citrix Virtual Apps and Desktops Service 在 AWS 上的部署架构

3.2 桥水在 2018 年度的 AWS ReInvent 大会上,进行了主题为“Amazon WorkSpaces for Regulated Industries Bridgewater Associates”的案例分享

图例:Amazon WorkSpaces for Regulated Industries

桥水分享了作为受监管的金融从业机构,如何使用 Amazon WorkSpaces ,来帮助满足用户应用程序和设备的安全和法规合规性要求。 必须处理各种法规和安全要求(例如 HIPAA、PCI、ITAR 和 FedRAMP)的组织,必须考虑他们的用户如何以及在何处访问应用程序和存储数据,以及 Amazon WorkSpaces 是如何帮助用户满足这些独特的要求,并帮助为整个组织的用户提供对桌面应用程序和数据的安全、快速访问。
其架构设计中,对不同部门员工所用的 WorkSpaces,使用不同的 VPC 进行网络隔离,对用户接入 WorkSpaces 使用严格的安全管控措施(例如使用 MFA 进行双因素认证,对用接入源 IP 进行白名单控制等)。

图例:桥水在 AWS 上的 WorkSpaces 部署架构

桥水分享的完整文档下载链接:https://www.slideshare.net/AmazonWebServices/amazon-workspaces-for-regulated-industries-bap211-aws-reinvent-2018

四、使用 Network Firewall,对 Quant 用的 WorkSpaces 上网流量进行过滤

Amazon WorkSpaces 是 AWS 托管的云桌面,为远程办公的 Quant 提供了流畅、安全的云上虚拟工作空间。增强 IT 敏捷性,最大限度地提升用户体验,同时只需为使用的基础设施付费。
Quant 使用 WorkSpaces 进行策略开发时,如果有从 WorkSpaces 访问 Internet 的需求,可以使用 Network Firewall,对 WorkSpaces 访问 Internet 的行为进行黑名单(或者白名单)的管控。

4.1 网络架构设计

如下面架构图所示,我们创建了一个测试用的独立 QuantVPC(IP地址段为172.16.0.0/16);
设计了 3 个子网,分别是 Firewall subnet(172.16.21.0/24)、NAT Gateway subnet(172.16.11.0/24)、WorkSpaces subnet(172.16.1.0/24)。
每个子网都配置了独立的路由表(子网左侧),并且 Internet Gateway 也有一张独立的路由表,所以,我们这个试验需要创建四张路由表

图例:使用 Network Firewall 过滤 WorkSpaces 网络流量部署架构(单 AZ,本次实验所用架构)

在生产环境,我们需要考虑跨 AZ 的高可用性设计,需要创建六张路由表(架构设计如下图所示,本次实验不做演示)。

图例:跨 AZ 高可用部署架构(6张路由表,生产环境推荐使用)

4.2 Network Firewall 策略配置

建议先创建规则组,然后配置策略,最后再创建网络防火墙。

4.2.1 创建“Network Firewall 规则组”

AWS Network Firewall 支持有状态的规则(最大规则组容量 30,000),也支持无状态的规则(最大规则组容量 10,000)。
无状态规则优先于有状态规则执行,且按配置的顺序执行,支持 pass,drop 和 forward 到有状态的规则三种处理方式。
本次测试我们使用有状态规则组,对特定网站域名(例如.twitter.com 和.youtube.com)的访问,启用“拒绝”策略。

含 Suricata 兼容 IPS 规则的有状态规则组具有 Suricata 兼容规范中定义的所有设置。例如,以下所示旨在检测 SSH 协议异常。有关 Suricata 的信息,请参阅 Suricata 网站
alert tcp any any -> any 22 (msg:”ALERT TCP port 22 but not SSH”; app-layer-protocol:!ssh; sid:2271009; rev:1;)

4.2.2 创建“防火墙策略”

创建防火墙策略时,需要将 4.2.1 创建的规则组“DenyYoutube”添加到有状态规则组列;

4.2.3 创建“防火墙”

创建防火墙时,需要将防火墙选定在架构图设计定的 VPC 以及指定子网“Firewall subnet(172.16.21.0/24)”,并关联 4.2.2 创建的防火墙策略。

防火墙创建完成,需要等待 3~5 分钟等待系统显示“准备就绪”,才可以进行后续操作。
准备就绪之后,可以在“防火墙详细信息”查看这个防火墙的终端节点 ID“vpce-xxxxa111”,该 ID 需要在后续的路由表配置时使用。

在 VPC/终端节点菜单,也可以查看到新建的防火墙终端节点信息。

4.3 配置四张路由表

4.3.1 配置 VPC Ingress 路由(路由表 1)

打开 VPC 路由表控制台,选中 VPC 的 IGW 路由表(可以使用创建 VPC 时系统默认创建的路由表),增加一条到 NAT Gateway subnet(172.16.11.0/24)所在子网的路由指向(防火墙终端节点(vpce-xxxxa111))。

选中该路由表的“边缘网关”,选择“编辑边缘关联”,把 IGW 添加进来。

IGW 路由表并不需要关联任何子网。

至此,第一张 IGW 路由表配置完成。

4.3.2 配置防火墙子网路由(路由表 2)

后面三张路由表的配置和以前配置公有子网的路由方式过程一样;
创建一张新的路由表,将 Firewall subnet(172.16.21.0/24)关联到该路由表,并配置一条指向 IGW 的默认路由。
新建的 Network Firewall 创建在该子网。

4.3.3 配置公有子网路由(路由表 3)

在该子网创建 Public 类型的 NAT 网关:

创建第三张路由表,将 NAT Gateway subnet(172.16.11.0/24)关联到这张路由表,并创建一条指向防火墙终端节点(vpce-xxxxa111)的默认路由。

4.3.4 配置私有子网路由(路由表 4)

创建第四张路由表,将 WorkSpaces subnet(172.16.1.0/24)关联到这张路由表,并创建一条指向 NAT 的默认路由。
后面章节创建的 WorkSpaces 启动在该子网。

4.4 将 WorkSpaces 启动在指定子网

创建 WorkSpaces 云桌面,选择启动在 WorkSpaces subnet(172.16.1.0/24)。

4.5 测试验证

访问启动在指定子网(172.16.1.0/24)的 WorkSpaces,使用浏览器访问被禁止访问的网页“twitter.com”,显示“This site can’t be reached”;访问其他网页(例如thinkwithwp.com)不受影响,可以正常访问。

图例:WorkSpaces 无法访问被禁止的 URL

在防火墙的“监控”页面,可以监测到有 Stateful 数据包被丢弃。

图例:Network Firewall 的监控数据显示有数据包被拦截

五、解决方案总结

为 Quant 在主流经济体(例如北美、亚洲、欧洲)分布式部署策略开发桌面(WorkSpaces),供 Quant 在各个国家就近接入,以获取最佳的用户体验;
在 AWS 云端集中构建策略开发&回测环境,该环境的网络设计为内部网络,无 Internet 出入口;
分布式部署的 WorkSpaces VPC 和集中部署的策略开发&回测环境用 VPC peering(或者 TGW)打通,利用 AWS 骨干网作为企业网;

对 WorkSpaces 接入进行严格的安全认证(双因素认证、接入 IP 白名单控制等),有效杜绝不安全的访问源,同时各个项目组之间的 Quant 云桌面通过不同 VPC 进行网络安全隔离;
WorkSpaces VPC 可以有限访问 Internet,使用 Network Firewall 进行网站域名(或者 IP 地址及端口号)的白名单(or 黑名单)过滤。
至此,Quant 可以使用 WorkSpaces 支持多达四台显示器(支持两台显示器上的 4K 超高清分辨率),在全球各个国家,肆意挥洒灵感,高效发掘模型因子,为投资人创造稳定的投资回报。

六、更多资料参考

1. Network Firewall 官方文档:
https://docs.thinkwithwp.com/zh_cn/network-firewall/latest/developerguide/what-is-aws-network-firewall.html
2. AWS Network Firewall — VPC 中的新托管防火墙服务:
https://thinkwithwp.com/cn/blogs/china/aws-network-firewall-new-managed-firewall-service-in-vpc/
3. Network Firewall 部署架构设计:
https://thinkwithwp.com/cn/blogs/networking-and-content-delivery/deployment-models-for-aws-network-firewall/
4. AWS Network Firewall Workshop(在线实验手册):
https://networkfirewall.workshop.aws
5. VPC 官方文档:
https://docs.thinkwithwp.com/zh_cn/vpc/latest/userguide/what-is-amazon-vpc.html
6. 快速上手 Amazon WorkSpaces 云中的虚拟桌面:
https://thinkwithwp.com/cn/blogs/china/get-started-with-virtual-desktops-in-the-amazon-workspaces-cloud/
7. 在亚马逊云科技上 1 小时配置好您的远程办公环境(视频):
https://aws.amazon.bokecc.com/news/show-2425.html

本篇作者

尹广东

AWS 解决方案架构师,负责基于 AWS 云计算方案架构的咨询和设计,在国内推广 AWS 云平台技术和各种解决方案。具有十年以上云计算领域工作经验,对企业级应用系统架构、网络架构、数据架构有深刻了解,深度理解 AWS 核心的计算、网络、存储、数据分析以及云桌面架构及生态,目前专注于 AWS FSI 行业解决方案架构设计。