Tänk noga innan du gör detta. Om du öppnar portarna, se till att du begränsar IP-numren som kan komma åt den, annars kommer vem som helst att kunna komma åt din databas. Du kan aktivera autentisering i MongoDB, men det är inte särskilt säkert, bara ett användarnamn och lösenord. Du bör inte ha din databas öppen mot internet, det är ingen bra idé.
Ett bättre sätt än att öppna upp portar i EC2-brandväggen är att öppna en SSH-tunnel och vidarebefordra porten, detta säkerställer att bara du kan komma åt databasen, och endast medan SSH-tunneln är aktiv.
Öppna en ny terminal och kör det här kommandot (ersätt användare och värd med den användare du använder när du SSH-ansluter till din server och namnet på servern):
ssh [email protected] -N -L 27017:127.0.0.1:27017
Kommandot kommer att vidarebefordra port 27017 på din dator till samma port på servern. För att ansluta till MongoDB-instansen kör bara mongo
i en terminal (om det inte fungerar, försök mongo --host 127.0.0.1
eller till och med mongo --host 127.0.0.1 --port 27017
).
Om du kör MongoDB på din lokala dator måste du ändra den första porten, eftersom den lokala servern redan använder den. Kör i så fall detta kommando istället:
ssh [email protected] -N -L 27018:127.0.0.1:27017
och anslut sedan till
mongo --port 27018
(möjligen lägger till --host 127.0.0.1
om det inte fungerar).
När du är klar med att arbeta med databasen, avsluta mongo
och tryck ctrl-C i terminalen med SSH-kommandot.