pam

Tutorial de seguridad de Linux Pam

Tutorial de seguridad de Linux Pam
PAM significa Módulos de autenticación conectables que brindan soporte de autenticación dinámica para aplicaciones y servicios en un sistema operativo Linux. Es un mecanismo de seguridad que habilita la protección a través de PAM en lugar de pedir nombre de usuario y contraseña. PAM es responsable de la autenticación de los archivos que se ejecutan. Cada aplicación consta de varios archivos configurables, y cada uno consta de una pila de varios módulos. Luego, estos módulos se ejecutan de arriba a abajo y luego el PAM genera la respuesta, ya sea que se apruebe o no, según el resultado.

PAM hace que sea mucho más fácil para los administradores y desarrolladores, ya que realiza cambios en el archivo de código fuente por sí solo y requiere una interacción mínima. Por lo tanto, PAM también se puede definir como una interfaz de programación de aplicaciones generalizada para servicios relacionados con la autenticación. En lugar de volver a escribir el código, se modifica por sí solo.

Interfaces del módulo Pam

Auth: Es el módulo que se encarga de la autenticación; verifica la contraseña.
Cuenta: Después de que el usuario se haya autenticado con las credenciales correctas, la sección de la cuenta verifica la validez de la cuenta, como restricciones de tiempo de inicio de sesión o vencimiento, etc.
Contraseña: Solo se usa para cambiar la contraseña.
Sesión: Gestiona las sesiones, contiene la cuenta de la actividad del usuario, crea buzones de correo, crea el directorio personal del usuario, etc.

Tutorial

  1. Para verificar si tu aplicación usa LINUX-PAM o no usa el siguiente comando en tu terminal:

    $ ldd / bin / su

    Como podemos ver en la línea 2 de la salida existe un lipbpam.por lo que archivo que confirma la consulta.

  2. La configuración de LINUX-PAM se encuentra en el directorio / etc / pam.D/. Abra la terminal de su sistema operativo Linux y vaya al directorio pam escribiendo el comando: $ cd / etc / pam.D/

    Este es el directorio que contiene otros servicios que admiten PAM. Uno puede


    verifique el contenido ejecutando el comando $ ls dentro del directorio de pam como se muestra en la captura de pantalla anterior.

    si no encuentra sshd como un servicio que admita PAM, debe instalar el servidor sshd.

    SSH (o shell seguro) es una herramienta de red encriptada diseñada para permitir que diferentes tipos de computadoras / usuarios inicien sesión de forma segura en varias computadoras de forma remota a través de una red. Debe instalar el paquete openssh-server, lo que puede hacer ejecutando el siguiente comando en su terminal.

    $ sudo apt-get install openssh-server

    Instalará todos los archivos y luego puede volver a ingresar al directorio pam y verificar los servicios y ver que se ha agregado sshd.

  3. Luego escribe el siguiente comando. VIM es un editor de texto que abre documentos de texto sin formato para que el usuario los vea y edite. $ vim sshd

    Si desea salir del editor vim y no puede hacerlo, presione la tecla Esc y dos puntos (:) al mismo tiempo que lo coloca en el modo de inserción. Después de los dos puntos, escriba q y presione enter. Aquí q significa dejar de fumar.

    Puede desplazarse hacia abajo y ver todos los módulos que se describieron anteriormente con términos como requerido, incluido, requisito, etc. Que son esos?

    Se denominan banderas de control PAM. Entremos en sus detalles antes de sumergirnos en muchos más conceptos de servicios PAM.

Banderas de control PAM

  1. Requerido: Debe pasar para resultar exitoso. Es la necesidad de la que no se puede prescindir.
  2. Requisito: Debe aprobar, de lo contrario, no se ejecutarán más módulos.
  3. Suficiente: Se ignora si falla. Si se aprueba este módulo, no se comprobarán más banderas.
  4. Opcional: A menudo se ignora. Solo se usa cuando solo hay un módulo en la interfaz.
  5. Incluir: Obtiene todas las líneas de los otros archivos.

