Debian Buster: Instalando o Samba

Em nosso servidor Debian  iremos instalar o samba. São praticamente as mesmas etapas que seguimos nesse post: Samba 002: Instalando SAMBA para SERVIDOR

Informações do meu Servidor

  • Distro: Debian 10.7 – Buster
  • Nome do servidor: server01
  • Nome completo: server01.lab.local
  • Domínio:  lab.local
  • Endereço ip: 192.168.0.40

 

Preparando para Instalação

Antes de instalarmos, verifique:

  1. Verifica o nome completo do servidor com “hostname -f
    elder@server01:~$ hostname -f
    server01.lab.local

    Nome do meu pc é server01 e o domínio é lab.local. Inserimos durante a instalação essas informações. Inventei um  domínio qualquer e ao invés de usar “.com.br”, “.com” ou “.net”, usei “.local” pois lab.local não existe nem está acessível na internet.

    Clique Aqui, temos um artigo falando sobre nome do sistema e domínio.

  2. Verifique a data e horário com o comando “date”
    elder@server01:~$ date
    qua dez 16 09:06:30 -03 2020

    Se estiver errada corrija com “date mês + dia + hora + minuto + ano”. Por exemplo, abaixo irei definir a data e horário para:  01/02/2021 12:41

    [elder@empresa10 ~]$ sudo date 020112412021

    Ver a data

    [elder@empresa10 ~]$ date
    seg fev  1 12:43:09 EST 2021

    O recomendado é fazer com que o servidor tenha seu horário e data corrigidos automaticamente por um servidor na internet. A esse servidor onde buscamos o horário chamamos de servidor ntp. Por enquanto não iremos continuar assim.

  3. O servidor, logicamente, tem que estar com ip fixo. Ao final de do post “Instalando o Debian 10.7 Buster” mostramos como alterar o ip do Debian. Se o seu Sistema usa a ferramenta netplan para configuração de rede temos esse outro post: Netplan: IP Estático/Manual no Xubuntu. No meu caso o ip é 192.168.0.40.
  4. Verifique dentro de “/etc/resolv.conf” se sua configuração de dns está parecida com a minha:
    elder@server01:~$ cat /etc/resolv.conf 
    domain lab.local
    search lab.local
    nameserver 192.168.0.40
    nameserver 127.0.0.1
    nameserver 8.8.8.8
    

    esse último dns(8.8.8.8) é da google.

 

Instalando Dependências

 

Bom, antes de iniciarmos a instalação das dependências, quero comentar algumas coisinhas que pode acontecer e fazer com que você não consiga prosseguir:

O samba depende de alguns pacotes. Você não precisa memorizar todos eles. É mais um copiar e colar. Porém é bom sabermos a função de cada pacote. Alguns  já são conhecidos, como, por exemplo, python, perl, dnsutils, acl etc. Segue abaixo a lista de pacotes que o samba depende. Essa lista  retirei do site oficial samba.org:

acl attr autoconf bind9utils bison build-essential debhelper dnsutils docbook-xml docbook-xsl flex gdb libjansson-dev krb5-user libacl1-dev libaio-dev libarchive-dev libattr1-dev libblkid-dev libbsd-dev libcap-dev libcups2-dev libgnutls28-dev libgpgme-dev libjson-perl libldap2-dev libncurses5-dev libpam0g-dev libparse-yapp-perl libpopt-dev libreadline-dev nettle-dev perl perl-modules pkg-config python-all-dev python-crypto python-dbg python-dev python-dnspython python3-dnspython python-gpgme python3-gpgme python-markdown python3-markdown python3-dev xsltproc zlib1g-dev liblmdb-dev lmdb-utils

 

Alguns desses pacotes não são compatíveis com o Debian 9 ou 10. Por isso é preciso trocar:

  • python-gpgme por python-gpg
  • python3-gpgme por python3-gpg

E é necessário ter instalado a biblioteca “libdbus-1-dev” para não ocorrer o erro abaixo:

vfs_snapper is enabled but prerequisite dbus-1 package not found. Use --with-shared-modules=!vfs_snapper to disable vfs_snapper support.
(complete log in /home/elder/downloads/samba-4.13.3/bin/config.log)

 

Então, depois de lermos o texto acima, vamos instalar as dependências?

Como estamos instalando o samba no debian 10 buster, o correto a se fazer é:

  1. Instale as dependências, abaixo já alterei “python-gpgme por python-gpg” e “python3-gpgme por python3-gpg“. Além disso inclui “libdbus-1-dev

    elder@server01:~$ sudo apt install acl attr autoconf bind9utils bison build-essential debhelper dnsutils docbook-xml docbook-xsl flex gdb libjansson-dev krb5-user libacl1-dev libaio-dev libarchive-dev libattr1-dev libblkid-dev libbsd-dev libcap-dev libcups2-dev libgnutls28-dev libgpgme-dev libjson-perl libldap2-dev libncurses5-dev libpam0g-dev libparse-yapp-perl libpopt-dev libreadline-dev nettle-dev perl perl-modules pkg-config python-all-dev python-crypto python-dbg python-dev python-dnspython python3-dnspython python-gpg   python3-gpg   libdbus-1-dev python-markdown python3-markdown python3-dev xsltproc zlib1g-dev liblmdb-dev lmdb-utils  -y

  2. Após executar o comando acima, irá surgir algumas telas do kerberos


 

Instalando o Samba

 

Baixando o Samba

  1. Entre no diretório dentro do qual quer que o instalador do samba seja salvo, no meu caso, criarei a pasta Download dentro da home(~/) .Criando a pasta:
    [elder@server01 ~]$ mkdir ~/download

    – Acessando a pasta criada:

    [elder@server01 ~]$ cd ~/download/
  2. Acesse o link do site oficial: https://www.samba.org/
  3. Clique no link get samba:
  4. clique com o direito do mouse e m “samba-latest.tar.gz” e em seguida em  “Copiar endereço do link“.

  5.  Cole o link na frente do programa wget para baixarmos o arquivo instalador(pacote):
    (Obs.:   Se estiver usando o putty, para colar o texto copiado, use o botão direito do mouse)

    [elder@server01 download]$ wget https://download.samba.org/pub/samba/samba-latest.tar.gz
  6. Pronto, o  download foi finalizado.
    [elder@server01 download]$ ls
    samba-latest.tar.gz

 

Instalando

  1. Descompacte o samba:
    [elder@server01 download]$ tar -xvf samba-latest.tar.gz
  2. Acesse a pasta:
    [elder@server01 download]$ cd samba-4.7.5/
  3. Execute o script “configure”:
    (Irá demorar um pouco  🙂   )

    [elder@localhost samba-4.7.5]$ sudo ./configure

    Observe se  ao final apareceu a mensagem de sucesso abaixo:

  4. Execute o comando make:
    (Irá demorar um pouco  🙂   se prestar atenção no print de sucesso abaixo, verá que o make demorou 45 minutos  🙂  )

    [elder@server01 samba-4.7.5]$ sudo make

    se tudo certo, receberá uma mensagem de sucesso:

  5. Execute o make install para realizarmos a instalação:

    [elder@server01 samba-4.7.5]$ sudo make install

    Novamente, observe se apareceu a mensagem de sucesso após o final da instalação:

 

Provisionando o Samba

Obs.: Estamos levando em consideração que você está dentro da pasta para todos os comandos a seguir: /usr/local/samba

provisionar significa alimentar o samba com as informações do seu domínio.

o Domínio se refere a um endereço, separados por pontos, que de forma  única identifique seu servidor. Exemplo:  www.meusite.com.br,  meuservidor.com.br. Como trabalharemos com informações apenas locais, iremos inventar um dóminio simples, vamos supor que nossa empresa se chama empresa100 e que nosso domínio será empresa100.local.

 

A pasta de instalação do samba é: /usr/local/samba/  –  Porém, se desejar instalar o samba em outro diretório, no passo 3 acima, use   ./configure  –prefix=/caminho/onde/deseja/instalar 

 

  1. Acesse a pasta de instalação do samba:
    [elder@server01 samba-4.7.5]$ cd  /usr/local/samba/
  2.  Use o script  samba-tool para provisionarmos:Atualização: Na linha abaixo acrescentei “–use-rfc2307 –interactive” por ser uma recomendação da página oficial do samba.
    [elder@server01 samba]$ sudo bin/samba-tool domain provision --use-rfc2307 --interactive
  3. Insira as informações de acordo com sua livre vontade, livre arbítrio 🙂  🙂  🙂     No meu caso:– Realm [LOCALDOMAIN] = lab.local
    – Domain [empresa100]: = lab
    – Server Role (dc, member, standalone) [dc]dc
    – DNS backend ….  = SAMBA_INTERNAL
    – DNS forwarder IP address   =  8.8.8.8      – Obs.: aqui pode colocar qualquer endereço dns que queira usar, eu usei o do google.
    – DNS forwarder IP address   = Invente uma senha. Nada de 1234 ou password   🙂

 

Kerberos

  1. Remova o arquivo do kerberos que está dentro do /etc
    [elder@server01 samba]$ sudo rm -f /etc/krb5.conf
  2.  Copie para o /etc o arquivo krbr5.conf que o samba tem como modelo
[elder@server01 samba]$ sudo cp ./private/krb5.conf      /etc/

 

Iniciando e testando o SAMBA

Obs.: Estamos levando em consideração que você está dentro da pasta: /usr/local/samba

  1. Para iniciar o samba execute
    [elder@server01 samba]$ sudo ./sbin/samba
  2. Teste executnado “./bin/smbclient -L localhost -U% ” para ver se o samba está funcionando:
    [elder@server01 samba]$ ./bin/smbclient  -L localhost -U%
    
        Sharename       Type      Comment
    	---------       ----      -------
    	netlogon        Disk      
    	sysvol          Disk      
    	IPC$            IPC       IPC Service (Samba 4.7.5)
    Reconnecting with SMB1 for workgroup listing.
    
    	Server               Comment
    	---------            -------
    
    	Workgroup            Master
    	---------            -------
  3. Para encerrar/matar o samba:
    [elder@server01 samba]$ sudo killall samba

Obs.: Se o programa killall não estiver instalado, instale-o através do pacote psmisc, como em:
sudo yum install psmisc 

Compartilhando Pasta

Obs.: Estamos levando em consideração que você está dentro da pasta: /usr/local/samba

  1. Inicie o samba:
    [elder@server01 samba]$ sudo ./sbin/samba
  2. Crie a pasta que deseja compartilhar com outros computadores:
    [elder@server01 samba]$ mkdir /home/elder/compartilhados
  3. Dê as permissões à pasta criada. Daremos permissão total 🙂
    [elder@server01 samba]$ chmod -R 777 /home/elder/compartilhados/

    Edite o arquivo smb.conf usando seu editor predileto; utilizei o editor vim.Lembre-se, dentro do vim:
    – tecle i para inserir texto
    – tecle ESC para sair do modo de inserção
    – digite :x! para salvar e sair

[elder@server01 samba]$ sudo vim ./etc/smb.conf

digite abaixo, as informações seguintes

[Compartilhados]
        path = /home/elder/compartilhados
        read only =  no
        public =  yes

Salve e saia do  vim

Em outro computador, acesse o servidor samba. No meu caso, utilizei o Ubuntu para acessar meu servidor samba com o ip 192.168.0.40

 

usando windows 7 para acessar compartilhamento do meu servidor

 

 

Espero que tenham gostado, Até a próxima!!!

 

Leitor voraz e um dos administradores do GNU/Linux Brasil no Whatsapp, facebook, youtube e nesse dito site: www.gnulinuxbrasil.com.br

3 Comments to “Debian Buster: Instalando o Samba”

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *