Ingressar desktop GNU/Linux no domínio Active Directory do Windows Server 2008
O objetivo do artigo é mostrar como ingressar um desktop com as distribuições Debian, LMDB e Ubuntu 12.04 LTS no domínio Active Directory do Windows Server 2008. No artigo irei mostrar como fazer o trabalho usando o prompt de comando e entender qual é a finalidade de cada pré-requisito usado para este trabalho.
Parte 2: Arquivo /etc/hosts, instalação de pré-requisitos e Kerberos
Arquivo /etc/hosts
Nesta parte iremos editar o arquivo /etc/hosts incluindo uma alias para o endereço do controlador de domínio e alterar o hostname do desktop cliente (mintvirt), acrescentando o fqdn, ou seja, o nome do domínio junto ao hostname da máquina cliente.No entanto, substitua os nomes abaixo pelos correspondentes na sua rede.
# vim /etc/hosts
Conteúdo a ser acrescentado:
127.0.0.1 mintvirt.mistoli.net localhost mintvirt 192.168.215.1 winactive
Observe que "winactive" é nome do controlador de domínio usado no artigo, troque pelo nome do controlador de domínio de sua rede. Execute o comando abaixo para ver o nome da máquina completo, ou seja, o hostname com o nome do domínio da máquina cliente:
# hostname -f
Instalação de pacotes necessários
Para que o desktop GNU/Linux possa migrar no domínio, é necessário fazer a instalação dos seguintes pacotes descritos a seguir, lembrando que os pacotes abaixo, são para distros Debian like:# apt-get install krb5-user krb5-config winbind samba samba-common smbclient cifs-utils libpam-krb5 libpam-winbind libnss-winbind
Durante a instalação do kerberos, vai ser apresentado algumas telas com perguntas referentes ao KDC, mas pode dá um ENTER e seguir com a instalação dos pacotes, pois a configuração do kerberos será abordada mais a frente.
Serviço NTP - Sicronizando data e hora com o servidor
Para que a máquina cliente possa comunicar-se sem problemas com o controlador de domínio Windows Server, é necessário que o horário e data de ambas as máquinas estejam sincronizadas. Para isso, teremos que configurar o cliente NTP para atualizar data e hora pelo servidor Active Directory.Edite o arquivo de configuração do serviço NTP usando o Vim:
# vim /etc/ntp.conf
Nas linhas do arquivo onde o conteúdo começa com a palavra "server", comente estas linhas com uma cerquilha "#", e adicione o seguinte conteúdo:
# Controlador de domínio #
server 192.168.215.1
restrict 192.168.215.1
server 192.168.215.1
restrict 192.168.215.1
Veja que ambos os endereços são do controlador de domínio. Agora, reinicie o serviço de data e hora:
# /etc/init.d/ntp stop
# /etc/init.d/ntp start
O Ubuntu usa o Upstart, então, para reiniciar o serviço é diferente. Para uma leitura mais abrangente, leia o conteúdo desse link:
O ambiente proposto pelo artigo, existe um servidor DHCP, então, não é necessário configurar o DNS, já que esse trabalho é feito pelo serviço DHCP. No entanto, se não estiver usando um serviço DHCP, edite o arquivo /etc/resolv.conf indicando os endereços dos servidores de nome, como mostrado abaixo:
# vim /etc/resolv.conf
search mistoli.net
nameserver 192.168.215.3
nameserver 192.168.215.4
nameserver 192.168.215.3
nameserver 192.168.215.4
Substitua os endereços acima e o nome do domínio informado pelos endereços de seus servidores DNS e o nome do seu domínio na rede onde está configurando a máquina cliente.
kerberos
Para um usuário autenticar-se no Active Directory, é necessário editar o arquivo /etc/krb5.conf e incluir informações sobre o servidor KDC (controlador de domínio kerberos). Nesse caso, o controlador de domínio com o Active Directory possui um KDC. Use o Vim para editar o arquivo e inclua as seguintes linhas no arquivo:# vim /etc/krb5.conf
Conteúdo acrescentado:
[libdefaults]
default_realm = MISTOLI.NET
[realms]
MISTOLI.NET = {
kdc = winactive.mistoli.net
default_domain = MISTOLI.NET
admin_server = winactive.mistoli.net
}
[domain_realm]
.mistoli.net = MISTOLI.NET
default_realm = MISTOLI.NET
[realms]
MISTOLI.NET = {
kdc = winactive.mistoli.net
default_domain = MISTOLI.NET
admin_server = winactive.mistoli.net
}
[domain_realm]
.mistoli.net = MISTOLI.NET
Explicação da configuração
Este arquivo é organizado em seções. As seções inclusas para autenticação no domínio são listadas abaixo junto com suas sub-seções:- [libdefaults] → Seção que contém valores padrão para o Kerberos V5, nessa seção só deixei uma única sub-seção, explicada a seguir.
- default_realm → Esta sub-seção identifica o domínio padrão a ser usado pelo cliente kerberos.
- [realms] → O kerberos divide a rede em domínios seguros, chamados de "realms", então esta seção contém sub-seções informando nomes de "realms" do Kerberos,
informando onde encontrar os servidores Kerberos para domínios seguros específicos e outras informações.
Neste caso, criei uma sub-seção chamada de "MISTOLI.NET", que é referente ao domínio seguro no qual a máquina irá ingressar. E dentro, criei as seguintes sub-seções:- kdc → Aqui se configura o nome da máquina que está executando o controlador de domínio do kerberos mestre, como o controlador de domínio rodando o Active Directory está executando o KDC, então inclui o nome completo da máquina aqui.
- default_domain → Nesta sub-seção se especifica o domínio seguro padrão.
- admin_server → Esta sub-seção identifica o host onde o servidor que faz administração do kerberos está sendo executado.
- [domain_realm] → Seção que indica os mapas de domínios e sub-domínios.
Depois de configurar o kerberos, vamos testar a comunicação entre o servidor e desktop. Execute o comando abaixo, no exemplo estou usando o nome "mint", que é um usuário do domínio criado, mas substitua pelo nome do usuário que estiver cadastrado no servidor.
# kinit mint
Se o comando não retornar nenhuma saída, é porque a comunicação está sendo realizada com sucesso. Agora vamos listar o ticket obtido nessa comunicação usando o comando:
# klist
O comando klist deverá retornar uma saída como a que está abaixo:
Ticket cache: FILE:/tmp/krb5cc_1000 Default principal: mint@MISTOLI.NET Valid starting Expires Service principal 13-11-2012 15:48:35 14-11-2012 01:49:08 krbtgt/MISTOLI.NET@MISTOLI.NET renew until 16-11-2012 15:48:35