By anzalafs
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?
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
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
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.