Zastanów się dobrze, zanim to zrobisz. Jeśli otworzysz porty, upewnij się, że ograniczasz numery IP, które mogą uzyskać do nich dostęp, w przeciwnym razie każdy będzie mógł uzyskać dostęp do Twojej bazy danych. Możesz włączyć uwierzytelnianie w MongoDB, ale nie jest to szczególnie bezpieczne, wystarczy nazwa użytkownika i hasło. Nie powinieneś mieć otwartej bazy danych w Internecie, to nie jest dobry pomysł.
Lepszym sposobem niż otwieranie portów w zaporze EC2 jest otwarcie tunelu SSH i przekazanie portu, dzięki czemu tylko Ty możesz uzyskać dostęp do bazy danych i tylko wtedy, gdy tunel SSH jest aktywny.
Otwórz nowy terminal i uruchom to polecenie (zastępując użytkownika i hosta użytkownikiem, którego używasz podczas łączenia się z serwerem i nazwą serwera):
ssh [email protected] -N -L 27017:127.0.0.1:27017
Polecenie przekieruje port 27017 na twoim komputerze do tego samego portu na serwerze. Aby połączyć się z instancją MongoDB, po prostu uruchom mongo
w terminalu (jeśli to nie zadziała, spróbuj mongo --host 127.0.0.1
lub nawet mongo --host 127.0.0.1 --port 27017
).
Jeśli uruchomisz MongoDB na swoim lokalnym komputerze, będziesz musiał zmienić pierwszy port, ponieważ lokalny serwer już z niego korzysta. W takim przypadku uruchom to polecenie:
ssh [email protected] -N -L 27018:127.0.0.1:27017
a następnie połącz się z
mongo --port 27018
(prawdopodobnie dodanie --host 127.0.0.1
jeśli to nie działa).
Po zakończeniu pracy z bazą danych wyjdź z mongo
i naciśnij ctrl-C w terminalu za pomocą polecenia SSH.