В документации, которую вы связали, используется AWS стек CloudFormation для развертывания Бастиона. Я не уверен, какую именно конфигурацию он использует, поэтому мой ответ будет обобщенным c, а не применим к этой конкретной c ситуации.
Обычная конфигурация:
- База данных в частном su bnet
- Сервер Bastion (экземпляр EC2) в общедоступном c su bnet
- Установлено соединение с Bastion, которое затем позволяет подключиться к базе данных
Существует несколько способов подключения к базе данных через Бастион. Вот один из них, который я использую:
ssh -i key.pem ec2-user@BASTION-IP -L 3306:DATABASE-DNS-NAME:3306
Он сообщает соединению S SH для пересылки любого трафика c, отправленного на мой локальный порт 3306 (первый номер), через соединение S SH, но затем отправьте его на DATABASE-DNS-NAME:3306
(сервер базы данных). Любой ответ из базы данных будет возвращаться таким же образом.
Затем, когда я sh обращусь к базе данных с моего компьютера, я ссылаюсь:
localhost:3306
Это Появляется , что база данных находится на моем собственном компьютере, но трафик c фактически отправляется через S SH в Бастион, затем в базу данных.
Существуют более новые и лучшие способы делая эту переадресацию, которую другие люди (надеюсь) могут добавить в качестве комментария или другого ответа, но именно так я делаю свои соединения через Бастион.
Забавный факт: A Бастион - это часть торчащей стены замка, позволяющая защитникам стрелять по атакующим, пытающимся взобраться на стену. Аналогичным образом, Bastion Server торчит в Inte rnet, вне защищенной части сети.