J'ai un bastion réseau accessible au public example.compute-1.amazonaws.com
et une instance de base de données postgres privée àpostgres.example.us-east-1.rds.amazonaws.com:5432
Je peux entrer dans le bastion en utilisant
$ ssh -i key.pem ec2-user@example.compute-1.amazonaws.com
Puis une fois dans le bastion je crée un tunnel ssh avec:
$ ssh -i key.pem -L 5432:postgres.example.us-east-1.rds.amazonaws.com:5432 ec2-user@example.compute-1.amazonaws.com
Je peux ensuite vérifier que le tunnel fonctionne en se connectant à la base de données depuis le bastion en utilisant localhost:
$ psql -p 5432 -h localhost -U postgres
Cependant, je ne peux pas me connecter à la base de données à distance (sans être dans le bastion).
$ psql -p 5432 -h example.compute-1.amazonaws.com -U postgres
psql: could not connect to server: Connection refused
Is the server running on host "example.compute-1.amazonaws.com" () and accepting
TCP/IP connections on port 5432?
J'ai configuré le groupe de sécurité du bastion pour accepter le trafic entrant sur le port 5432.
Suis-je en ssh -L
train d' utiliser correctement? Dois-je l'utiliser en dehors du bastion? Tout conseil serait très apprécié.