Configurando um servidor Active Directory com Debian e Samba. Primeira parte

Olá a todos. Nesta série de cursos, vou ensiná-lo a configurar um servidor Active Directory para redes com computadores Windows baixo Debian (Se vamos configurar um servidor, vamos fazê-lo corretamente, lenha) Nesta primeira parte irei explicar a instalação e configuração do servidor e na segunda vou ensinar como usar o ferramentas de administração remota de Windows 7 e como juntar os computadores ao domínio (o próprio Windows 7 e um Windows XP) Mais tarde farei uma terceira parte além de como entrar em equipes com GNU / Linux, já que é algo que ainda não testei.

A ideia surgiu enquanto eu estava (ou estava, depende de quando você leu este post) um curso sobre a greve de Técnico em Reparo de Equipamentos de Microcomputador no qual configuramos um servidor de rede com Windows 2008 (não RC2) e comecei a procurar se poderia implementar o mesmo em GNU / Linux e o resultado é muito bom, até minha professora ficou surpresa com a velocidade do servidor.

Antes de continuar, e com certeza muitos de vocês se perguntam: O que é o Active Directory? Bem, é o termo que a Microsoft usa para se referir ao seu conjunto de ferramentas para administração de rede, como o servidor DNS, a administração de usuários da rede, etc.

Precisaremos do seguinte:

  • Debian em seu ramo estável (no meu caso Wheezy 7.5 com XFCE como ambiente de desktop)
  • Samba 4
  • Um cliente com Windows 7 / 8 / 8.1 com o pacote para instalar funções de controle de servidor remoto (necessárias para gerenciar o servidor, como compartilhe uma pasta com os usuários) Isso será explicado no próximo tutorial.

Configurando o servidor

Antes de continuar, devemos editar alguns arquivos para que tudo funcione, principalmente para que os computadores da rede encontrem o servidor do domínio.

A primeira coisa é dar ao nosso servidor um endereço IP fixo. No caso do meu teste Debian em Virtualbox usar networking, que é o que vem da base, mas no servidor real eu configuro Network Manager, então vou explicar como isso é feito em ambos.

Networking

O primeiro arquivo que iremos editar é / etc / network / interfaces.
# This file describes the network interfaces available on your system

and how to activate them. For more information, see interfaces(5).

The loopback network interface

auto lo
iface lo inet loopback

The primary network interface

auto eth0
iface eth0 inet static
address 192.168.0.67
netmask 255.255.255.0
gateway 172.26.0.1
dns-nameservers 192.168.0.67
dns-search clase.org
dns-domain clase.org

Ser:

  • endereço: o IP da nossa equipe.
  • máscara de rede: a máscara de rede. Em uma pequena rede ou em uma casa geralmente é assim.
  • Porta de entrada: o portão. Normalmente é o IP do roteador que nos dá a saída para a Internet.
  • DNS-nameservers: IP do servidor DNS. Neste caso, o servidor, mas você pode adicionar um segundo, por exemplo, os públicos de Google.
  • Os 2 últimos indicam o nome de pesquisa do domínio e o próprio nome do domínio.

Agora devemos adicionar as seguintes linhas para / etc / hosts:
127.0.0.1 Matrix.clase.org Matrix
192.168.0.67 Matrix.clase.org Matrix

Isso resolverá o nome de domínio para que possa ser encontrado na rede. Matriz é o nome que dei ao servidor.

Finalmente nós editamos /etc/resolv.conf:

nameserver 192.168.0.13

Em alguns tutoriais que encontrei, eles adicionaram outra linha de servidor de nomes e mais algumas variáveis, mas no meu caso apenas uma linha foi suficiente.
Agora reiniciamos o serviço de rede e é isso:

/etc/init.d/networking restart

Network Manager

Clique com o botão direito no ícone de redes e selecione Editar conexões. Pegaremos as redes que configuramos, mas estamos interessados ​​apenas na chamada Rede com fio 1 ou o que você nomeou. Damos um duplo clique nele e uma nova janela aparecerá e iremos para Configurações IPv4. em O Método selecionar manual. Agora clique em Adicionar e preencha todos os campos:
AC DC Debian - Gerente de Rede


Agora vamos para a guia Geral e nos certificamos de que está marcado Todos os usuários devem se conectar a esta rede. Clique em salvar e saímos.

Instalando o Samba 4

No nosso caso, vamos baixar e compilar o Samba 4 de sua página porque no Debian ele só está disponível através do repositório Backports e isso me deu problemas de dependência.

Estava indo para http://samba.org para baixar a versão estável mais recente e descompactar o pacote em uma pasta.

A última versão estável no momento em que este artigo foi escrito é 4.1.8 então será aquele com quem trabalhamos.

Para compilá-lo, precisaremos instalar os seguintes pacotes:

apt-get install build-essential libacl1-dev libattr1-dev \
libblkid-dev libgnutls-dev libreadline-dev python-dev libpam0g-dev \
python-dnspython gdb pkg-config libpopt-dev libldap2-dev \
dnsutils libbsd-dev attr krb5-user docbook-xsl libcups2-dev acl

Depois de baixado e descompactado, abrimos um terminal e movemos para a pasta e executamos os seguintes comandos:
./configure --enable-debug
make
make install

A instalação padrão é em  / usr / local / samba. Embora suporte o parâmetro –prefix = / usr NÃO o instala nos diretórios correspondentes (por exemplo, os binários não os colocam em / usr / bin)

Agora vamos adicionar as novas rotas no PATH. No meu caso em /etc/bash.bashrc para se aplicar a todos os usuários, incluindo o root.

export PATH=$PATH:/usr/local/samba/bin:/usr/local/samba/sbin

E também criamos um link dentro de / etc para Samba para encontrar o arquivo de configuração:

ln -s /usr/local/samba/etc/ /etc/samba

Vamos configurar o servidor Samba. Para isso executamos:

samba-tool domain provision --realm=clase.org --domain=CLASE --adminpass=Contraseña --use-rfc2307

Onde:

  • -Reino: é o nome de domínio completo.
  • -Domínio: é o domínio. Tem que estar em letras maiúsculas
  • –Adminspass: é a senha do administrador da rede.
  • –Use-rfc2307: para ativar o AC.

Se tudo correr bem depois de um tempo, o Samba terminará de se configurar. Se você quiser saber todas as opções possíveis, basta executar:

samba-tool domain provision -h

Agora vamos editar o arquivo /etc/samba/smb.conf. Por enquanto o que nos interessa é a seguinte linha:
dns forwarder = 192.168.0.1

Esta linha deve apontar para o servidor DNS que nos dá acesso à Internet (neste caso, o roteador). O Samba assume a configuração padrão da rede, mas é recomendado verificá-la.

Agora começamos o serviço:

samba

e verificamos a conexão executando:

smbclient -L localhost -U%

E se tudo estiver correto, veremos algo semelhante a isto:
verificar se o samba está rodando


Caso ocorra um erro de conexão, verificamos os passos do ponto anterior. O log do Samba está em /usr/local/samba/var/log.samba

Agora vamos copiar o arquivo /usr/local/samba/private/krb5.conf a / Etc. Agora vamos verificar se podemos conectar:

kinit administrator@CLASE.ORG

olho, o domínio deve ser capitalizado.

Em seguida, ele nos pedirá a senha do usuário (neste caso, a do administrador) e se recebermos uma mensagem semelhante a «Aviso: a sua palavra-passe irá expirar dentro de 40 dias em Seg 14 de Julho 13:57:10 2014» é que saiu corretamente.

E até agora a primeira parte do tutorial. Lemos a seguir.

