如何从本地连接到专用端点?
How can I connect to private endpoint from local?
我在 AWS API 网关中创建了一个私有端点以将其设为私有。只有私有 vpc 中的资源可以访问此端点。这是我的设计,效果很好。问题是它让我有点难以从我的本地计算机连接它。
作为解决方法,我可以在同一 VPC 中启动一个 EC2 实例,然后我可以连接到此 EC2 以访问端点。但这并不容易做到。我想从本地 运行 邮递员连接到 API 端点。我正在寻找一种更好的方法来允许我从本地访问它。
谁能帮我解决这个问题?
方法不多。一个是 VPN,但我个人使用 postman
的 proxy
功能。我所做的有五个阶段。
1。堡垒主机 - 亚马逊 Linux 2
ssh
端口在 public 子网中打开。
2。 ssh 动态隧道
ssh -D 1080 -C -q -N -oStrictHostKeyChecking=no -l ec2-user <public-ip-of-your-bastion> -v
该命令将创建 SOCKS5 从您的本地工作站到端口 1080 上的堡垒的代理。
3。 HTTP -> SOCKS5 转换
由于postman不支持SOCK5,需要进行转换。我使用 http-proxy-to-socks:
hpts -s 127.0.0.1:1080 -p 8080
这将在端口 8080 上创建 HTTP 代理,转发到端口 1080 上的 SOCKS5 代理。
4。在邮递员上设置 HTTP 代理
5。从 postman
查询 private API
使用其 https 端点 从本地工作站查询私有 API,就像它是 public API 一样。
我在 AWS API 网关中创建了一个私有端点以将其设为私有。只有私有 vpc 中的资源可以访问此端点。这是我的设计,效果很好。问题是它让我有点难以从我的本地计算机连接它。
作为解决方法,我可以在同一 VPC 中启动一个 EC2 实例,然后我可以连接到此 EC2 以访问端点。但这并不容易做到。我想从本地 运行 邮递员连接到 API 端点。我正在寻找一种更好的方法来允许我从本地访问它。
谁能帮我解决这个问题?
方法不多。一个是 VPN,但我个人使用 postman
的 proxy
功能。我所做的有五个阶段。
1。堡垒主机 - 亚马逊 Linux 2
ssh
端口在 public 子网中打开。
2。 ssh 动态隧道
ssh -D 1080 -C -q -N -oStrictHostKeyChecking=no -l ec2-user <public-ip-of-your-bastion> -v
该命令将创建 SOCKS5 从您的本地工作站到端口 1080 上的堡垒的代理。
3。 HTTP -> SOCKS5 转换
由于postman不支持SOCK5,需要进行转换。我使用 http-proxy-to-socks:
hpts -s 127.0.0.1:1080 -p 8080
这将在端口 8080 上创建 HTTP 代理,转发到端口 1080 上的 SOCKS5 代理。
4。在邮递员上设置 HTTP 代理
5。从 postman
查询 private API使用其 https 端点 从本地工作站查询私有 API,就像它是 public API 一样。