LINUX

Explicación del archivo / etc / shadow en Linux

En este tutorial, entenderemos cómo se formateó el archivo / etc / shadow y para qué se usa. El archivo / etc / shadow puede ser de solo lectura por el usuario del sistema ‘root’.

En Linux, cuando crea un usuario (utilizando el comando useradd), la información de la cuenta, como el nombre de usuario, UID, GID, etc., se almacena en un archivo del sistema / etc / passwd y la información de la cuenta segura, como la contraseña cifrada, la última modificación, la fecha de caducidad, etc. almacenado en otro archivo llamado / etc / shadow.

Cada usuario del sistema tendrá una entrada en el archivo / etc / shadow. Hay 8 campos por línea, cada uno separado por «dos puntos:». Una entrada de muestra es la siguiente.

test:$1$CQoPk7Zh$370xDLmeGD9m4aF/ciIlC.:14425:0:99999:7:::

Formato de archivo / etc / shadow

Originalmente, la contraseña cifrada se almacenaba en /etc/passwd que tenía que ser legible en todo el mundo para que el sistema pudiera asignar los ID de usuario a los nombres de usuario, y para que los usuarios pudieran encontrar información sobre los demás y luego la gente se diera cuenta de que se trataba de un problema de seguridad. Entonces un nuevo archivo /etc/shadow fue creado para almacenar la contraseña encriptada que es legible solo por root y también contiene otra información que el /etc/passwd El archivo no se admite en relación con la cuenta y la contraseña del usuario, por ejemplo, cuándo se cambió la contraseña por última vez y cuándo caducará. Este archivo oculta los hash a los usuarios normales del sistema y los mantiene disponibles para fines de autenticación de usuarios. Mira abajo

$ cat /etc/shadow
cat: /etc/shadow: Permission denied

Puede ver que no podemos ver el contenido del archivo como usuario normal. Necesita tener privilegios para ver su contenido. Como /etc/passwd archivo, también contiene algunas líneas y usa dos puntos (:) para separar los campos donde cada línea representa a un usuario específico.

# cat /etc/shadow
root:$6$Q0FVxjNp$ZS7ilmu2ILfZApk1mJz4f48X6m:17262:0:14600:14::: 
bin:*:17110:0:99999:7:::
daemon:*:17110:0:99999:7:::
linoadmin:!!:17289:0:99999:7:::

/etc/shadow El archivo tiene nueve campos que se pueden representar como se muestra a continuación.

archivo de sombra linux

A continuación los detalles de cada campo:

  • Nombre de usuario o inicio de sesión: Este primer campo denota el nombre de usuario que debe usarse al iniciar sesión en el sistema.
  • Contraseña: El segundo campo almacena la contraseña en formato cifrado. la $ xx $ inicial$ 6 $ para el ejemplo anterior) justo después del primer campo (raíz:) indica el tipo de cifrado. Como se señaló anteriormente, el asterisco * significa que esta cuenta no se puede utilizar para iniciar sesión y el !! significa que el usuario no tiene contraseña, por lo que ha sido creado sin contraseña.
  • fecha del último cambio de contraseña (último cambio): El tercer campo indica la fecha del último cambio de contraseña, expresada como el número de días desde el 1 de enero de 1970. El valor 0 significa que el usuario debe cambiar su contraseña la próxima vez que inicie sesión en el sistema.
  • Días mínimos: Este cuarto campo almacena el número mínimo de días después de los cuales un usuario puede cambiar su contraseña. No podrá cambiar la contraseña antes de eso.
  • Días máximos: Este quinto campo indica el número máximo de días que la contraseña es válida. Después de eso, el usuario se ve obligado a cambiar su contraseña.
  • Período de advertencia de la contraseña: El sexto campo indica el número de días antes de los cuales el usuario recibirá una notificación de advertencia sobre la caducidad de la contraseña y debe cambiarse.
  • Periodo de inactividad: El séptimo campo indica el número de días después de la expiración de la contraseña después de los cuales se deshabilitará la cuenta. Cuando está vacío, este campo indica que no hay cumplimiento de un período de inactividad.
  • Fecha de caducidad: El octavo campo indica los días desde el 1 de enero de 1970 en que la cuenta está deshabilitada.
  • Reservado: el noveno campo está reservado para uso futuro.

permiso de archivo / etc / shadow

Este es el segundo archivo importante en Linux porque almacena la contraseña, por lo que su acceso y modificación pueden ser muy críticos. Por eso su permiso es 400 que da solo leer permiso al propietario. También sirve para evitar modificaciones erróneas. Puede ver los permisos predeterminados de este archivo a continuación:

# ls -l /etc/shadow
-r-------- 1 root root 1078 May 12 23:55 /etc/shadow

La contraseña se puede cifrar utilizando diferentes métodos, que son reconocidos por el identificación presente después del primer carácter que es el PS símbolo. A continuación puedes tener el valor del id y la técnica de cifrado correspondiente que indica:

  • 1: MD5
  • 2a: Pez globo
  • 5: SHA-256
  • 6: SHA-512

Cómo funciona la contraseña cifrada

El algoritmo utilizado para cifrar el campo de contraseña se conoce técnicamente como función hash unidireccional. Este es un algoritmo que es fácil de calcular en una dirección, pero muy difícil de calcular en la dirección inversa.

Cuando se proporciona una contraseña a un usuario, se codifica con un valor generado aleatoriamente llamado salt. Esto significa que cualquier contraseña en particular podría almacenarse de 4096 formas diferentes. Luego, el valor de sal se almacena con la contraseña cifrada.

Cuando un usuario inicia sesión y proporciona una contraseña, la sal se recupera primero de la contraseña cifrada almacenada. Luego, la contraseña proporcionada se codifica con el valor de sal y luego se compara con la contraseña encriptada. Si las contraseñas coinciden, el usuario está autenticado.

Por lo tanto, siempre se recomienda seleccionar contraseñas que sean fuertes: contengan una combinación de alfabetos, dígitos y símbolos especiales y evite seleccionar palabras del diccionario.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar