Como obtenho o centos 7 para usar uids e gids do diretório ativo?

6

Estou me preparando para uma eventual atualização do CentOS 6 para o CentOS 7. Agora, na versão 6, usamos apenas o LDAP mapeado para o AD para autenticação. Isso, então, usa o UID e o GID da extensão do Active Directory para o Unix.

Na minha experiência com o CentOS 7, passei pela documentação (acho que foi da Red Hat) que explica como ingressar em um domínio. O processo foi principalmente direto, e na maioria das vezes funciona muito bem. No entanto, ele não usa apenas o UID e os GIDs dos atributos do AD Unix. Está mapeando esses IDs para IDs completamente diferentes. No AD, os usuários estão no intervalo de 10000. O CentOS7 está dando a cada usuário o UID na faixa de 625000000.

Até agora, no meu teste em pequena escala (3 caixas), o UID parece ser consistente em todos eles e isso é bom. No entanto, quando eu começar a lançar 7 em produção, será uma atualização gradual. Eu não atualizarei todas as caixas ao mesmo tempo. Estou preocupado com problemas com usuários com diferentes UIDs em caixas diferentes. Existe uma maneira de obter o CentOS 7 apenas para usar os UIDs e os GIDs nos atributos do AD Unix?

Aqui está o meu smb.conf:

[global]
    workgroup = COMPANY
    client signing = yes
    client use spnego = yes
    kerberos method = secrets and keytab
    log file = /var/log/samba/%m.log
    password server = ad_domaincontroller.company.net
    realm = COMPANY.NET
    security = ads
    server string = Samba Server Version %v
    max log size = 50

E aqui está o meu sssd.conf

[sssd]
config_file_version = 2
domains = company.net
services = nss, pam, pac

[nss]
filter_groups = root
filter_users = root

[domain/company.net]
id_provider = ad
ad_server = ad_domiancontroller.company.net
ad_hostname = centos7-22.company.net
auth_provider = ad
chpass_provider = ad
access_provider = ad
ldap_schema = ad
use_fully_qualified_names = False
cache_credentials = true
ldap_access_order = expire
ldap_account_expire_policy = ad
ldap_force_upper_case_realm = true

Edit: Eu tentei adicionar ldap_id_mapping = False ao sssd.conf, mas com essa linha incluída, o sssd.service não será iniciado. Aqui está a saída:

Sep 29 12:59:55 centos7-22 sssd[32827]: Starting up
Sep 29 12:59:55 centos7-22 sssd[32828]: Starting up
Sep 29 12:59:55 centos7-22 sssd[32831]: Starting up
Sep 29 12:59:55 centos7-22 sssd[32830]: Starting up
Sep 29 12:59:55 centos7-22 sssd[32829]: Starting up
Sep 29 12:59:55 centos7-22 sssd[32832]: Starting up
Sep 29 12:59:56 centos7-22 sssd[be[32833]: Starting up
Sep 29 12:59:56 centos7-22 systemd[1]: sssd.service: control process exited, code=exited status=1
Sep 29 12:59:56 centos7-22 systemd[1]: Failed to start System Security Services Daemon.
-- Subject: Unit sssd.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit sssd.service has failed.
--
-- The result is failed.
Sep 29 12:59:56 centos7-22 systemd[1]: Unit sssd.service entered failed state.
    
por mrwboilers 26.09.2014 / 22:39

2 respostas

5

Na página man do sssd-ad:

Por padrão, o provedor do AD mapeará os valores de UID e GID do parâmetro objectSID no Active Directory. Para mais detalhes, consulte a seção "ID MAPPING" abaixo. Se você deseja desabilitar o mapeamento de ID e, em vez disso, confiar nos atributos POSIX definidos no Active Directory, defina ldap_id_mapping = False

    
por 27.09.2014 / 07:11
1

O SSSD usa internamente os IDs como atributos de exclusividade, e a alteração de UIDs não é suportada no momento.

Espera-se e exige-se que o banco de dados seja removido se a alocação de IDs mudar, como acontece se você alternar do mapeamento de ID para as informações POSIX ou vice-versa. Talvez não esteja documentado com destaque nas páginas de manual - sinta-se à vontade para enviar um bug para melhorar nossa documentação. Obrigada!

    
por 09.01.2015 / 17:29