82 个版本 (38 个稳定版)

1.39.0 2024年8月15日
1.37.0 2024年7月25日
1.18.0 2024年3月26日
1.9.0 2023年12月21日
0.0.0 2021年5月7日

#1 in #rule

Download history 125/week @ 2024-04-22 114/week @ 2024-04-29 199/week @ 2024-05-06 92/week @ 2024-05-13 232/week @ 2024-05-20 96/week @ 2024-05-27 118/week @ 2024-06-03 217/week @ 2024-06-10 215/week @ 2024-06-17 11/week @ 2024-06-24 105/week @ 2024-07-01 96/week @ 2024-07-08 11/week @ 2024-07-15 227/week @ 2024-07-22 147/week @ 2024-07-29 75/week @ 2024-08-05

每月471次下载

Apache-2.0

3.5MB
49K SLoC

aws-sdk-networkfirewall

这是网络防火墙的API参考。本指南适用于需要详细了解网络防火墙API操作、数据类型和错误的开发者。

  • REST API需要您处理连接细节,例如计算签名、处理请求重试和错误处理。有关使用Amazon Web Services REST API的一般信息,请参阅Amazon Web Services APIs。要使用REST API端点访问网络防火墙: https://network-firewall..amazonaws.com
  • 或者,您可以使用Amazon Web Services SDK之一来访问针对您使用的编程语言或平台定制的API。有关更多信息,请参阅Amazon Web Services SDKs
  • 有关网络防火墙功能的描述,包括如何通过网络防火墙控制台使用它们的分步说明,请参阅网络防火墙开发者指南

网络防火墙是Amazon Virtual Private Cloud (Amazon VPC)的基于状态的、托管的网络防火墙和入侵检测与预防服务。使用网络防火墙,您可以在VPC的边界处过滤流量。这包括过滤前往和来自互联网网关、NAT网关或通过VPN或Direct Connect的流量。网络防火墙使用与Suricata兼容的规则,Suricata是一个免费的、开源的网络分析和威胁检测引擎。网络防火墙支持Suricata版本6.0.9。有关Suricata的信息,请参阅Suricata网站

您可以使用多种方式使用网络防火墙来监控和保护您的VPC流量。以下只是一些示例

  • 允许已知Amazon Web Services服务端点(如Amazon S3)的域名或IP地址,并阻止所有其他形式的流量。
  • 使用已知坏域名的自定义列表来限制应用程序可以访问的域名类型。
  • 对进入或离开您的VPC的流量进行深度包检查。
  • 使用有状态的协议检测来过滤HTTPS等协议,无论使用哪个端口。

要为您的VPC启用网络防火墙,您需要在Amazon VPC和网络防火墙中执行步骤。有关使用Amazon VPC的信息,请参阅Amazon VPC用户指南

要开始使用网络防火墙,请执行以下操作

  1. (可选) 如果您还没有想要保护的VPC,请在大纲Amazon VPC中创建它。
  2. 在Amazon VPC中,在每个您想要拥有防火墙端点的可用区域中,为网络防火墙创建一个子网。
  3. 在网络防火墙中,创建无状态和有状态规则组,以定义防火墙要具有的网络流量过滤行为的组件。
  4. 在网络防火墙中,创建一个使用您的规则组并指定其他默认流量过滤行为的防火墙策略。
  5. 在网络防火墙中,创建一个防火墙并指定您的新防火墙策略和VPC子网。网络防火墙在您指定的每个子网中创建一个防火墙端点,具有防火墙策略中定义的行为。
  6. 在Amazon VPC中,使用入站路由增强功能将流量路由到新的防火墙端点。

入门指南

许多服务和操作都有示例,请查看GitHub中的示例文件夹

SDK为每个AWS服务提供一个crate。您必须在Rust项目中将Tokio添加为依赖项以执行异步代码。要将aws-sdk-networkfirewall添加到项目中,请将以下内容添加到您的Cargo.toml文件中

[dependencies]
aws-config = { version = "1.1.7", features = ["behavior-version-latest"] }
aws-sdk-networkfirewall = "1.39.0"
tokio = { version = "1", features = ["full"] }

然后,在代码中,可以使用以下方式创建客户端

use aws_sdk_networkfirewall as networkfirewall;

#[::tokio::main]
async fn main() -> Result<(), networkfirewall::Error> {
    let config = aws_config::load_from_env().await;
    let client = aws_sdk_networkfirewall::Client::new(&config);

    // ... make some calls with the client

    Ok(())
}

有关可以发出哪些调用以及每个调用的输入和输出的信息,请参阅客户端文档

使用SDK

直到SDK发布,我们将在开发者指南中添加有关使用SDK的信息。您可以打开一个问题并描述您想要做什么来建议指南的附加部分。

获取帮助

许可证

本项目根据Apache-2.0许可证授权。

依赖项

~8–20MB
~281K SLoC