Samba 4.2.1 como Domain Controller no CentOS 6.6 Minimal - Instalando e promovendo

Publicado por Davidson Jorge em 25/05/2015

[ Hits: 12.801 ]

 


Samba 4.2.1 como Domain Controller no CentOS 6.6 Minimal - Instalando e promovendo



Fiz algumas alterações na dica do nosso amigo Fagner Silva do Nascimento, para podermos fazer a instalação da versão mais recente, atualmente do Samba 4 na versão mais recente do Centos 6 minimal.

Créditos:
Download CentOS minimal:

Configurações iniciais

Ambiente: S.O.: CentOS x64 - Minimal
Servidores:
  • DC01 - Master
  • Domínio (realm): contoso.local

Desativando IPtables e o SELinux.

IPtables:

# chkconfig iptables off
# chkconfig ip6tables off

SELinux:

# vi /etc/selinux/config

SELINUX=disabled

Adicionando repositórios e atualizando sistema:

32 bits:

# rpm -Uvh http://fedora.uib.no/epel/6/i386/epel-release-6-8.noarch.rpm
# yum clean all && yum -y update

64 bits:

# rpm -Uvh http://fedora.uib.no/epel/6/x86_64/epel-release-6-8.noarch.rpm
# yum clean all && yum -y update

Instalando pacotes necessários:

# yum install openldap-devel gcc libacl-devel libblkid-devel gnutls-devel readline-devel python-devel gdb pkgconfig krb5-workstation zlib-devel setroubleshoot-server setroubleshoot-plugins policycoreutils-python libsemanage-python setools-libs-python setools-libs popt-devel libpcap-devel sqlite-devel libidn-devel libxml2-devel libacl-devel libsepol-devel libattr-devel keyutils-libs-devel cyrus-sasl-devel cups-devel perl wget ntpdate system-config-network-tui bind-utils -y

Ajustando a hora e data do servidor:

# /usr/sbin/ntpdate -u pool.ntp.org

Agendando o ntpdate:

# crontab -e

Adicione:

# Ajuste de Hora do Servidor
0-59/40 * * * * /usr/sbin/ntpdate -u pool.ntp.org

Nome e IP do servidor (obs.: se o hostname já estiver correto, pule esta etapa):

# system-config-network

Modifique conforme necessário.

Reinicie o servidor:

# reboot

Baixando e instalando o Samba 4

Código fonte do Samba 4:
Instalando a versão 4.2.1 (Abril 2015):

# cd /usr/src
# wget https://ftp.samba.org/pub/samba/stable/samba-4.2.1.tar.gz && tar -xzvf samba-4.2.1.tar.gz && cd samba-4.2.1 && ./configure --prefix=/usr/local/samba && make && make install

Promovendo o Samba 4

Promover domínio:

# cd /usr/local/samba
# bin/samba-tool domain provision
  • realm=contoso.local
  • domain=contoso
  • server-role=dc
  • DNS= Samba Internal
  • adminpass='p@ssw0rd'



Obs.: a senha tem que ser forte, contendo letras, números e caracteres especiais, caso contrário, irá dar erro no final.

Você terá que adicionar a variável PATH para Samba 4 em sua máquina:

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

Script de inicialização do Samba 4

Configurar script para inicializar e parar o Samba:

# vi /etc/init.d/samba

Adicionar o conteúdo abaixo:

#! /bin/bash
# samba4       Bring up/down samba4 service
# chkconfig: - 90 10
# description: Activates/Deactivates all samba4 interfaces configured
# Source function library.
. /etc/init.d/functions

if [ -f /etc/sysconfig/samba4 ]; then
    . /etc/sysconfig/samba4
fi

CWD=$(pwd)
prog="samba4"

