não é possível conectar-se à instância pública do postgresql rds

17

Eu criei uma instância básica do PostgreSQL RDS de teste em uma VPC que tem uma única sub-rede pública e que deve estar disponível para conexão pela Internet pública. Ele usa o grupo de segurança padrão, que está aberto para a porta 5432. Quando tento conectar, ele falha. Eu devo estar sentindo falta de algo muito direto - mas estou bastante perdido nisso.

Aqui estão as configurações do banco de dados, observe que ele está marcado como Publicly Accessible :

Aquiestãoasconfiguraçõesdogrupodesegurança,observequeeleestátotalmenteaberto(afirmadonasconfiguraçõesdoRDSacimapeladica"autorizada" verde ao lado do ponto de extremidade):

Aquiestáocomandoqueestoutentandousarparaconectar:

psql--host=myinstance.xxxxxxxxxx.us-east-1.rds.amazonaws.com\--port=5432--username=masteruser--password--dbname=testdb

EesteéoresultadoqueestouobtendoaotentarseconectardeumYosemiteMacBookPro(notequeeleestáresolvendoparaumendereçoIP54.*):

psql:couldnotconnecttoserver:OperationtimedoutIstheserverrunningonhost"myinstance.xxxxxxxxxx.us-east-1.rds.amazonaws.com" (54.xxx.xxx.xxx) and accepting
    TCP/IP connections on port 5432?

Eu não tenho nenhum tipo de firewall habilitado e posso me conectar a instâncias públicas do PostgreSQL em outros provedores (por exemplo, Heroku).

Todas as dicas de solução de problemas serão muito bem-vindas, já que estou praticamente perdida aqui.

Atualizar

Por comentário, aqui estão as regras de entrada da ACL para o VPC padrão:

    
por Edward Q. Bridges 03.01.2015 / 17:40

5 respostas

21

O problema era que a regra de entrada no Grupo de segurança especificava um grupo de segurança como a origem. Alterá-lo para um CIDR que incluía meu endereço IP resolveu o problema.

    
por 03.01.2015 / 23:13
6

Estava enfrentando problema semelhante e foi assim que resolvi:

Clique no grupo de segurança da instância do RDS e verifique as regras de entrada. Você pode ver algo assim:

TemquedefinirointervalodeIPparaconteroseuIPouapenasselecionar"Qualquer lugar" na lista suspensa Fonte, para torná-lo acessível a partir do host local ou em qualquer lugar:

    
por 27.10.2017 / 23:43
0

Só queria adicionar minhas descobertas para salvar alguém em algum momento. Essa solução descrita acima funcionou em uma instância dev ec2, mas depois que migrei para um novo servidor, ela parou de funcionar. Descobri que ambas as instâncias do RDS e do EC2 estavam no mesmo VPC, de modo que a instância do RDS não pôde ver o IP público que eu adicionei ao grupo de segurança. Para isso, é necessário adicionar ao grupo de segurança de instâncias do RDS, o ip privado da instância do EC2 que você pode encontrar em detalhes.

    
por 15.02.2017 / 13:16
0

Eu tive um problema semelhante ao me conectar ao postgres. Evento embora eu tivesse acesso público verdadeiro, eu não era capaz de se conectar.

Eu adicionei uma regra de entrada de regra no grupo de segurança e agora ela está funcionando perfeitamente bem.

    
por 28.03.2018 / 20:16
-1

Depois de criar minha instância do Postgres, meu grupo de segurança padrão (rds-launch-wizard) listou apenas meu endereço IP, então tive que adicionar um Type of All Traffic e Source of Anywhere antes que eu pudesse me conectar. Não sou especialista em redes, mas é estranho não poder me conectar com meu próprio endereço IP como uma regra de entrada.

    
por 30.06.2017 / 03:18