Autentique el sshd de Linux con TACACS + (Cisco ACS)

8

Nuestro equipo de ingeniería de redes utiliza múltiples servidores Linux para la recopilación de syslog , copias de seguridad de configuración, tftp, etc.

Queremos usar TACACS + en una máquina Cisco ACS como nuestro servidor de autenticación central donde podemos cambiar las contraseñas y dar cuenta de la actividad del usuario en estos servidores Linux. También debemos recurrir a la contraseña estática en caso de que el servicio tacacs + no funcione.

¿Cómo hacemos que sshden CentOS se autentique contra nuestro servidor Cisco ACS tacacs +?


NOTA: estoy respondiendo mi propia pregunta

Mike Pennington
fuente

Respuestas:

11

Supuestos

  • Estamos compilando pam_tacplus.sodesde v1.3.7 de la biblioteca pam_tacplus
  • El servidor Cisco ACS es 192.0.2.27, y la clave secreta tacacs + es d0nttr3@d0nm3

Instrucciones de instalación

  1. Agregue el nombre de host / dirección IP del servidor Linux en Cisco ACS y reinicie el servicio Cisco ACS
  2. Descargue el módulo tacacs + PAM de SourceForge.
  3. Instale el pampaquete de desarrollo para su distribución de Linux. RHEL / CentOS lo llaman pam-devel; Debian / Ubuntu lo llama libpam-dev(un nombre de paquete virtual para libpam0g-dev).
  4. Descomprima el pammódulo tacacs + en un directorio de trabajo temporal ( tar xvfz pam_tacplus-1.3.7.tar.gz)
  5. cden la nueva carpeta creada por tar.
  6. Como root: ./configure; make; make install
  7. Como root, edite /etc/pam.d/sshdy agregue esta línea como la primera entrada en el archivo:

    auth include tacacs

  8. Como root, cree un nuevo archivo llamado /etc/pam.d/tacacs:

    #% PAM-1.0
    autenticación suficiente /usr/local/lib/security/pam_tacplus.so servidor de depuración = 192.0.2.27 secret = d0nttr3 @ d0nm3
    cuenta suficiente /usr/local/lib/security/pam_tacplus.so servidor de depuración = 192.0.2.27 secret = d0nttr3 @ d0nm3 service = shell protocol = ssh
    sesión suficiente /usr/local/lib/security/pam_tacplus.so servidor de depuración = 192.0.2.27 secreto = d0nttr3 @ d0nm3 servicio = protocolo de shell = ssh

Instrucciones por servidor / por usuario

Como root en cada servidor, cree una cuenta de usuario de Linux local que coincida con el nombre de usuario tacacs + para todos los usuarios requeridos. Los usuarios pueden usar opcionalmente passwdpara establecer su contraseña local a lo que quieran como último recurso; sin embargo, si establecen una contraseña local, podrán iniciar sesión localmente en cualquier momento, tacacs+incluso si el servicio está disponible.

pam_tacplus Información de servicio

Los detalles de cómo funciona el pam_tacplus.somódulo están en este pam-listcorreo electrónico archivado

Mike Pennington
fuente
¿Cómo gestionamos los grupos de usuarios de Linux? No estoy usando CISCO como cliente, más bien una caja de Linux es cliente con el módulo pam_tacplus.
chandank
@ Mike Pennington: ¿Sabe cómo deshabilitar los inicios de sesión locales cuando hay un servidor tacacs + disponible? ¿Cómo debo organizar las reglas anteriores y necesito más reglas para eso?
coffeMug