Ahora, la regla general para escribir la configuración principal es la siguiente: tipo de servicio módulo de bandera de control módulo-argumentos

  1. SERVICIO: Este es el nombre de la aplicación. Suponga que el nombre de su aplicación es NUCUTA.
  2. TIPO: Este es el tipo de módulo utilizado. Supongamos que aquí el módulo utilizado es el módulo de autenticación.
  3. BANDERA DE CONTROL: Este es el tipo de indicador de control utilizado, uno de los cinco tipos descritos anteriormente.
  4. MÓDULO: El nombre de archivo absoluto o la ruta relativa del PAM.
  5. MÓDULO-ARGUMENTOS: Es la lista separada de tokens para controlar el comportamiento del módulo.

Suponga que desea deshabilitar el acceso del usuario root a cualquier tipo de sistema a través de SSH, necesita restringir el acceso al servicio sshd. Además, los servicios de inicio de sesión deben tener acceso controlado.

Hay varios módulos que restringen el acceso y otorgan privilegios pero podemos usar el módulo / lib / security / pam_listfile.entonces que es extremadamente flexible y tiene muchas funcionalidades y privilegios.

  1. Abra y edite el archivo / aplicación en el editor vim para el servicio de destino ingresando en el / etc / pam.D/ directorio primero.

La siguiente regla debe agregarse en ambos archivos:

auth requiere pam_listfile.entonces \ onerr = éxito elemento = sentido del usuario = denegar archivo = / etc / ssh / denigradousuarios

Donde auth es el módulo de autenticación, se requiere el indicador de control, el archivo pam_list.por lo que el módulo otorga los privilegios de denegación a los archivos, onerr = éxito es el argumento del módulo, elemento = usuario es otro argumento del módulo que especifica los listados de archivos y el contenido que se debe verificar, sense = denegar es otro argumento del módulo que lo hará si el elemento es se encuentra en un archivo y archivo = / etc / ssh / denigradousuarios que especifica un tipo de archivo que solo contiene un elemento por línea.

  1. Luego crea otro archivo / etc / ssh / denigrados y agregue root como el nombre en él. Se puede hacer siguiendo el comando: $ sudo vim / etc / ssh / pressedusers
  1. Luego, guarde los cambios después de agregarle el nombre raíz y cierre el archivo.
  2. Utilice chmod commond para cambiar el modo de acceso del archivo. La sintaxis del comando chmod es
 archivo chmod [referencia] [operador] [modo]

Aquí las referencias se utilizan para especificar una lista de letras que indica a quién dar permiso.

Por ejemplo, aquí puede escribir el comando:

$ sudo chmod 600 / etc / ssh / pressedusers

Esto funciona de la manera más sencilla. Usted especifica los usuarios a los que se les niega el acceso a su archivo en el archivo / etc / ssh / denigrados usuarios y establece el modo de acceso para el archivo usando el comando chmod. De ahora en adelante, mientras intenta acceder al archivo debido a esta regla, PAM denegará a todos los usuarios enumerados en el archivo / etc / ssh / pressedusers cualquier acceso al archivo.

Conclusión

PAM proporciona soporte de autenticación dinámica para aplicaciones y servicios en un sistema operativo Linux. Esta guía establece una serie de indicadores que se pueden utilizar para determinar el resultado del resultado de un módulo. Es conveniente y confiable. para los usuarios que la contraseña tradicional y el mecanismo de autenticación de nombre de usuario, por lo que PAM se usa a menudo en muchos sistemas seguros.

Las mejores distribuciones de Linux para juegos en 2021
El sistema operativo Linux ha recorrido un largo camino desde su apariencia original, simple y basada en servidor. Este sistema operativo ha mejorado ...
Cómo capturar y transmitir su sesión de juego en Linux
En el pasado, los juegos solo se consideraban un pasatiempo, pero con el tiempo la industria del juego experimentó un gran crecimiento en términos de ...
Los mejores juegos para jugar con el seguimiento de manos
Oculus Quest presentó recientemente la gran idea del seguimiento manual sin controladores. Con un número cada vez mayor de juegos y actividades que ej...