start() {
   # Attach irda device
   echo -n $"Starting $prog: "
    /usr/local/samba/sbin/samba
    sleep 2
    if ps ax | grep -v "grep" | grep -q /samba/sbin/samba ; then success $"samba4 startup"; else failure $"samba4 startup"; fi
   echo
}
stop() {
   # Stop service.
   echo -n $"Shutting down $prog: "
    killall samba
    sleep 2
    if ps ax | grep -v "grep" | grep -q /samba/sbin/samba ; then failure $"samba4 shutdown"; else success $"samba4 shutdown"; fi
   echo
}
status() {
    /usr/local/samba/sbin/samba --show-build
}

# See how we were called.
case "$1" in
start)
    start
  ;;
stop)
    stop
  ;;
status)
    status irattach
    ;;
restart|reload)
    stop
    start
    ;;
*)
   echo $"Usage: $0 {start|stop|restart|status}"
   exit 1
esac

exit 0

Dê permissão de execução ao script:

# chmod +x /etc/init.d/samba

Adicionar e configurar o script para iniciar com o sistema:

# chkconfig --add samba
# chkconfig samba on

Reinicie o servidor:

# reboot

Configurando Kerberos e DNS

Configurar Kerberos:

# cd /usr/local/samba/private
# cp krb5.conf /etc/krb5.conf

Configurar DNS:

# vi /etc/sysconfig/network-scripts/ifcfg #Mais a LAN, eth0 ou eth1 etc.

DNS1=IP_DO_SAMBA4

Reinicie a placa de rede:

# service network restart

Testando o domínio criado

Testes:

# /usr/local/samba/sbin/samba -V
Version 4.0.6

Outro pequeno teste:

# /usr/local/samba/bin/smbclient -L localhost -U%
Domain=[CONTOSO] OS=[Unix] Server[Samba 4.0.5]
        Sharename        Type        Comment
        ---------        ----        -------
        netlogon         Disk
        sysvol           Disk
        IPC$             IPC         IPC Service (Samba 4.0.5)
Domain=[CONTOSO] OS=[Unix] Server=[Samba 4.0.5]
        Server               Comment
        ---------            -------
        Workgroup            Master
        ---------            -------


Dicas

Desativar a verificação de complexidade de senha (por padrão, a senha de qualquer usuário deve ter pelo menos, três dos quatro itens: maiúsculas, minúsculas, números e símbolos):

# /usr/local/samba/bin/samba-tool domain passwordsettings set --complexity=off

Mudar o tamanho mínimo da senha (definindo como 4):

# /usr/local/samba/bin/samba-tool domain passwordsettings set --min-pwd-length=4

Mudar o prazo mínimo em que o usuário pode mudar a senha (usuário só vai poder mudar a senha após 4 dias da última mudança):

# /usr/local/samba/bin/samba-tool domain passwordsettings set --min-pwd-age=4

Mudar o tempo de vida máximo da senha do usuário (usuário terá que mudar a senha após 30 dias da última mudança):

# /usr/local/samba/bin/samba-tool domain passwordsettings set --max-pwd-age=30

Mudar o histórico de senhas que impede que o usuário utilize uma senha repetida (usuário não vai poder repetir nenhuma das últimas 5 senhas):

# /usr/local/samba/bin/samba-tool domain passwordsettings set --history-length=5

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Acessando compartilhamento samba com konqueror

Instalando MSN Messenger no Linux

Como desativar previsão do vídeo (inline preview) da home do YouTube

Hack 'n' Cast v0.5 - por que usar GNU/Linux

Verificar se o CPF é válido

  

Comentários
[1] Comentário enviado por wagnerfs em 25/05/2015 - 21:03h

Cara, muito bom esta dica! Vou testar aqui nos meus laboratórios virtuais.

_________________________
Wagner F. de Souza
Graduado em Redes de Computadores
"GNU/Linux for human beings."
LPI ID: LPI000297782

[2] Comentário enviado por lDavidson em 26/05/2015 - 08:41h


[1] Comentário enviado por K666 em 25/05/2015 - 21:03h

Cara, muito bom esta dica! Vou testar aqui nos meus laboratórios virtuais.

_________________________
Wagner F. de Souza
Graduado em Redes de Computadores
"GNU/Linux for human beings."
LPI ID: LPI000297782


Vlws Wagner,

