Si has seguido el primer post de esta serie, ya tendrás una cuenta en AWS. Ahora es el momento de darle un barniz de seguridad. Recuerda que lo más importante es la seguridad. Desde el minuto 1 tienes que preocuparte por ella y si no lo haces tú, otros se preocuparán y te podrán hackear. Así que vamos a ver las mejores prácticas para poder tener segura una cuenta en la nube de AWS.
Crear cuenta de admin en AWS
Ya estamos en la pantalla de login recuerda que tenemos que logarnos con el email que hayamos elegido para darnos de alta.
La primera puerta de seguridad que tenemos es un un captcha que te pone AWS cuándo vas a entrar en tu cuenta.
La segunda es tu contraseña recuerda que dimos de alta un MFA
en nuestro dispositivo móvil y tenemos que meter un código cada vez que queramos logarnos en nuestra cuenta. Usando la aplicación que tenemos en el móvil nos
ponemos el código.
Una vez dentro de la cuenta vamos a irnos al servicio de IAM
. Lo primero que vamos a hacer es configurar la policy de los password de nuestros usuarios. Pinchamos en Account Settings
y cambiamos la policy de los password.
Aquí podemos definir la política de nuestros password. Podemos poner el número mínimo de caracteres, podemos definir que se requiera al menos una letra mayúscula, una minúscula, un número o un carácter que no sea alfanumérico.
Además de poder poner que los password que expiren a los 90, 30 o 20 días. También podemos decir que los usuarios puedan cambiar sus propios password y además que no se puedan reutilizar los últimos 5 passwords para mayor seguridad.
En este caso vamos a poner mínimo de 10 caracteres con una mayúscula, una minúscula, al menos un número y al menos uno no alfanumérico. También que cada 90 días expiren sus passwords. Vamos a dejar a los usuarios que puedan cambiar su password.
Le damos a grabar y ya tenemos una política segura definida para nuestros passwords.
Lo siguiente que vamos a hacer es crear un usuario. Normalmente cuando estás trabajando con cuentas de AWS no es bueno usar el usuario root
, es decir el usuario con el que te has dado de alta con el email. Es mejor crear un usuario con permisos de administrador para usarlo en vez del usuario root
, ya que este usuario tiene privilegios especiales que no tiene por ejemplo un usuario administrador.
Vamos a crear un usuario. Le ponemos como nombre admin
. Podemos definir que el usuario tenga acceso a través de la CLI de AWS, que veremos en otro post, y también podemos definir que este usuario tenga acceso a la consola de AWS.
De momento sólo le vamos a dar acceso a la consola de AWS. Debemos definir el password con el que se va a logar el usuario. Podemos dejar que AWS genere un password por nosotros o poner un password nosotros para que luego el usuario lo cambie. En este caso vamos a dejar que sea AWS el que nos dé el password por defecto del usuario. Dejamos marcado Password reset
para que la primera vez que el usuario entre tenga que cambiar ese password.
En los permisos vamos queremos que el usuario sea administrador. Para eso vamos a tener que añadir una policy a este usuario. La policy AdministratorAccess
es la que da acceso de administrador al usuario al que se la estamos dando.
Este sería el resumen de la creación de nuestro usuario. Se va a llamar admin
, el password va a ser auto generado, requiere cambiar el password cuando inicie y va a tener AdministratorAccess
.
Una vez creado el usuario podemos ver su password sólo una vez. Como ves, la password que nos da AWS cumple con la policy
que hemos definido.
Ya tenemos definido nuestro usuario así que lo que debemos hacer ahora es logarnos con él.
Si pinchas en Dashboard
vas a poder ver cuál es la url con la que te puedes logar dentro de tu consola de AWS. Para logarnos en la consola podemos crear un alias a nuestra cuenta desde aquí tambien.
Pinchamos en Customize
y escribimos el alias. Ahora es mucho más sencillo que los usuarios recuerden cuál es la url para logarse. La copiamos, salimos y nos vamos a la url que hemos copiado.
Como verás AWS te pone el alias que hemos definido. También podemos ponerlo nosotros si queremos o también se puede poner aquí el número de cuenta. El password es el que se había generado antes.
La primera vez que este usuario se conecte va a tener que cambiar ese password y definir uno propio. Con esto ya está todo. Tenemos nuestro usuario admin
logado con una nueva contraseña.
Vamos a ver qué es lo que puede hacer. Nos vamos al servicio de IAM
y pinchamos en Users
. Dentro del usuario admin
vamos a ver que tiene una policy
. Esta policy nos muestra todos los servicios a los que tiene acceso este usuario, que son todos los de AWS.
La podemos ver también en formato de JSON
. Como ves aquí tiene acceso Allow
a todos los recursos y todas las acciones. En otro post veremos cómo crear nuestras propias policies
y asignárselas a nuestros usuarios.
Otra de las cosas importantes que hay que hacer una vez que tienes un nuevo usuario es, igual que hicimos con el usuario de root
, asignarle un MFA
. Para eso sólo debemos irnos a Security Credentials
. Pinchamos en Assigned MFA device
en Manage
y hacemos lo mismo que hicimos en el anterior post para añadir un MFA
.
Una vez asignado puedes ver aquí como ya tenemos el MFA
asignado a este usuario.
Y así ya has completado este pequeño tutorial sobre la seguridad en AWS. Recuerda que puedes seguir todas las lecciones de este curso desde esta página.