Cómo instalar y proteger MongoDB en Debian 11

Cómo instalar y proteger MongoDB en Debian 11

MongoDB es una base de datos distribuida, basada en documentos, de prop√≥sito general y de c√≥digo abierto, dise√Īada para desarrolladores de aplicaciones modernas. Tambi√©n se denomina base de datos NoSQL porque no se basa en una estructura de base de datos relacional tradicional basada en tablas. Almacena datos en formato JSON en lugar del m√©todo de estilo de tabla. Se puede integrar f√°cilmente con varios lenguajes de programaci√≥n. Es utilizado por muchas empresas conocidas, incluidas Facebook, Cisco, Forbes, Adobe, Nokia, etc.

En esta publicación, le mostraremos cómo instalar y asegurar la base de datos MongoDB NoSQL en Debian 11.

requisitos previos

  • Un servidor que ejecuta Debian 11.
  • Una contrase√Īa de root est√° configurada en el servidor.

Agregar repositorio MongoDB

De forma predeterminada, el paquete MongoDB no est√° incluido en el repositorio predeterminado de Debian 11. Por lo tanto, deber√° agregar el repositorio oficial de MongoDB al APT.

Primero, instale las dependencias requeridas usando el siguiente comando:

apt-get install curl apt-transport-https software-properties-common gnupg2 -y

Una vez que todas las dependencias estén instaladas, descarga y agrega la clave GPG con el siguiente comando:

wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add -

A continuación, agregue el repositorio de MongoDB al archivo de lista de fuentes de APT usando el siguiente comando:

echo "deb http://repo.mongodb.org/apt/debian buster/mongodb-org/4.4 main" | tee /etc/apt/sources.list.d/mongodb-org.list

A continuación, actualice el repositorio e instale el servidor MongoDB con el siguiente comando:

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

Después de la instalación exitosa, inicie el servicio MongoDB y habilítelo para que se inicie al reiniciar el sistema:

systemctl start mongod
systemctl enable mongod

Luego, verifique la versión de MongoDB usando el siguiente comando:

mongod --version

Deberías obtener el siguiente resultado:

db version v4.4.9
Build Info: {
    "version": "4.4.9",
    "gitVersion": "b4048e19814bfebac717cf5a880076aa69aba481",
    "openSSLVersion": "OpenSSL 1.1.1k  25 Mar 2021",
    "modules": [],
    "allocator": "tcmalloc",
    "environment": {
        "distmod": "debian10",
        "distarch": "x86_64",
        "target_arch": "x86_64"
    }
}

Habilitar la autenticación de MongoDB

De forma predeterminada, la autenticación no está habilitada en MongoDB. Por razones de seguridad, se recomienda habilitar la autenticación MongoDB.

Para hacerlo, deber√° crear un usuario administrativo para MongoDB.

Primero, conéctese al shell de MongoDB con el siguiente comando:

mongo

Una vez que esté conectado, cree una base de datos llamada admin con el siguiente comando:

> use admin

A continuaci√≥n, cree un usuario administrador y establezca una contrase√Īa:

> db.createUser(
{
user: "madmin",
pwd: "password",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)

Debería ver el siguiente resultado:

Successfully added user: {
	"user" : "madmin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		}
	]
}

A continuación, presione CTRL+D para salir del shell de MongoDB. Luego, edite el archivo de configuración de MongoDB con el siguiente comando:

nano /etc/mongod.conf

Agregue las siguientes líneas para habilitar la autenticación:

security:
 authorization: enabled

Guarde y cierre el archivo, luego reinicie el servicio MongoDB para aplicar los cambios.

systemctl restart mongod

Verificar la conexión MongoDB

En este punto, la autenticaci√≥n de MongoDB est√° habilitada. Ahora, ejecute el siguiente comando para conectar el shell de MongoDB usando el nombre de usuario y la contrase√Īa:

mongo -u madmin -p

Después de la autenticación exitosa, obtendrá el siguiente resultado:

MongoDB shell version v4.4.9
Enter password: 
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("8366d28f-55d3-4471-bd94-331329828181") }
MongoDB server version: 4.4.9
> 

A continuación, cambie la base de datos a administrador y enumere a todos los usuarios con el siguiente comando:

> use admin
> show users

Deberías obtener el siguiente resultado:

{
	"_id" : "admin.madmin",
	"userId" : UUID("26dd5225-7bb6-4a57-96a0-7efc4e1a98ba"),
	"user" : "madmin",
	"db" : "admin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		}
	],
	"mechanisms" : [
		"SCRAM-SHA-1",
		"SCRAM-SHA-256"
	]
}

Desinstalar MongoDB

Si no necesita MongoDB en su sistema, puede desinstalarlo de su sistema.

Primero, detenga el servicio MongoDB con el siguiente comando:

systemctl stop mongod

A continuación, elimine el paquete MongoDB ejecutando el siguiente comando:

apt-get remove mongodb-org --purge

A continuación, elimine los registros y directorios de datos de MongoDB ejecutando el siguiente comando:

rm -rf /var/lib/mongodb

Conclusión

¡Felicidades! ha instalado y asegurado con éxito MongoDB en Debian 11. Ahora puede usar MongoDB con sus aplicaciones web. Para obtener más información, visite el sitio web oficial de MongoDB. documentación.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *