Cómo instalar y utilizar Vault para gestionar secretos en tu código de desarrollo
Si eres un desarrollador, debes lidiar con secretos. Los secretos pueden ser cualquier tipo de contraseña, frase de contraseña, clave de encriptación o clave de API que utilizas en tu código para conectarte con otras aplicaciones o servicios. El problema es que, cuando dejas los secretos en tu código, corres el riesgo de ser hackeado. Esto puede llevar a problemas catastróficos, especialmente cuando esos secretos permitirían a un hacker acceder a la red de tu empresa o a través de las diversas API que utilizas.
Desafortunadamente, este es un problema generalizado. De hecho, en 2019 se descubrió que cientos de miles de secretos se dejaban en el código de GitHub. Este es un fallo por parte de los desarrolladores que se puede solucionar fácilmente.
Una forma de evitarlo es utilizando una herramienta como HashiCorp Vault, que es una herramienta de línea de comandos para gestionar secretos. Vault proporciona una API que da acceso a los secretos basados en políticas, y encripta los datos utilizando AES de 256 bits con GCM.
Quiero mostrarte cómo instalar y empezar a usar Vault.
Lo que necesitarás
Vault se puede instalar en Linux, macOS y Windows. Voy a demostrar la instalación de Vault en Ubuntu 20.04. Para ello, necesitarás un usuario con privilegios de sudo.
Cómo instalar Vault
Para instalar Vault, primero debes instalar la clave GPG de HashiCorp con el siguiente comando:
Protección antivirus en línea: McAfee Clinic lleva la seguridad de tu PC al siguiente nivelcurl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
Una vez instalada la clave, añade el repositorio de Linux de HashiCorp con el siguiente comando:
sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
Actualiza apt con el siguiente comando:
sudo apt-get update
Instala Vault ejecutando el siguiente comando:
Cómo proteger tu computadora de los virus: métodos y consejossudo apt-get install vault -y
Cómo iniciar el servidor Vault
A continuación, debemos iniciar el servidor Vault. Para este tutorial, iniciaremos el servidor Vault en modo de desarrollo para que puedas interactuar con él.
Nota: No debes ejecutar el servidor Vault en modo de desarrollo en una máquina de producción porque almacena todos sus datos en memoria (aunque encriptados) y se inicia sin sellar con una única clave. Haz esto en tu máquina de desarrollo en lugar de en un servidor.
Para ejecutar el servidor en modo de desarrollo, utiliza el siguiente comando:
vault server -dev
Cuando ejecutes el servidor en modo de desarrollo, se te mostrará una clave de desactivación y un Token de Root. Asegúrate de copiar ambos valores. También se te mostrará una línea que empieza con export VAULT_ADDR. Debes copiar toda esa línea también.
¡Defiéndete! Protege tu seguridad en línea contra amenazas críticasInicia sesión en una nueva ventana (mientras dejas el servidor en ejecución) y ejecuta el comando export VAULT_ADDR, que se verá así:
export VAULT_ADDR='http://127.0.0.1:8200'
En esa misma ventana, establece el valor de VAULT_TOKEN con el siguiente comando:
export VAULT_TOKEN="valor_token"
Donde valor_token es el Token de Root que has copiado anteriormente.
Verifica que el servidor esté en ejecución con el siguiente comando:
Protege tus contraseñas con PAM: Tu aliado para la seguridadvault status
Deberías ver una salida que indica que el servidor Vault está en ejecución (Figura A).
Figura A
Cómo almacenar un secreto en el servidor Vault
Con el servidor Vault en ejecución, ahora podemos almacenar nuestro primer secreto. Crearemos un par de secreto password=P@$$W0RD en la ruta secret/test. Debes empezar tu ruta con secrets/, de lo contrario no funcionará. Para crear este secreto, el comando sería:
vault kv put secret/test password=P@$$W0RD
Tu secreto ahora está almacenado y Vault te mostrará la hora de creación (Figura B).
Cómo configurar un servidor VPN para hacer conexiones a través de firewallsFigura B
Cómo recuperar un secreto
Ahora que hemos almacenado un secreto, ¿cómo lo recuperamos? Es fácil, ejecuta el siguiente comando:
vault kv get secret/test
Vault mostrará el secreto que acabamos de añadir (Figura C).
Figura C
Para eliminar nuestro secreto de Vault, el comando sería:
¡Alerta! Un nuevo gusano de Linux está propagándosevault kv delete secret/test
Y eso es todo. Has instalado Vault y lo has utilizado para almacenar, mostrar y eliminar tu primer secreto. En la próxima ocasión, trabajaremos con la característica del motor de secretos de Vault, que se comporta de manera similar a un sistema de archivos virtual y permite que Vault interactúe con otros sistemas.
Suscríbete al canal de YouTube How To Make Tech Work de Newsmatic para recibir los últimos consejos tecnológicos para profesionales de empresas por Jack Wallen.
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 instalar y utilizar Vault para gestionar secretos en tu código de desarrollo , tenemos lo ultimo en tecnología 2023.
Artículos Relacionados