我已经使用Linux Bastion Host Quick Start上讨论的建议方法设置了VPC。
我还已经在一个私有子网中创建了Redshift集群,并且还创建了其专用安全组,没有规则限制。这是Redshift的入站和出站规则,我正在分配所有流量和端口(0.0.0.0/0)。我什至对公共子网中的公共EC2实例也做同样的事情。
我可以成功地将ssh切换到我的公共堡垒实例,但是从那里我不能远程登录到Redshift端点。
[ec2-user@ip-10-0-141-20 ~]$ telnet ******.redshift.amazonaws.com 5439
Trying 10.0.20.169...
Connected to ******.redshift.amazonaws.com.
Escape character is '^]'.
Connection closed by foreign host.
我不确定我的配置出了什么问题。在Redshift中,我同时禁用了公共访问和VPC路由。
答案 0 :(得分:1)
我认为您的情况是:
一种方法是:
ssh-add keypair.pem
ssh -A ec2-user@BASTION-IP -L 5439:xyz.redshift.amazonaws.com:5439
(这表示:将本地端口5439转发到堡垒,该端口应将流量发送到端口5439上的Redshift集群)
server=localhost
和port=5439
以及您的登录凭据连接到Redshift 如果上述方法无效,请检查以下事项:
0.0.0.0/0
如果仍然有问题,可以通过在堡垒上安装psql
并尝试连接到Redshift来测试Redshift连接。 (Redshift是从PostgreSQL派生的,因此其行为类似)。