我在 Amazon AWS 上有一个 Virtual Private Cloud (VPC) 实例。在 VPC 内部,我有一个运行数据库的私有实例和一个具有用于访问数据库的前端网页的公共实例。
无法直接从外部登录私有实例,因为它没有任何公共 ip。但是,我可以使用其私有 ip 从公共实例登录到它。
我想在我的 VPC 内创建一个 VPN 网关,这将允许我使用 OpenVPN 或 OpenSwan 等软件 VPN 从外部直接连接到私有实例。
我的问题是——
提前致谢。
我的旧 RDS 实例部署在“经典”中,而不是 VPC 中。
我有一个包含一些 EC2 实例的新 VPC,但我无法从这些 VPC EC2 实例连接到 RDS 实例。
来自 VPC 的安全组未显示在 RDS 安全组配置中,并且允许通过 IP 地址访问也不起作用。
我该怎么做呢?现在,将 RDS 实例移入 VPC 不是一种选择。
我正在尝试启动CloudFormation入门中所述的示例 CloudFormation 模板。
我删除了默认 VPC,添加了新 VPC (10.0.0.0/16),并在其中创建了一个新子网 (10.0.0.0/24)。根据 AWS 文档,我无法将自己的 VPC 设置为默认值,现在无法启动我的 CloudFormation 模板。
我看到这个错误:
根据https://aws.amazon.com/premiumsupport/knowledge-center/cloudformation-cloudformer-default-vpc/,我可以通过描述我的新 VPC 来解决问题,但我不知道为什么这是正确的。
有很多页面建议在 Amazon EC2 上设置 Open VPN Server,但我只需要设置一个客户端(因此任何 Internet 访问都通过 VPN 路由,而不是直接来自 AWS IP)。我可以将 .ovpn 文件传输到它并启动它
openvpn --config client.ovpn
Run Code Online (Sandbox Code Playgroud)
但是一旦我这样做,我就会失去我的 ssh 连接,因此无法对它做任何事情。广泛搜索并发现各种声称绕过某些端口或某些 IP 地址的建议。两者都可以,即我很高兴被限制在某些 IP 上,以便在运行时通过 ssh 进行连接。
但是,这些似乎都不适用于亚马逊环境,例如,请参阅Amazon EC2 上的 OpenVPN 客户端。它是一个新实例,因此如果有帮助,请位于 VPC 中。
在 Amazon AWS 上,我应该加密虚拟私有云中实例之间的敏感流量吗?更具体地说,这种 VPC 中的实例之间的流量是私有的,如虚拟网络中的,还是可以拦截的?
在文档中找不到此信息。
我正在尝试允许 aws 启动我的日志服务,并且我已经添加了日志流和日志组。
当我到达我的 VPC 仪表板时,status我感兴趣的 Flow Log 说:
Access Error. The IAM role for your flow logs does not have sufficient permissions to send logs to the CloudWatch log group.
Run Code Online (Sandbox Code Playgroud)
但是,当我查看与此流日志关联的 IAM 角色时,我发现我的权限与此处指示的自定义策略完全相同 (在该链接中,搜索“在策略文档字段中”以查找我的策略)我在说)。
什么可能阻止我的 IAM 角色现在访问日志?日志流完全空白。谢谢你。
logging network-traffic amazon-web-services amazon-vpc aws-cli
我在 Amazon Web Services 中有一个 VPC,子网为 172.31.0.0/16。我在这个子网中创建了一个 EC2 实例,并为其提供了一个公共弹性 IP。此 VPC 上有一个 Internet 网关。所以,我的路由表如下所示:
172.31.0.0/16 local
0.0.0.0/0 igw-b4ac67d0
Run Code Online (Sandbox Code Playgroud)
为了解决我无法控制的外部服务上的一些 IP 访问问题,我向该 VPC 添加了一个 NAT 网关,以便到单个外部地址 ABCD 的所有流量都将通过 NAT 网关路由。也就是说,我希望路由表看起来像这样:
# GOAL
172.31.0.0/16 local
A.B.C.D/32 nat-451b3be9
0.0.0.0/0 igw-b4ac67d0
Run Code Online (Sandbox Code Playgroud)
但是,尽我所能,当我单击“保存”时,AWS 界面会切换顺序,因此我总是以
# What AWS gives me
172.31.0.0/16 local
0.0.0.0/0 igw-b4ac67d0
A.B.C.D/32 nat-451b3be9
Run Code Online (Sandbox Code Playgroud)
这个路由表看起来很傻:NAT 网关永远不会被使用,我的流量A.B.C.D似乎仍然来自 EC2 实例的弹性 IP。
如何获取路由表 GOAL?
注:外部服务将允许我补充一个单一的IP地址,这将允许访问。如果我只有一个 EC2 实例,我可以简单地向他们提供 EC2 实例的弹性 IP 地址。但是,我想添加多个以相同方式设置的 EC2 实例。因此,NAT 网关。此外,我不能简单地放弃 Internet 网关而只使用 NAT 网关,因为我需要 EC2 实例上的服务可供外部世界访问。
现在Amazon 已将VPC 的IPv6支持扩展到其大部分全球区域,包括 eu-west-1,我正在尝试连接我的实例。不幸的是,我无法让路由工作。
我已按照迁移指南中的步骤操作,即将 IPv6 CIDR 关联到我们的 VPC,将其中的一部分分配给我们的“公共”子网,更新了 VPC 路由表以::/0通过 igw(互联网网关)发送,确保将路由表分配给公共子网,并从控制台将 IPv6 地址分配给一些新的 Ubuntu 16.04 实例。
然后,通过添加到网络设置并重新启动,我将 Ubuntu 配置为通过 DHCPv6 获取分配的地址,如此处所述iface eth0 inet6 dhcp。
当我重新启动实例时,启动需要几分钟的时间,但最终我可以登录并ip a s显示配置的 IPv4 和全局 IPv6 地址。
但是,v6 网络不起作用:
# ping6 www.google.com
connect: Network is unreachable
Run Code Online (Sandbox Code Playgroud)
路由表确实缺少默认路由:
# ip -6 route
2001:DB8:1234:1234:1234:1234:1234:1234 dev eth0 proto kernel metric 256
fe80::/64 dev eth0 proto kernel metric 256 mtu 9001
Run Code Online (Sandbox Code Playgroud)
手动添加默认的 v6 路由,通过 …
我最初有一个由提交到 CodeCommit 存储库触发的简单 CodePipeline 设置,其中一个“Stage”将源代码输出为工件,另一个“Stage”使用 CodeBuild 从该源输出运行一些代码。现在我想在那个 CodeBuild“阶段”中访问 RDS,所以我将我的 RDS 的 VPC 设置添加到我的 CodeBuild 项目中。
问题是现在 CodeBuild 无法再访问 CodeCommit 源。我收到以下错误:
CLIENT_ERROR: RequestError: send request failed caused by: Get https://mypipeline-artifactstorebucket-twlrq7tj45fq.s3.amazonaws.com/MYPipeline-data-pipe/RepoSource/PKGw3xs: dial tcp 52.216.160.35:443: i/o timeout for primary source and source version arn:aws:s3:::mypipeline-artifactstorebucket-twlrq7tj45fq/MYPipeline-data-pipe/RepoSource/PKGw3xs
向 CodeBuild 项目添加 VPC 是否也会删除默认设置?(也许它最初使用的是默认 VPC?)
如何允许 CodeBuild 访问 RDS 和 CodeCommit?
您能否告诉我如何检查 VPC 何时创建?或者如何通过cli查看创建vpc的cloudtrail?
我尝试使用 cloudtrail 并在事件名称中搜索 CreateVpc,但找不到任何内容。
amazon-vpc ×10
aws-cli ×2
openvpn ×2
amazon-ec2 ×1
dhcpv6 ×1
encryption ×1
ipv6 ×1
logging ×1
nat ×1
rds ×1
security ×1
vpn ×1