Cómo desplegar un clúster seguro de CockroachDB
Recientemente, te guiamos a través del proceso de desplegar un clúster de CockroachDB para satisfacer tus necesidades de NoSQL. Sin embargo, rápidamente te habrás dado cuenta de que no puedes crear usuarios con contraseñas en esa configuración. Aunque puede ser aceptable para fines de prueba, probablemente no quieras desplegar un servidor de base de datos sin contraseña en producción.
![Cómo desplegar un clúster seguro de CockroachDB - Video](https://i.ytimg.com/vi/Aoxf1DrVtbA/hqdefault.jpg)
![Cómo desplegar un clúster seguro de CockroachDB - Seguridad | Imagen 1 Newsmatic Cómo desplegar un clúster seguro de CockroachDB - Seguridad | Imagen 1 Newsmatic](/wp-content/uploads/despliegue-cluster-cockroachdb-modo-seguro-imagen-1.webp)
Ahora quiero mostrarte cómo desplegar CockroachDB en modo seguro. Una vez desplegado de esta manera, podrás asignar contraseñas a los usuarios (lo cual debe considerarse necesario en entornos de producción).
Y, sin más preámbulos, vamos a liberar el poder de un clúster de CockroachDB seguro.
Lo que necesitarás
Al igual que en el tutorial original, necesitarás al menos dos instancias de Ubuntu Server y un usuario con privilegios de sudo. Eso es todo, vamos a ponernos manos a la obra.
Cómo instalar CockroachDB
En caso de que no hayas leído el artículo original, repasemos el proceso de instalación de CockroachDB. Deberás hacer esto en todos tus servidores de clúster. ¿Listo?
![](https://newsmatic.com.ar/wp-content/uploads/proteccion-antivirus-en-linea-mcafee-clinic-lleva-la-seguridad-de-tu-pc-al-siguiente-nivel-150x150.jpg)
Descarga el archivo binario y muévelo con:
curl https://binaries.cockroachdb.com/cockroach-v21.2.8.linux-amd64.tgz | tar -xz && sudo cp -i cockroach-v21.2.8.linux-amd64/cockroach /usr/local/bin/
Crea un nuevo directorio:
sudo mkdir -p /usr/local/lib/cockroach
Copia dos archivos:
sudo cp -i cockroach-v21.2.8.linux-amd64/lib/libgeos.so /usr/local/lib/cockroach/
sudo cp -i cockroach-v21.2.8.linux-amd64/lib/libgeos_c.so /usr/local/lib/cockroach/
![](https://newsmatic.com.ar/wp-content/uploads/como-proteger-tu-computadora-de-los-virus-metodos-y-consejos-150x150.jpg)
Configura el firewall:
sudo ufw allow 8080/tcp
sudo ufw allow 26257/tcp
sudo ufw reload
¡Boom! Instalado. Es hora de desplegar el clúster de forma segura.
Cómo generar certificados
Lo primero que debemos hacer es generar los certificados de seguridad. Antes de hacerlo, creemos un directorio para almacenarlos con:
mkdir certs cockroachdb_certs
A continuación, crearemos el par de claves de la Autoridad de Certificación (CA) con:
![](https://newsmatic.com.ar/wp-content/uploads/defiendete-protege-tu-seguridad-en-linea-contra-amenazas-criticas-150x150.png)
cockroach cert create-ca --certs-dir=certs --ca-key=cockroachdb_certs/ca.key
Ahora, crearemos un par de claves para los nodos con:
cockroach cert create-node SERVER1 $(hostname) --certs-dir=certs --ca-key=cockroachdb_certs/ca.key
Donde SERVER1 es la dirección IP del servidor controlador.
Ahora podemos iniciar el clúster (en el nodo controlador) con el siguiente comando:
cockroach start --certs-dir=certs --store=server1 --listen-addr=SERVER1:26257 --http-addr=localhost:8080 --join=SERVER2:26257,SERVER3:26258,localhost:26259 --background
![](https://newsmatic.com.ar/wp-content/uploads/protege-tus-contrasenas-con-pam-tu-aliado-para-la-seguridad-1-150x150.jpg)
Donde SERVER1 es la dirección IP del servidor principal, SERVER2 es la dirección IP del primer nodo y SERVER3 es la dirección IP del tercer nodo.
A continuación, inicia el servidor en el segundo y tercer nodo con un comando como este:
cockroach start --certs-dir=certs --store=server2 --listen-addr=SERVER2:26258 --http-addr=localhost:8081 --join=SERVER1:26257,SERVER2:26258,SERVER3:26259 \
--background
Donde SERVER1 es la dirección IP del servidor principal, SERVER2 es la dirección IP del primer nodo y SERVER3 es la dirección IP del tercer nodo.
De vuelta en el nodo controlador, inicializa el clúster con:
cockroach init --certs-dir=certs --host=SERVER1:26257
![](https://newsmatic.com.ar/wp-content/uploads/configurando-conexiones-vpn-con-firewalls-imagen-1-150x150.webp)
Donde SERVER1 es la dirección IP del servidor principal.
Cómo crear un usuario con una contraseña
En el nodo controlador, accede a la consola de CockroachDB con:
cockroach sql --certs-dir=certs --host=SERVER1:26257
Donde SERVER1 es la dirección IP del nodo controlador.
Crea un nuevo usuario/contraseña con:
CREATE USER username WITH PASSWORD 'password';
![](https://newsmatic.com.ar/wp-content/uploads/alerta-un-nuevo-gusano-de-linux-esta-propagandose-1-150x150.jpg)
Donde username es un usuario único y password es una contraseña sólida/única.
Si deseas acceder a la consola de administración con un usuario seguro, deberás otorgar derechos de administrador al usuario recién creado con:
GRANT admin To username;
Donde username es el nombre del usuario que acabas de crear.
Salir de la consola con:
\q
![](https://newsmatic.com.ar/wp-content/uploads/cuanto-cuesta-instalar-y-mantener-un-firewall-empresarial-1-150x150.jpg)
Ahora puedes iniciar sesión en la consola web de CockroachDB en http://SERVER1:8080 (donde SERVER1 es la dirección IP del nodo controlador).
Felicidades, acabas de desplegar un clúster de CockroachDB en modo seguro. Ahora puedes administrar tus bases de datos como desees.
En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Seguridad, allí encontraras muchos artículos similares a Cómo desplegar un clúster seguro de CockroachDB , tenemos lo ultimo en tecnología 2023.
Artículos Relacionados