Contenidos
Instalación, configuración y uso básico de la cli de AWS
   Sep 29, 2021     2 min lectura

Si has trabajado alguna vez con buckets en AWS (S3) sabrás que puedes acceder a ellos o bien a través del navegador web o bien a través de la interfaz por linea de comandos (cli). Normalmente, dado que es más visual, solemos usar el navegador web para interactuar con nuestro bucket, el problema es que no siempre tenemos acceso, y a veces tenemos que usar la cli tirando de las claves privadas de éste.

Para poder hacer esto, lo primero que tenemos que hacer es instalar la cli. Podemos encontrar toda la información en el siguiente enlace:

https://aws.amazon.com/es/cli/

Para confirmar que tenemos la cli instalada, escribimos el siguiente comando en nuestra terminal:

aws --version

Si todo está bien, nos indicará la versión que tenemos instalada.

El siguiente paso para poder usar la cli es configurar las credenciales del bucket al que intentaremos acceder. Para ello, ejecutamos el comando:

aws configure

A continuación, a medida que la línea de comandos nos pida las credenciales e información que necesita, se las iremos poniendo. Éste es el orden:

Ejemplo:

  • AWS Access Key ID [None]: AKIAI44QH8DHBEXAMPLE
  • AWS Secret Access Key [None]: je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY
  • Default region name [None]: eu-west-1
  • Default output format [None]: json

Con todo esto, se crearán las credenciales para el usuario por defecto, pero si en cambio, queremos crear diferentes perfiles, porque por ejemplo queremos acceder a diferentes buckets, que requieren diferentes credenciales, entonces, cuando escribamos el comando de configuración añadiremos también la flag - -profile, indicándole el nombre del perfil en concreto para el que crear esa configuración:

aws configure --profile otroperfil

Si queremos asegurarnos o revisar si las credenciales están bien configuradas, desde la terminal podemos acceder al directorio (oculto) que se habrá creado en nuestro directorio raíz. Para poder verlo escribiremos:

cd .aws

Veremos que contendrá dos ficheros diferentes: config y credentials.

En el fichero config tendremos primero entre corchetes el perfil al que hacen referencia las siguientes 2 lineas, que contienen la region y el output por defecto. Por ejemplo:

  • [profile default]
  • region = eu-west-1
  • output = json

En el fichero credentials tendremos también entre corchetes el perfil al que hacen referencia las siguientes 2 lineas, que contienen las claves. Por ejemplo:

  • [default]
  • aws_access_key_id = AKIAI44QH8DHBEXAMPLE
  • aws_secret_access_key = je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY

Una vez finalizada la configuración podemos acceder al bucket en cuestión.

Para listar los directorios que tenemos en el bucket ejecutaremos el siguiente comando en la cli, donde bucketname será el nombre del bucket al que queremos acceder:

aws s3 ls bucketname

Si no sabemos el nombre, podemos simplemente obviar el nombre del bucket en el comando y nos listará todos los buckets a los que tenemos acceso.

Para listar de forma recursiva todo lo que el bucket contiene ejecutaremos el siguiente comando en la cli, donde bucketname será el nombre del bucket al que queremos acceder:

aws s3 ls --recursive --human-readable bucketname

Si tienes más de un perfil configurado, para especificar con qué perfil quieres usar cada comando, tendrás que añadirle al final la flag - -profile con el nombre del perfil.

Y hasta aquí conceptos básicos para trabajar con la cli de AWS.

Si te interesa saber más, la documentación de AWS te puede ayudar.