Qualquer dúvida estou a disposição.
Abraços!!

[3] Comentário enviado por igorferreirar em 08/06/2015 - 13:56h

Boa tarde, tudo bem?

Cara estou com dificuldades para criar este domínio no Samba 4.

Fiz tudo que você passou ai, segui o tutorial todo. Porém, quando vou na estação Windows para colocar o domínio informa que não existe ou não esta acessível.
E se eu acessar pela estação Windows pelo comando "Windows + R" e digito o IP Fixo que coloquei ele acessa e pede o usuário e a senha. Coloco o usuário e a senha que criei no CentOS 6.6 no Samba 4, mais informa que está errado.

Onde estou errando?

Aguardo resposta.

Thanks,

Igor Medeiro

[4] Comentário enviado por lDavidson em 08/06/2015 - 17:11h


[3] Comentário enviado por igorferreirar em 08/06/2015 - 13:56h

Boa tarde, tudo bem?

Cara estou com dificuldades para criar este domínio no Samba 4.

Fiz tudo que você passou ai, segui o tutorial todo. Porém, quando vou na estação Windows para colocar o domínio informa que não existe ou não esta acessível.
E se eu acessar pela estação Windows pelo comando "Windows + R" e digito o IP Fixo que coloquei ele acessa e pede o usuário e a senha. Coloco o usuário e a senha que criei no CentOS 6.6 no Samba 4, mais informa que está errado.

Onde estou errando?

Aguardo resposta.

Thanks,

Igor Medeiro


Boa tarde Igor,

O configuração do DNS primário da sua estação Windows está com o IP do Servidor Samba?
A configuração de DNS na LAN do servidor está setada corretamente? (DNS1=IP_DO_SAMBA4)

[5] Comentário enviado por Lucas Peregrino em 21/07/2015 - 12:58h

Boa tarde estou vc chego a testa essa versão para acesso remoto estou tento problema no samba 4 aparti da versao 4.2 ao tentar logar com usuarios em area de trabalho remoto a tela fica preta.

[6] Comentário enviado por lDavidson em 23/07/2015 - 10:59h


[5] Comentário enviado por Lucas Peregrino em 21/07/2015 - 12:58h

Boa tarde estou vc chego a testa essa versão para acesso remoto estou tento problema no samba 4 aparti da versao 4.2 ao tentar logar com usuarios em area de trabalho remoto a tela fica preta.


Boa tarde Lucas.

Testei sim, inclusive instalei a ferramenta Rsat para melhor gerenciamento através de uma estação Windows que adicionei no Domínio.
O erro que mencionou está ocorrendo em todas estações que você coloca no domínio?

[7] Comentário enviado por fguatemala em 09/11/2017 - 01:43h


[4] Comentário enviado por lDavidson em 08/06/2015 - 17:11h


[3] Comentário enviado por igorferreirar em 08/06/2015 - 13:56h

Boa tarde, tudo bem?

Cara estou com dificuldades para criar este domínio no Samba 4.

Fiz tudo que você passou ai, segui o tutorial todo. Porém, quando vou na estação Windows para colocar o domínio informa que não existe ou não esta acessível.
E se eu acessar pela estação Windows pelo comando "Windows + R" e digito o IP Fixo que coloquei ele acessa e pede o usuário e a senha. Coloco o usuário e a senha que criei no CentOS 6.6 no Samba 4, mais informa que está errado.

Onde estou errando?

Aguardo resposta.

Thanks,

Igor Medeiro

Boa tarde Igor,

O configuração do DNS primário da sua estação Windows está com o IP do Servidor Samba?
A configuração de DNS na LAN do servidor está setada corretamente? (DNS1=IP_DO_SAMBA4)


Apenas acrescentando a resposta, que para acessar as unidades mapeadas que Igor está tentando, através do endereço de IP, deve-se digitar o nomedousuario@dominio.
EXEMPLO: (de acordo com o modelo exposto)
Domínio (realm): contoso.local
nomedeusuario@contoso.local

Abs.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts