У ряда хостинг-провайдеров доступна возможность небезопасного подключения к MongoDB с домашнего или рабочего компьютера. На нашем хостинге в целях безопасности удаленное подключение к MongoDB запрещено.
Но присутствует возможность использовать SSH-туннель до сервера хостинга. Это позволит обеспечить зашифрованное соединение с базой данных MongoDB.
Для удаленной работы с MongoDB можно использовать следующие программы: MongoDB Compass, TablePlus, Robo 3T, Studio 3T и другие.
В данном примере разберем удаленное подключение с помощью MongoDB Compass.
1. Для начала получим ссылку с реквизитами MongoDB в личном кабинете:

2. Далее скопированные реквизиты вставим в поле URL программы MongoDB Compass и в разделе Advanced Connection Options –> General скорректируем значения Host, указав следующие ip-адреса:

3. Теперь необходимо настроить SSH-туннель. Перейдем в раздел Proxy/SSH Tunnel, выберем SSH with Password и пропишем в форму реквизиты SSH, которые были отправлены на электронную почту при создании контейнера:

4. Подключаемся к серверу, нажав кнопку Connect.
Теперь возможно работать с базой данных MongoDB удаленно со своего компьютера.
Если вам нужно, чтобы локальная программа подключалась к базе данных на хостинге, но в программе нет отдельного режима для подключения по ssh-туннелю, то можно с помощью ssh пробросить порт для работы базы данных на локальный компьютер.
Для linux и MacOS выполните команду
ssh -L 127.0.0.1:27017:10.19.3.1:27017 -Nf cXXX@hX.netangels.ru
Для Windows в Powershell выполните команду
ssh -L 127.0.0.1:27017:10.19.3.1:27017 cXXX@hX.netangels.ru
Адрес 127.0.0.1 здесь и далее не является обязательным, можно использовать другой свой локальный IP-адрес. Вместо cXXX нужно будет указать свой номер контейнера. Вместо hX укажите сервер, который в панели управления отображается в настройках контейнера на вкладке SSH:
Для linux и MacOS выполните команду
ssh -L 127.0.0.1:27017:10.19.3.7:27017 -Nf cXXX@hX.netangels.ru
Для Windows в Powershell выполните команду
ssh -L 127.0.0.1:27017:10.19.3.7:27017 cXXX@hX.netangels.ru
Адрес 127.0.0.1 здесь и далее не является обязательным, можно использовать другой свой локальный IP-адрес. Вместо cXXX нужно будет указать свой номер контейнера. Вместо hX укажите сервер, который в панели управления отображается в настройках контейнера на вкладке SSH: