SAMBA 4 - Servidor de Arquivos Utilizando ACLs Windows (Domínio)
Gostaria de utilizar esse espaço para compartilhar com a comunidade uma necessidade que tive que implantar na minha empresa e como não achei muita documentação voltada para essa necessidade, pelo menos não de forma centralizada, resolvi reunir todos os fragmentos que me levaram ao sucesso em um só documento.
Parte 2: Instalação do SAMBA 4
Apesar de haver na internet e inclusive aqui no VOL muitos conteúdos sobre a instalação do SAMBA 4, segue abaixo manual de instalação do SAMBA 4, instalação básica, sem provisionamento, apenas a instalação limpa.
Atualizar o Sistema Operacional.
# yum update -y
Atualizar Repositório EPEL:
* Verificar antes em http://mirror.globo.com/epel/7/x86_64/e/ o arquivo mais recente do EPEL-RELEASE.
# rpm -ivh http://mirror.globo.com/epel/7/x86_64/e/epel-release-7-9.noarch.rpm
# yum repolist
Instalar ferramentas importantes:
# yum install -y wget vim net-tools bind-utils
# yum -y groupinstall 'Development Tools'
Então, temos que configurar o IP, DNS e Domain Search.
No CentOS é possível utilizar o comando nmtui para realizar configurações de rede através Network Manager.
# nmtui
Ou configurar a placa de rede manualmente (AINDA RECOMENDO UTILIZAR O NMTUI).
Identificar o nome da placa de rede através do comando:
# ifconfig
Editar o arquivo de configuração da placa de rede para adicionar as configurações de rede.
# vi /etc/sysconfig/network-scripts/ifcfg-ens192
Edite as linhas conforme o exemplo abaixo;
Mais detalhes sobre como configurar a placa de rede no CentOS, acesse o link:
# vi /etc/selinux/config
Após editar o conf, execute o comando abaixo.
# setenforce 0
Como o objetivo é parar o serviço, se houver falha durante a execução dos passos abaixo, informando que o serviço não existe ou não está sendo executado, não tem problema, prossiga.
# service firewalld stop
# service iptables stop
# service ip6tables stop
# systemctl disable firewalld
# systemctl disable iptales
# systemctl disable ip6tables
Reinicie o servidor:
# reboot
# yum -y install openldap-devel pam-devel git gcc make wget libacl-devel libblkid-devel gnutls-devel readline-devel python-devel cups-devel libaio-devel quota-devel ctdb-devel krb5-devel krb5-workstation acl setroubleshoot-server setroubleshoot-plugins policycoreutils-python libsemanage-python setools-libs-python setools-libs popt-devel libpcap-devel libidn-devel libxml2-devel libacl-devel libsepol-devel libattr-devel keyutils-libs-devel cyrus-sasl-devel cups-devel bind-utils bind-sdb bind-devel bind-libs bind avahi-devel mingw32-iconv gamin libcap-devel rpc2-devel glusterfs-devel python-dns pkgconfig gdb e2fsprogs-devel zlib-devel sqlite-devel perl attr acl krb5-user ntp bind bind-sdb
# wget -c https://download.samba.org/pub/samba/samba-latest.tar.gz
Descompacte:
# tar -zxvf samba-latest.tar.gz
Abra a pasta que foi descompactada (atenção para a extensão no nome da pasta, essa se refere a versão baixada):
# cd samba-4.5.4/
Preparar compilação:
# ./configure
# make
Compilar:
# make install
Checar versão instalada:
# /usr/local/samba/bin/smbclient --version
SAMBA 4 instalado!
Obs.: o script de inicialização varia de acordo com a função que será utilizada no samba. Está disponível no documento de cada função, o tipo de script que será utilizado.
CONFIGURAÇÕES DO CENTOS
As dicas abaixo são preferências minhas e que estou compartilhando.Atualizar o Sistema Operacional.
# yum update -y
Atualizar Repositório EPEL:
* Verificar antes em http://mirror.globo.com/epel/7/x86_64/e/ o arquivo mais recente do EPEL-RELEASE.
# rpm -ivh http://mirror.globo.com/epel/7/x86_64/e/epel-release-7-9.noarch.rpm
# yum repolist
Instalar ferramentas importantes:
# yum install -y wget vim net-tools bind-utils
# yum -y groupinstall 'Development Tools'
CONFIGURAÇÕES DE REDE
É necessário configurar a rede do nosso servidor, seguindo o que foi especificado no cenário.Então, temos que configurar o IP, DNS e Domain Search.
No CentOS é possível utilizar o comando nmtui para realizar configurações de rede através Network Manager.
# nmtui
Ou configurar a placa de rede manualmente (AINDA RECOMENDO UTILIZAR O NMTUI).
Identificar o nome da placa de rede através do comando:
# ifconfig
Editar o arquivo de configuração da placa de rede para adicionar as configurações de rede.
# vi /etc/sysconfig/network-scripts/ifcfg-ens192
Edite as linhas conforme o exemplo abaixo;
IPADDR=192.168.20.20
DNS1=192.168.20.10
GATEWAY=192.168.0.1
DOMAIN=teste.local
ONBOOT=yes
DNS1=192.168.20.10
GATEWAY=192.168.0.1
DOMAIN=teste.local
ONBOOT=yes
Mais detalhes sobre como configurar a placa de rede no CentOS, acesse o link:
DESABILITAR O SELINUX
Editar o arquivo config em /etc/selinux e alterar o conteúdo das linhas conforme abaixo.# vi /etc/selinux/config
SELINUX=disabled
Após editar o conf, execute o comando abaixo.
# setenforce 0
DESABILITAR O FIREWALL
Os experts em IPTABLES podem ao invés de desabilitar o Firewall, liberar as portas necessárias.Como o objetivo é parar o serviço, se houver falha durante a execução dos passos abaixo, informando que o serviço não existe ou não está sendo executado, não tem problema, prossiga.
# service firewalld stop
# service iptables stop
# service ip6tables stop
# systemctl disable firewalld
# systemctl disable iptales
# systemctl disable ip6tables
Reinicie o servidor:
# reboot
INSTALAR DEPENDÊNCIAS
Recomendo copiar e colar o comando abaixo no putty.# yum -y install openldap-devel pam-devel git gcc make wget libacl-devel libblkid-devel gnutls-devel readline-devel python-devel cups-devel libaio-devel quota-devel ctdb-devel krb5-devel krb5-workstation acl setroubleshoot-server setroubleshoot-plugins policycoreutils-python libsemanage-python setools-libs-python setools-libs popt-devel libpcap-devel libidn-devel libxml2-devel libacl-devel libsepol-devel libattr-devel keyutils-libs-devel cyrus-sasl-devel cups-devel bind-utils bind-sdb bind-devel bind-libs bind avahi-devel mingw32-iconv gamin libcap-devel rpc2-devel glusterfs-devel python-dns pkgconfig gdb e2fsprogs-devel zlib-devel sqlite-devel perl attr acl krb5-user ntp bind bind-sdb
DOWNLOAD E INSTALAÇÃO DO SAMBA 4
# cd /opt/# wget -c https://download.samba.org/pub/samba/samba-latest.tar.gz
Descompacte:
# tar -zxvf samba-latest.tar.gz
Abra a pasta que foi descompactada (atenção para a extensão no nome da pasta, essa se refere a versão baixada):
# cd samba-4.5.4/
Preparar compilação:
# ./configure
# make
Compilar:
# make install
Checar versão instalada:
# /usr/local/samba/bin/smbclient --version
SAMBA 4 instalado!
Obs.: o script de inicialização varia de acordo com a função que será utilizada no samba. Está disponível no documento de cada função, o tipo de script que será utilizado.
1- Quais os problemas que pode aparecer?
- https://www.vivaolinux.com.br/topico/Application-Server-Jboss-WEb-Sphere-Tomcat-etc.../Servidor-samb...
- https://www.vivaolinux.com.br/topico/Servidores-Linux-para-iniciantes/Nao-consigo-colocar-nenhuma-ma...
- https://www.vivaolinux.com.br/topico/Samba/Alterar-o-IP-do-PDC
- https://www.vivaolinux.com.br/topico/Redes/Backup-PDC-Samba
- https://www.vivaolinux.com.br/topico/Duvidas-em-Geral/SAMBA-PDC-com-estacao-Windows-Vista
- https://www.vivaolinux.com.br/topico/Debian/SAMBA-PDC-12
- https://www.vivaolinux.com.br/topico/Iniciantes-no-Linux/Configurar-Samba-(SuSe)
- https://www.vivaolinux.com.br/dica/Samba-como-controlador-de-dominio-+-PDC
- http://www.hardware.com.br/tutoriais/samba-pdc/
- https://lists.debian.org/debian-user-portuguese/2013/01/msg00143.html
- http://www.cleuber.com.br/index.php/2014/09/09/crie-seu-ad-com-samba-no-ubuntu-1404
- http://cooperati.com.br/2015/03/16/samba-4-com-gpo-e-cliente-windows-8/
- http://labcisco.blogspot.com.br/2016/11/controlador-de-dominio-do-samba-4-no.html
- http://blog.astreinamentos.com.br/2015/08/20-razoes-porque-eu-uso-samba-4-ao-inves-de-ad-e-file-serv...
2- Comparar o samba com o Active Directory do windows.
- Como é a escalabilidade do samba PDC?
- Quais as medidas de segurança do samba PDC?
- Ele é solução completa para substituir servidores com sistemas proprietários e com licenças caras nos seus clientes?
https://social.technet.microsoft.com/Forums/pt-BR/3c36a2c6-c4c1-4263-bde3-0a3f6d3a4d80/samba-4-x-act...
3- O que eu ganho se eu migrar?
- Não paga a licença do Windows Server 2008 R2 Standart por exemplo.
Essas são algumas questões que os clientes mais exigente falam.