Tengo algunas cajas de Linux que usan la autenticación de Windows Active Directory, que funciona bien (Samba + Winbind).
Sin embargo, lo que me gustaría hacer ahora es permitir que ciertas personas o ciertos grupos inicien sesión con las credenciales de Active Directory. Actualmente, cualquier persona con una cuenta AD válida puede iniciar sesión. Quiero limitar esto a solo unos pocos grupos. ¿Es esto factible?
(Estoy hablando de samba 3 aquí, no hay experiencia en samba 4 ahora).
No es necesario editar esos archivos /etc/pam.d/xxx. pam_winbind.conf es el archivo que desea, generalmente se encuentra en /etc/security/pam_winbind.conf .
Es el archivo de configuración del módulo pam_winbind, y funciona tanto para CentOS / Redhat como para Debian / Ubuntu. Puede leer la página de manual de pam_winbind.conf como referencia.
Aquí hay un archivo de ejemplo.
fuente
Actualmente uso la
AllowGroups
directiva/etc/ssh/sshd_config
para limitar quién puede iniciar sesión. Especifique uno o más grupos de AD en esa línea, y esas personas serán las únicas que podrán iniciar sesión.Tenga en cuenta que esto solo funciona si sus usuarios solo acceden al servidor de forma remota a través de ssh. Si están cantando localmente, necesitarás encontrar otra solución.
fuente
Sí, hay algunas formas de hacerlo dependiendo de lo que intente lograr exactamente.
El primer método se puede hacer a través de la configuración de samba. Esto solo permitirá que estos usuarios se conecten a Samba, otros usuarios aún pueden iniciar sesión a través de otros servicios (ssh, término local, etc.). Con esto, querrá agregar una línea a su sección [global] en smb.conf:
El otro método es modificando las reglas PAM. Las diferentes distribuciones tienen ligeras diferencias aquí, pero en general hay reglas PAM por servicio, así como reglas comunes, usted puede decidir qué es lo mejor. Deberá agregar una restricción de cuenta utilizando el módulo pam_require. Un ejemplo en mi computadora portátil (Fedora 13) sería modificar la sección de la cuenta en /etc/pam.d/system-auth para:
Para simplificar la administración, es posible que desee crear un nuevo grupo en AD con el fin de rastrear a los usuarios que pueden iniciar sesión en este servidor.
fuente
Tuve dificultades para lograr que cualquiera de los anteriores funcionara para mí en RHEL 7. A continuación se muestra lo que pude conseguir para trabajar.
/etc/sssd/sssd.conf
Cambiar
access_provider = ad
aaccess_provider = simple
+simple_allow_groups = @[email protected], @[email protected]
visudo
%[email protected] ALL=(ALL) ALL
reinicie el servicio sssd.
fuente
He logrado dejar que solo un AD_USER o AD_GROUP inicie sesión en ssh en el cuadro de Linux a través de la autenticación AD.
Los detalles se enumeran aquí: (preste atención a los pasos 7 y 8)
https://gist.githubusercontent.com/xianlin/8c09d916994dac7630b9/raw/ee07817a03bc5904a5404a7e7c94e08ea0c7560a/CentOS_AD_Integration
fuente