使用接口端点 (AWS PrivateLink) 访问 Amazon Lightsail
您可以使用 AWS PrivateLink 在您的 VPC 和 Amazon Lightsail 之间创建私有连接。您可以像在 VPC 中一样访问 Amazon Lightsail,而无需使用互联网网关、NAT 设备、VPN 连接或 Direct Connect 连接。VPC 中的实例不需要公有 IP 地址即可访问 Amazon Lightsail。
您可以通过创建由 AWS PrivateLink 提供支持的接口端点来建立此私有连接。我们将在您为接口端点启用的每个子网中创建一个端点网络接口。这些是请求者托管的网络接口,用作发往 Amazon Lightsail 的流量的入口点。
有关更多信息,请参阅《AWS PrivateLink 指南》中的通过 AWS PrivateLink 访问 AWS 服务。
Amazon Lightsail 的注意事项
在为 Amazon Lightsail 设置接口端点之前,您必须先创建虚拟私有云(VPC)。有关更多信息,请参阅《Amazon Virtual Private Cloud 用户指南》中的创建 VPC。此外,请查看《AWS PrivateLink 指南》中的注意事项。
Amazon Lightsail 支持通过接口端点调用其所有 API 操作。有关适用于 Lightsail 的 API 操作的更多信息,请参阅 Amazon Lightsail API 参考。
为 Amazon Lightsail 创建接口端点
您可以使用 Amazon VPC 控制台或 AWS Command Line Interface (AWS CLI) 为 Amazon Lightsail 创建接口端点。有关更多信息,请参阅《AWS PrivateLink 指南》中的创建接口端点。
使用以下服务名称为 Amazon Lightsail 创建接口端点:
com.amazonaws.region.lightsail
如果为接口端点启用私有 DNS,则可使用其默认区域 DNS 名称向 Amazon Lightsail 发出 API 请求。例如 lightsail.us-east-1.amazonaws.com。有关您可以使用的区域代码,请参阅 Lightsail 的区域和可用区。
AWS CLI 示例
要使用接口端点来访问 Lightsail,请在 AWS CLI 命令中使用 --region 和 --endpoint-url 参数。有关您可以在 Lightsail 中执行的操作的列表,请参阅 Amazon Lightsail API 参考中的操作。
在以下示例中,将 AWS 区域 和 VPC 端点 ID us-east-1 的 DNS 名称替换为您自己的信息。vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com
示例:使用端点 URL 来列出 Lightsail 实例
以下示例列出了使用接口端点的实例。
aws lightsail get-instances --regionus-east-1--endpoint-url https://vpce-1a2b3c4d-5e6f.lightsail.us-east-1.vpce.amazonaws.com
示例:使用端点 URL 来列出 Lightsail 磁盘
以下示例列出了使用接口端点的磁盘。
aws lightsail get-disks --regionus-east-1--endpoint-url https://vpce-1a2b3c4d-5e6f.lightsail.us-east-1.vpce.amazonaws.com
为接口端点创建端点策略
端点策略是一种 IAM 资源,您可以将其附加到接口端点。默认端点策略允许通过接口端点完全访问 Amazon Lightsail API。要控制允许从 VPC 访问 Amazon Lightsail的权限,请将自定义端点策略附加到接口端点。
端点策略指定以下信息:
-
可执行操作的主体(AWS 账户、IAM 用户和 IAM 角色)。
-
可执行的操作。
-
可对其执行操作的资源。
有关更多信息,请参阅《AWS PrivateLink 指南》中的使用端点策略控制对服务的访问权限。
示例:Amazon Lightsail 操作的 VPC 端点策略
以下是自定义端点策略的示例。当您将此策略附加到接口端点时,它将拒绝所有人通过该端点删除 Lightsail 中的数据块存储磁盘的权限,同时授予所有人执行所有其他 Lightsail 操作的权限。
{ "Statement": [ { "Action": "lightsail:*", "Effect": "Allow", "Principal": "*", "Resource": "*" }, { "Action": "lightsail:DeleteDisk", "Effect": "Deny", "Principal": "*", "Resource": "*" } ] }