Question

How to access droplet using IP address

Posted October 17, 2019 1.7k views
DatabasesDigitalOcean Accounts

I have installed droplet(Ubuntu 18.4) and MongoDb. I can access db via studio 3t using SSH tunnel and it’s working. My PHP based web application is in different server. Now I planning to move MongoDb on droplet and I need to access it using IP address. How can I connect MongoDb using IP address from other server?

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

×
2 answers

Hi @anzalafs,

From your post, I assume you already have active users on your MongoDB installation,correct?

Let’s assume that’s correct, I think you have enabled it auth as well but let’s say you haven’t just for the sake of the answer.

Enable MongoDB Auth

Open your conf

vi /etc/mongod.conf

and add the following lines

security:
    authorization: 'enabled'

This will tell mongodb that whenever it starts up next, it needs to enforce database access control using the roles you have already configured.

By default mongodb is configured to allow connections only from localhost. We need to allow remote connections. In the same config file, go to the network interfaces section and change the bindIp from 127.0.0.1 to 0.0.0.0 which means allow connections from all ip addresses.

# network interfaces
net:
    port: 27017
    bindIp: 0.0.0.0   #default value is 127.0.0.1

Now save, exit the file and restart your MongoDB.

Open up network port

MongoDB uses port number 27017 for all connections by default. So let’s open up that port

ubuntu:~$ sudo iptables -A INPUT -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT
ubuntu:~$ sudo iptables -A OUTPUT  -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT

Test the remote connections

Test the connection like

mongo -u user1 -p user1password <your_server_ip>/sampledb

Regards,
KDSys

Thanks for the reply.

Submit an Answer