У мене є мережевий бастіон, який є загальнодоступним в example.compute-1.amazonaws.com
і приватний екземпляр бази даних postgrespostgres.example.us-east-1.rds.amazonaws.com:5432
Я можу вступити в бастіон за допомогою
$ ssh -i key.pem ec2-user@example.compute-1.amazonaws.com
Потім, коли я перебуваю в бастіоні, я створюю ssh тунель з:
$ ssh -i key.pem -L 5432:postgres.example.us-east-1.rds.amazonaws.com:5432 ec2-user@example.compute-1.amazonaws.com
Потім я можу перевірити, чи працює тунель, підключившись до бази даних з бастіону за допомогою localhost:
$ psql -p 5432 -h localhost -U postgres
Однак я не можу віддалено підключитися до бази даних (не перебуваючи в бастіоні).
$ 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?
Я налаштував групу безпеки бастіону для прийому вхідного трафіку на порт 5432.
Чи ssh -L
правильно я користуюся ? Чи варто використовувати його поза бастіоном? Будь-яка порада буде дуже вдячна.