Já comentei várias vezes nos comentários, mas coloquei aqui. Como atualmente não tenho os recursos necessários (só tenho um PC em casa e monto durante um curso) e é trabalhoso fazê-lo em máquinas virtuais, é impossível continuar. Se alguém com o conhecimento e a equipe quiser continuar, eles são livres para fazê-lo)

Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   Lolo dito

    Muito interessante, sempre quis saber como isso era feito.

    É possível fazer isso usando SSH em vez de Samba?

    Eu entendo que é muito mais rápido e seguro.

    1.    Imagem de espaço reservado de Claudio Concepcion dito

      Caro Lolo, isso é impossível, já que o SSH permite uma sessão (e outras coisas, como a transferência de arquivos e aplicativos) através do terminal entre computadores com GNU Linux. Enquanto Samba o que constitui uma alternativa para o GNU Linux do sistema Active Directory da Microsoft.

      Son Link o que ele fez é um controlador de domínio no GNU Linux.

  2.   Anthony dito

    Muito bom tuto. É ótimo para pessoas como eu, que são meio verdes nisso. Muito obrigado

  3.   Imagem de espaço reservado de Claudio Concepcion dito

    Obrigado! Excelente guia. Aprovar…

  4.   adiazc87 dito

    Obrigado amigo, muito bom seu guia, espero que a segunda parte, aliás, você o fez trabalhar com um ldap?

    Saudações.

  5.   Sebastian dito

    Muito interessante, estou aguardando a continuação. Obrigado. ^ _ ^

    PS: Acho que há um pequeno erro de transcrição na configuração de / etc / network / interfaces, diz dns-domian quando me parece que deveria ir dns-domain.

  6.   Wilson Ruiz dito

    Eu achei esse artigo muito interessante. Pois estou apenas em processo de aprendizagem e não tenho muito conhecimento no assunto e quero aprender mais sobre gerenciamento e administração de sistemas operacionais.

  7.   eliotime3000 dito

    Isso é bom para criar pastas compartilhadas no Debian ou é apenas um outro tutorial desse jeito?

  8.   Gonzalo dito

    Existe uma distribuição Linux chamada Resara Server baseada em Ubuntu que é usada exclusivamente para construir um controlador de domínio, eu tentei e é muito fácil de usar, consegui juntar computadores ao domínio com aquele servidor, deixo aqui o howto , talvez alguém vá usá-lo - http://ostechnix.wordpress.com/2012/12/31/resara-server-an-alternative-opensource-linux-domain-controller-for-windows-active-directory-controller/

    1.    elav. dito

      Oh !!! Ótimo, a contribuição do dia .. Obrigado 😉

      1.    Gonzalo dito

        Você é bem vindo! 😀

    2.    The_Mastersok dito

      Obrigado por compartilhar!!!
      lembranças

  9.   oscar dito

    Excelente tutorial, fico esperando o resto. Lembro quando instalei um PDF no Debian 6 com samba 3 e ldap. Funcionou, mas tive que usar os modelos .pol para editar as diretivas. Nesse caso, como essas políticas são administradas?

  10.   Mário Guilhermo Zavala Silva dito

    Excelente informação ... Obrigado por isto ...

    FELICIDADES!!!

  11.   Cessar dito

    Excelente…. Estou muito interessado nisso ……. para quando a segunda parte ??? ou se você tiver um manual para isso me mande por email ... por favor !!!! obrigado

  12.   The_Mastersok dito

    Excelente tutorial….
    Espero um dia colocar em prática ..
    Saudações e aguardamos a segunda parte !!!!

  13.   Leandro dito

    A verdade é que já fiz isso uma vez, mas não entrei em quase nada ... Quero recomendar / te uma ferramenta, não sei se sabes ou não, não sei as suas limitações, mas para conectar a um servidor Active Directory não tive problema, tentei uma faculdade e funcionou muito bem. O programa se chama Da mesma forma, ele faz o mesmo que tudo que você fazia com o Samba, nada mais do que você não configurar tanto, é algo mais resumido, é claro que você pode modificar o que precisar ao seu gosto 🙂

    Espero que sirva! Felicidades

  14.   César dito

    Artigo muito interessante, aguardarei a segunda parcela. Foi uma grande surpresa descobrir que é possível lidar com um diretório ativo "moderno" com Gnu / Linux, lembro-me de fazer isso há muito tempo com um diretório ativo do tipo NT 4 e foi uma grande decepção não poder emule-o quando a Microsoft alterar a "estrutura" do seu LDAP no Windows 2000 Server.

    Saudações do Equador =]

  15.   mmm dito

    Oi. Muito obrigado!
    Tenho algumas dúvidas ... para que serve exatamente o diretório ativo?
    E por outro lado, você poderia ensinar, se pudesse, como fazer para auditar o que os usuários fazem?
    Saudações e agradecimentos.

    I for audior implementou isto: http://chicheblog.wordpress.com/2011/01/21/como-auditar-la-actividad-de-los-usuarios-en-samba/
    Mas se você puder expandi-lo, ou adicionar algo que você conhece, agradecemos!
    lembranças

  16.   Raul Baca dito

    Boa noite, saudações do Peru.
    Tenho uma query um pouco diferente de tudo publicado, veja para explicar um pouco, veja eu tenho essa pasta configurada no arquivo /etc/samba/smb.conf

    [Privado]
    comentário = Pasta privada
    caminho = / home / privado
    somente leitura = sim
    navegável = sim
    convidado ok = não
    public = no
    lista de escrita = @comercial, @gestion
    usuários válidos = @comercial, @gestion
    criar máscara = 0777
    máscara de diretório = 0777

    Agora a minha consulta vai, tudo funciona bem mas quando a partir de um computador faço login com o usuário «pepe» pertencente ao grupo «comercial» e de outro computador faço login com o usuário «coco» do grupo «gestion» o seguinte acontece quando eu crio um arquivo ou pasta do usuário "pepe" e desejo deletar esse diretório ou arquivo criado no outro PC com o usuário "coco", ele me diz que não posso porque não tenho privilégios, mas o próprio autor pode excluir este arquivo ou diretório, você alcança.

    A pasta privada foi criada da seguinte maneira:
    chmod -R 777 / home / Privado
    Eles funcionam na mesma rede LAN.
    Eu uso Distro Ubuntu Server 14.xx
    Deve ser destacado que o que desejo é que esta pasta PRIVADA seja gerenciada por 2 ou mais usuários por aí com a ideia de trabalhar com Grupos, mas parece que há algo que estou faltando ou omitindo, espero sua atenção e continuo atento aos seus comentários.

    1.    O Santo dito

      Amigo que você pode conseguir removendo as vírgulas
      desta maneira.

      lista de escrita = @comercial @gestion
      usuários válidos = @comercial @gestion

  17.   Raul Baca Centeno dito

    Olá querido,

    Gostaria de saber se a segunda parte do curso ainda está pendente, fico atento aos seus comentários e obrigado.

  18.   Miguel dito

    Boa tarde, só hoje li todos os comentários e estou com uma máquina meio configurada, por isso descobri que não vai publicar a segunda parte e quero saber se pode ter um executável em uma pasta e vários dbf tabelas, para acessar de vários computadores.
    Por favor responda assim que possível.

  19.   raul baca dito

    Caro,
    Gostaria de saber se a segunda parte deste interessante tutorial ainda está pendente, desde já agradeço a atenção.
    Obrigado.

  20.   Jaraneda dito

    Excelente tutorial, espero que você incentive a segunda parte, você poderia me dizer quais são as ferramentas de funções de controle de servidor remoto para baixar e testá-las.

    Saudações.

  21.   BETO dito

    Eu te parabenizo, e a segunda parte?

  22.   Daniel Bernal dito

    Artigo interessante, você lançou a próxima versão?

  23.   arrecadação dito

    Muito bom tutorial, só uma dúvida a segunda parte, como seria ou com esse tutorial acaba?

  24.   SARA dito

    GOSTO DA IDÉIA DE APRENDER NOVAS COISAS, OBRIGADO DAVID POR COMPARTILHAR SEUS CONHECIMENTOS,
    SAUDAÇÕES

    POSTSCRIPT: SOBRE O ASSUNTO DE APRENDIZAGEM, TENTAREI FAZER NA MINHA MÁQUINA VIRTUAL DEBIAN COMO SERVIDOR E COM GRUPOS DE CLIENTES VIRTUAIS, UM COM WIN7 E OUTRO COM WIN8.

  25.   edgar dito

    Este guia está incompleto, você não especifica diretórios, você deixa as coisas aleatórias, se eu fosse você repetiria

    1.    elav. dito

      Ou você pode completá-lo e escrevê-lo você mesmo, teremos o prazer de publicá-lo para você.

  26.   parede ada dito

    como configurar um servidor no debian 5 para poder se conectar remotamente a um xp

  27.   francisco dito

    oi e quando eu fizer:
    root @ pdc: ~ # apt-get install build-essential libacl1-dev libattr1-dev libblkid-dev \ libgnutls-dev libreadline-dev python-dev libpam0g-dev \ python-dnspyth gdb pkg-config libpopt-dev libldap2-dev \ dnsutils libbsd-dev attr krb5-user docbook-xsl libcups2 ac1
    me disse:
    Lendo listas de pacotes ... Feito
    Construindo árvore de dependências
    Lendo informação de estado ... Pronto
    O pacote build-essential não está disponível, mas é referido por outro pacote.
    Isso pode significar que o pacote está ausente, tornou-se obsoleto ou
    só está disponível em outra fonte
    E: O pacote essencial para construção não tem nenhum candidato a instalação

    alguma ajuda? obrigado

  28.   anônimo dito

     

    1.    anônimo dito

      os repositórios não estão configurados

  29.   Carlos dito

    Eu sei que você não vai publicar meu comentário. O artigo é muito ruim, nem é preciso dizer como o Kerberos está configurado, já que você o aplica nos requisitos. Por que compilar o Samba? A versão 4 já está disponível. Com a configuração que você definiu, o Kinit apresenta um erro corrigido NT_STATUS_DENIED! Para todos os interessados ​​em começar: https://help.ubuntu.com/lts/serverguide/samba-dc.html