15%

Ahorra 15%<\/span> en todos los servicios de hosting

Pon a prueba tus habilidades y obtén Descuento<\/span> en cualquier plan de hosting

Usa el código:

Skills
Comenzar
18.09.2025

Cómo crear MongoDB en VPS

MongoDB es una base de datos NoSQL popular y de alto rendimiento utilizada para aplicaciones modernas que necesitan modelos de datos flexibles, lecturas/escrituras rápidas y fácil escalabilidad horizontal. Si estás implementando una API, plataforma SaaS, CRM, backend de comercio electrónico o cualquier servicio impulsado por datos, ejecutar MongoDB en un VPS te da control total sobre el rendimiento, la seguridad y los costos.

En esta guía, aprenderás cómo instalar MongoDB Community Edition (última versión soportada) en un VPS Linux utilizando los repositorios oficiales de MongoDB, iniciar y habilitar el servicio, crear usuarios y bases de datos, y aplicar las mejores prácticas de seguridad esenciales (autenticación, enlace seguro de red y reglas de firewall). Los pasos están escritos para implementaciones de estilo producción e incluyen consejos comunes de solución de problemas para que puedas hacer que MongoDB funcione de manera confiable desde el primer día.

Requisitos previos (lista de verificación rápida)

  • Un VPS con acceso root/sudo

  • Sistema operativo de 64 bits (MongoDB 8.0 soporta Debian 12 Bookworm, Ubuntu LTS)

  • Recomendado para producción: lee las notas de producción de MongoDB (sistemas de archivos, memoria, ulimits, etc.)

Actualiza tu servidor primero:

sudo apt-get update && sudo apt-get -y upgrade
sudo apt-get install -y gnupg curl

Importante: no uses el paquete de distribución mongodb (puede entrar en conflicto con mongodb-org).

 Instalar MongoDB en Debian 12 (Bookworm)

Agregar la clave + repositorio oficial

curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc |
sudo gpg --dearmor -o /usr/share/keyrings/mongodb-server-8.0.gpg
echo "deb [signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg] https://repo.mongodb.org/apt/debian bookworm/mongodb-org/8.0 main" |
sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list > /dev/null

Instalar

sudo apt-get update
sudo apt-get install -y mongodb-org

(Estos comandos son de la documentación oficial de instalación de MongoDB para Debian 12.)

Instalar MongoDB en Ubuntu LTS (24.04 / 22.04)

Agregar la clave + repositorio oficial

curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc |
sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg --dearmor

Ubuntu 24.04 (Noble):

echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu noble/mongodb-org/8.0 multiverse" |
sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list

Ubuntu 22.04 (Jammy):

echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/8.0 multiverse" |
sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list

Instalar

sudo apt-get update
sudo apt-get install -y mongodb-org

 Iniciar MongoDB (y solucionar “mongod.service no encontrado”)

sudo systemctl daemon-reload
sudo systemctl start mongod
sudo systemctl enable mongod
sudo systemctl status mongod --no-pager

MongoDB señala específicamente daemon-reload si ves “Unidad mongod.service no encontrada”.

“Crear” tu base de datos + usuarios (flujo recomendado)

Abre la shell localmente en el VPS:

mongosh

Crear un usuario administrador

En mongosh:

use admin
db.createUser({
user: "admin",
pwd: "STRONG_PASSWORD_HERE",
roles: [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ]
})

Crear una base de datos + usuario de aplicación

use myapp
db.createUser({
user: "myapp_user",
pwd: "STRONG_PASSWORD_HERE",
roles: [ { role: "readWrite", db: "myapp" } ]
})

 Asegurar MongoDB (no te saltes esto)

La lista de verificación de seguridad de MongoDB recomienda encarecidamente endurecer antes de exponer cualquier cosa.

A) Mantener MongoDB privado (mejor práctica)

MongoDB advierte que solo se debe enlazar a redes de confianza.
En /etc/mongod.conf, asegúrate de que escuche solo en localhost (o una IP de LAN privada):

net:
bindIp: 127.0.0.1

Reiniciar:

sudo systemctl restart mongod

B) Habilitar autenticación

Edita /etc/mongod.conf:

security:
authorization:enabled

Reiniciar:

sudo systemctl restart mongod

C) Regla de firewall (solo si realmente necesitas acceso remoto)

Evita abrir 27017 al internet público. Si debes permitir acceso, restringe a una sola IP (ejemplo con UFW):

sudo ufw allow from YOUR.PUBLIC.IP.ADDRESS to any port 27017 proto tcp
sudo ufw enable
sudo ufw status

D) Acceso remoto más seguro (túnel SSH)

Desde tu laptop:

ssh -L 27017:127.0.0.1:27017 root@YOUR_VPS_IP

Luego conéctate localmente:

mongosh "mongodb://myapp_user:PASS@127.0.0.1:27017/myapp?authSource=myapp"

 Copia de seguridad (simple y confiable)

MongoDB proporciona mongodump para copias de seguridad lógicas.

Ejemplo:

mongodump --archive=/root/mongo-backup.archive --gzip

Restaurar:

mongorestore --archive=/root/mongo-backup.archive --gzip

 Comprobaciones comunes (cuando algo falla)

sudo journalctl -u mongod --no-pager -n 200
sudo ss -lntp | grep 27017
mongod --version
15%

Ahorra 15%<\/span> en todos los servicios de hosting

Pon a prueba tus habilidades y obtén Descuento<\/span> en cualquier plan de hosting

Usa el código:

Skills
Comenzar