I have created a one-click droplet with MongoDB. Now I want to set up authentication. I already created users and roles. But I must enable authentication when the process is started and restart the process.
But how exactly is the mongod process started in this one-click app (I don’t want authentication to be disabled if the process needs to be restarted later on)?
I already tried changing the /etc/mongod.conf and rebooting the server (sudo reboot). But it is still possible to login to mongo without specifying a user.
I coud not find anything in the /etc/init.d or in the /etc/systemd/system directories.
This is my mongod.conf:
# mongod.conf # for documentation of all options, see: # http://docs.mongodb.org/manual/reference/configuration-options/ # Where and how to store data. storage: dbPath: /var/lib/mongodb journal: enabled: true # engine: # mmapv1: # wiredTiger: # where to write logging data. systemLog: destination: file logAppend: true path: /var/log/mongodb/mongod.log # network interfaces net: port: 27017 bindIp: 127.0.0.1 #processManagement: security: authorization: enabled #operationProfiling: #replication: #sharding: ## Enterprise-Only Options: #auditLog: #snmp:
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!
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.
According to the manual, the parameter
authorizationneeds to be a string: https://docs.mongodb.com/manual/reference/configuration-options/#security.authorization
So change the config:
And then restart MongoDB:
You can see more in this tutorial: https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-mongodb-on-ubuntu-16-04
You may want to take a look at this post for details on how to setup authentication with a user.
As far as starting, stopping and restarting the service, it’ll be done either via:
In most cases, especially on newer distros,
systemdis used, so the
systemctlcommand would be what you’d use.
Want to learn more? Join the DigitalOcean Community!
Join our DigitalOcean community of over a million developers for free! Get help and share knowledge in Q&A, subscribe to topics of interest, and get courses and tools that will help you grow as a developer and scale your project or business.
Sign up now