Usando autenticação openldap apenas para alguns usuários

Usando autenticação openldap apenas para alguns usuários

Estou tentando configurar algumas estações de trabalho Linux (RedHat 7) e tentando descobrir como configurar a autenticação em um servidor LDAP com alguns requisitos incomuns.

Basicamente, sei como configurar a autenticação LDAP usando sssd, mas não sei como restringir a autenticação apenas a determinados usuários para atender às minhas necessidades.

Para habilitar a configuração LDAP, eu usaria esta linha de comando:

authconfig --enableldap --enableldapauth --ldapserver="<redacted>" --ldapbasedn="<redacted>" --update --enablemkhomedir

Isso permitirá que todos os usuários LDAP façam logon e, até onde eu sei, funciona perfeitamente. No entanto, meu requisito é que apenas alguns usuários do LDAP possam efetuar login e a lista de usuários seja fornecida em um arquivo de texto separado (por nome de login do usuário).

Mais informações: Temos um servidor LDAP (na verdade, Active Directory) com alguns milhares de usuários. Apenas cerca de 20 deles que precisam trabalhar nessas estações de trabalho devem ter permissão para fazer logon nessas estações de trabalho. Infelizmente, o LDAP não inclui nenhuma informação relacionada a isso e não tenho controle do servidor LDAP. Em vez disso, a cada duas semanas, recebo um arquivo de texto com uma lista de nomes de usuários que deveriam ter permissão para fazer logon.

Como posso configurar a autenticação para usar LDAP para nome de usuário/senha/ID de usuário, etc., além de restringi-la apenas aos usuários desta lista?

Responder1

Encontrei duas maneiras de realizar o que precisava. O primeiro foi o delineado por thrig. Tive que adicionar cada nome de usuário individualmente ao /etc/security/access.conf.

A segunda opção é especificar uma string de consulta LDAP em sssd.conf:

ldap_access_filter = (|(userid=usuário1)(userid=usuário2).....)

A segunda solução é muito tediosa de construir, mas acaba trazendo grandes benefícios de desempenho em grandes ambientes LDAP porque o sssd recuperará apenas alguns registros LDAP.

Responder2

Coloque esses usuários em um grupo e use uma pam_accessregra /etc/security/access.confpara permitir logins apenas se o usuário estiver nesse grupo (e também para rootquaisquer administradores de sistema e monitoramento, se necessário), por exemplo

+ : root wheel nagios : ALL
+ : yourusergrouphere : ALL
- : ALL : ALL

informação relacionada