Estou tentando usar o Samba4 para implementar logins do Active Directory em uma rede, usando nslcd e pam-krb5 para registrar e autenticar usuários e mount.cifs para montar compartilhamentos, como áreas de origem. O DNS interno do Samba4 é usado para fornecer DNS a todos os clientes. No geral, a configuração funciona muito bem, com os usuários sendo identificados corretamente e a montagem automática de compartilhamento por meio de pam-mount working a treat. No entanto, quero tentar implementar uma forma de redundância nessa rede com controladores de domínio adicionais.
Para configurar nslcd para apontar para vários servidores, defino um campo uri como uri DNS , que permite que nslcd atenda às informações sobre qual servidor LDAP usar de registros DNS, como _ldap._tcp.domain.com - convenientemente definido automaticamente pelo Samba para apontar para todos os servidores compatíveis com LDAP na rede.
/etc/krb5.conf foi igualmente simples de configurar, com a opção dns_lookup_kdc definida como verdadeira.
No entanto, o único obstáculo dessa configuração é resolver o DNS. Colocar várias nameserver linhas em /etc/resolv.conf permite que os clientes usem um servidor de nomes secundário caso o principal fique inativo, mas há um tempo limite enorme em cada consulta DNS antes que isso ocorra. Eu consegui reduzir esse tempo limite definindo option timeout: 0.3 nesse arquivo, mas ainda é dolorosamente lento ao usar comandos como ping .
Além disso, ignorando tudo isso por um segundo, mount.cifs parece incapaz de ser configurado para vários servidores. Eu tentei usar //domain.com/share para montar o compartilhamento, e isso funciona até certo ponto, mas falha ao usar o Kerberos (uma vez que o Kerberos requer que o FQDN do servidor funcione corretamente). Eu também tentei usar outro dos registros DNS SRV fornecidos pelo Samba, como _ldap._tcp.dc._msdcs.domain.com (um registro que deve apontar para todos os controladores de domínio nesse domínio), mas ele gosta ainda menos.
Alguma idéia?
Tags samba active-directory linux domain