Instalación y configuración de AWS CLI en Linux
☁️ INSTALACIÓN Y CONFIGURACIÓN DE AWS CLI EN LINUX
☁️ Introducción
En este artículo vamos a aprender a instalar y configurar AWS Command Line Interface (AWS CLI) en un sistema Linux.
AWS CLI es una herramienta que permite interactuar con los servicios de Amazon Web Services (AWS) directamente desde la terminal. Gracias a ella podemos administrar recursos de AWS, consultar información de nuestra cuenta y trabajar con servicios como Amazon S3, EC2, IAM y muchos otros sin necesidad de utilizar constantemente la consola web de AWS.
La utilización de AWS CLI es especialmente importante para quienes están aprendiendo Cloud Computing, DevOps, Ciberseguridad y automatización, ya que permite ejecutar tareas mediante comandos y posteriormente integrarlas en scripts, pipelines de CI/CD y procesos automatizados.
📋 En este procedimiento realizaremos:
- Instalar AWS CLI en Linux.
- Comprobar que la instalación fue exitosa.
- Configurar las credenciales de AWS.
- Establecer una región predeterminada.
- Configurar el formato de salida.
- Verificar nuestra identidad dentro de AWS.
- Aplicar buenas prácticas básicas de seguridad para las credenciales.
1️⃣ Instalación de AWS CLI
Una vez descargado y preparado el instalador de AWS CLI, debemos dirigirnos desde la terminal al directorio donde se encuentra el archivo de instalación.
Para iniciar la instalación utilizamos:
sudo ./aws/install
¿Qué hace este comando?
Este comando ejecuta el instalador de AWS Command Line Interface utilizando privilegios administrativos.
La palabra sudo permite ejecutar el proceso con permisos
de administrador, mientras que:
./aws/install
indica que queremos ejecutar el instalador ubicado en el directorio actual.
Si la instalación se realiza correctamente, AWS CLI mostrará un mensaje similar a:
You can now run: /usr/local/bin/aws --version
Esto significa que AWS CLI ha sido instalada y que podemos comenzar a utilizarla desde la terminal.
2️⃣ Comprobar la instalación
Después de instalar AWS CLI, es recomendable verificar que el sistema
puede encontrar correctamente el comando aws.
Para hacerlo ejecutamos:
aws --version
También podemos utilizar directamente la ruta donde se instaló el ejecutable:
/usr/local/bin/aws --version
El resultado debería mostrar información relacionada con la versión instalada, por ejemplo:
aws-cli/2.x.x Python/3.x.x Linux/x86_64
La versión exacta puede variar dependiendo de cuándo se realice la instalación.
🔎 ¿Qué estamos comprobando?
- AWS CLI está instalada.
- El ejecutable
awsestá disponible. - El sistema puede ejecutar AWS CLI.
- Podemos comenzar con la configuración de nuestra cuenta.
3️⃣ Configuración de las credenciales de AWS
Una vez instalada AWS CLI, necesitamos configurar las credenciales que utilizaremos para autenticarnos en nuestra cuenta de AWS.
Para comenzar ejecutamos:
aws configure
El sistema nos solicitará varios datos relacionados con nuestra cuenta.
AWS Access Key ID [None]:
AWS Secret Access Key [None]:
Default region name [None]:
Default output format [None]:
En este ejemplo utilizaremos las credenciales del usuario IAM:
jesus-admin
4️⃣ Introducir el Access Key ID
Cuando AWS CLI solicite:
AWS Access Key ID [None]:
debemos introducir el Access Key ID asociado al usuario IAM.
Si hemos creado las credenciales mediante AWS IAM y descargamos el archivo CSV proporcionado por AWS, podemos encontrar allí nuestro Access Key ID.
Un Access Key ID suele tener un formato similar a:
AKIA...
⚠️ Importante
El Access Key ID no debe publicarse junto con su Secret Access Key.
Aunque el Access Key ID por sí solo no proporciona acceso completo a la cuenta, debe tratarse como información sensible, especialmente cuando se utiliza junto con su clave secreta.
5️⃣ Introducir el Secret Access Key
A continuación, AWS CLI solicitará:
AWS Secret Access Key [None]:
Aquí debemos introducir la Secret Access Key correspondiente al Access Key ID anterior.
Esta clave es especialmente sensible.
🚨 Nunca debemos publicarla en:
- GitHub.
- Blogs.
- Capturas de pantalla.
- Videos.
- Redes sociales.
- Archivos públicos.
- Repositorios de código.
Tampoco debemos introducir claves de AWS directamente dentro de nuestros programas o scripts si podemos utilizar mecanismos más seguros de autenticación.
6️⃣ Configurar la región predeterminada
AWS CLI preguntará:
Default region name [None]:
En nuestro caso utilizaremos:
us-east-1
Esta región corresponde a US East (N. Virginia).
La región predeterminada permite que AWS CLI sepa en qué región queremos trabajar cuando un comando no especifica explícitamente otra.
Por ejemplo:
aws ec2 describe-instances
7️⃣ Configurar el formato de salida
A continuación aparecerá:
Default output format [None]:
Podemos utilizar:
json
JSON es un formato muy utilizado para representar información estructurada y resulta especialmente práctico cuando trabajamos con AWS CLI, automatización y scripts.
{
"UserId": "...",
"Account": "...",
"Arn": "arn:aws:iam::123456789012:user/jesus-admin"
}
8️⃣ Verificar la identidad autenticada
Una vez finalizada la configuración, debemos comprobar que AWS CLI puede comunicarse correctamente con nuestra cuenta de AWS.
Para ello utilizamos:
aws sts get-caller-identity
Este comando pertenece al servicio AWS Security Token Service (AWS STS) y permite conocer la identidad con la que estamos autenticados actualmente.
{
"UserId": "...",
"Account": "123456789012",
"Arn": "arn:aws:iam::123456789012:user/jesus-admin"
}
9️⃣ ¿Qué información obtenemos?
UserId
Identifica al usuario o identidad que está realizando la solicitud.
Account
Representa el ID de la cuenta de AWS a la que estamos conectados.
Arn
El ARN, o Amazon Resource Name, identifica de manera única el recurso o identidad dentro de AWS.
arn:aws:iam::123456789012:user/jesus-admin
Esto nos permite comprobar que estamos utilizando el usuario IAM esperado.
🔟 Comprobación final
aws sts get-caller-identity
Después podemos confirmar:
- ✓ AWS CLI está instalada correctamente.
- ✓ AWS CLI puede ejecutarse desde la terminal.
- ✓ Las credenciales configuradas son válidas.
- ✓ La autenticación con AWS funciona correctamente.
- ✓ Estamos utilizando el usuario IAM esperado.
- ✓ Estamos trabajando con la cuenta de AWS correcta.
- ✓ La región y el formato de salida fueron configurados.
Este paso es muy importante porque evita comenzar a trabajar con recursos de AWS sin saber exactamente con qué cuenta o identidad estamos autenticados.
1️⃣1️⃣ Seguridad de las credenciales AWS
La configuración de AWS CLI no termina simplemente con conseguir que los comandos funcionen.
Uno de los aspectos más importantes al trabajar con AWS es mantener una correcta seguridad de IAM (Identity and Access Management).
🚨 Nunca publiques:
AWS Access Key ID
AWS Secret Access Key
Tampoco debemos subir archivos de credenciales a repositorios públicos de GitHub.
[default]
aws_access_key_id = AKIAxxxxxxxxxxxx
aws_secret_access_key = xxxxxxxxxxxxxxxxxxxxxxxxx
Una clave expuesta puede ser utilizada por terceros para intentar acceder a recursos de nuestra cuenta y, dependiendo de los permisos asociados, podría generar problemas importantes de seguridad e incluso cargos inesperados.
1️⃣2️⃣ Activar MFA en IAM
Otra medida de seguridad fundamental es activar MFA (Multi-Factor Authentication).
MFA agrega un segundo factor de autenticación además de la contraseña.
En términos sencillos, incluso si alguien consigue conocer nuestra contraseña, necesitaría también el segundo factor para completar la autenticación.
🔐 Como buena práctica de seguridad, debemos revisar la configuración de IAM y habilitar MFA en las identidades que lo requieran.
La seguridad de nuestra cuenta AWS debe considerarse parte fundamental del proceso y no algo que debemos dejar para después.
1️⃣3️⃣ Buenas prácticas adicionales
🔐 Utilizar el principio de mínimo privilegio
No debemos otorgar permisos administrativos a todos los usuarios. Cada identidad debería disponer únicamente de los permisos necesarios para realizar sus funciones.
🔑 Proteger las Access Keys
Las claves de acceso no deben almacenarse directamente dentro del código fuente.
ACCESS_KEY = "AKIAxxxxxxxx"
SECRET_KEY = "xxxxxxxxxxxx"
🌐 Tener cuidado con repositorios públicos
Antes de realizar:
git add .
git commit -m "configuración AWS"
git push
debemos asegurarnos de no estar incluyendo archivos con credenciales.
Una buena práctica es utilizar .gitignore y evitar subir
archivos sensibles.
🛡️ Revisar periódicamente IAM
Es recomendable revisar:
- Usuarios.
- Grupos.
- Roles.
- Políticas.
- Access Keys.
- MFA.
- Permisos asignados.
🚀 Conclusión
En este laboratorio realizamos la instalación y configuración inicial de AWS CLI en Linux.
Comenzamos instalando AWS CLI mediante:
sudo ./aws/install
Posteriormente verificamos la instalación utilizando:
aws --version
Después configuramos las credenciales mediante:
aws configure
También establecimos la región:
us-east-1
y configuramos JSON como formato de salida.
Finalmente utilizamos:
aws sts get-caller-identity
para comprobar que la autenticación funcionaba correctamente y verificar la identidad con la que estamos trabajando.
🔐 Sin embargo, una parte fundamental de este proceso es la seguridad.
Las credenciales de AWS deben protegerse cuidadosamente y debemos implementar medidas como MFA, mínimo privilegio y una correcta administración de IAM.
Este procedimiento constituye una de las bases para comenzar a trabajar con AWS desde Linux y será especialmente útil para futuros laboratorios relacionados con EC2, S3, IAM, VPC, CloudWatch, automatización, DevOps y Cloud Computing.
☁️ ¿Qué sigue después?
Una vez que AWS CLI está instalada y configurada correctamente, podemos comenzar a interactuar con diferentes servicios de AWS desde nuestra terminal.
Algunos de los siguientes pasos pueden ser:
AWS IAM
↓
Amazon S3
↓
Amazon EC2
↓
Amazon VPC
↓
AWS CloudWatch
↓
Automatización y DevOps
De esta manera, pasamos de simplemente utilizar la consola web de AWS a administrar infraestructura y servicios mediante la línea de comandos, una habilidad fundamental para cualquier persona que quiera desarrollarse profesionalmente en Cloud Computing, DevOps o Ciberseguridad.
🖥️ REGRESAR AL INICIO
INICIO ➡️
Comentarios
Publicar un comentario