Buscar

Aula 08 Compartilhamento de arquivos (SAMBA) SERVIDORES PARA INTERNET

Prévia do material em texto

AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
SERVIDORES PARA INTERNET 
Aula 08: Compartilhamento de arquivos (SAMBA) 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Conteúdo desta aula 
INTRODUÇÃO 
AO SAMBA 
1 
INSTALAÇÃO 
DO SAMBA 
3 
PRÓXIMOS 
PASSOS 
DAEMONS DO 
SAMBA 
2 
CONFIGURAÇÃO 
DO SERVIDOR 
SAMBA 
4 
LABORATÓRIO 
PRÁTICO 
 
5 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Introdução ao SAMBA 
• Samba é um conjunto de aplicativos UNIX (open source) que se comunicam através do protocolo SMB (Server 
Message Block). 
 
• Vários sistemas operacionais, incluindo Windows e OS/2, usam o SMB para criar uma rede cliente-servidor. 
 
• Suportando este protocolo, o Samba permite que servidores Unix comuniquem-se com outros SOs (com o 
mesmo protocolo de rede de produtos para o Microsoft Windows). 
 
• Uma máquina rodando um servidor Samba pode mascarar uma rede Microsoft oferecendo os seguintes serviços: 
 
• Compartilhamento de um ou mais sistema de arquivos (filesystems); 
• Compartilhamento de impressoras tanto no servidor como no cliente; 
• Assistir clientes na navegação do ambiente de rede; 
• Autenticação de clientes logando em domínios Windows; 
• Prover ou assistir a resolução de servidores de nome WINS (name server resolution). 
 
 
 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Introdução ao SAMBA 
Samba também pode atuar como um controlador de domínio Windows, em que o computador na rede terá um 
usuário e senha de acesso ao servidor e seus arquivos pessoais e configuração ficarão salvos apenas no servidor. 
 
Esta é uma excelente ferramenta para garantir a perfeita integração de servidores Linux e as máquinas desktop de 
escritório ainda com o Windows. 
 
É preciso atenção a mecanismos de segurança como firewalls e o SELinux, que podem bloquear as requisições pela 
rede e impedir o correto funcionamento do servidor Samba. 
 
 
 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Daemons do SAMBA 
O Samba é composto por três daemons: 
 
• smbd 
Provê o compartilhamento de arquivos e serviços de impressão para clientes Windows, além da 
autenticação do usuário. 
 
• nmbd 
Entende e responde às solicitações de serviço de nome NetBIOS. Participa também nos protocolos 
de navegação que compõem a rede do Windows. 
 
• winbindd 
Resolve informações sobre usuários e grupos de um servidor Windows, permitindo que tais 
informações sejam compreendidas na plataforma UNIX. 
 
 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Daemons do SAMBA – smbd 
O programa smbd fornece a maior parte das principais funcionalidades do Samba. 
 
• Fornece compartilhamento de arquivo e impressora. Este recurso é, possivelmente, a mais importante 
função do Samba e o smbd o realiza. 
 
• Autentica usuários. O smbd autentica usuários com base em um banco de dados local ou remoto. Se for o 
controlador de domínio, o smbd também responde a solicitações de autenticação de outros computadores. 
 
• Fornece serviços de horário. 
 
 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Daemons do SAMBA – smbd 
Por padrão, o daemon smbd vincula-se às portas TCP 139 e 445. 
 
O protocolo SMB usa a porta 139 através de NetBIOS sobre TCP, que é a maneira como muitos clientes mais 
antigos usam SMB/CIFS. 
 
A porta 445 oferece serviços de SMB sobre TCP simples, que é a maneira como muitos novos clientes acessam o 
servidor Samb. 
 
O smbd é considerado o núcleo do SAMBA; apenas com o smbd e smbclient é possível realizar transferências de 
arquivos. 
 
 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Daemons do SAMBA – smbd 
 A principal função deste servidor é manipular tarefas relacionadas a nomes. 
 
É uma versão do Samba para o Domain Name System (DNS), apesar de ser mais simples e menos sofisticado 
que o DNS. 
 
Entre as tarefas específicas que o nmbd executa estão: 
 
• Responder a transmissões de nomes; 
• Registrar um nome de NetBIOS; 
• Funcionar como um servidor NBNS; 
• Funcionar como navegador mestre. 
 
 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Daemons do SAMBA – winbindd 
Ao contrário do smbd e do nmbd, winbindd não fornece serviços a computadores remotos. 
 
Serve de interface entre um controlador de domínio do Windows (ou do Samba) e as ferramentas de 
Pluggable Authentication Modules do próprio computador local, permitindo que um controlador de domínio 
hospede informações de contas Linux. 
 
 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Instalação do SAMBA 
• Instalação do samba via yum: 
 
 
 
 
• Listando pacotes instalados: 
 
 
 
[root@server01 ~]# yum install samba samba-client samba-common 
[root@server01 ~]# rpm -qa |grep samba 
samba-client-3.6.23-42.el6_9.x86_64 
samba-winbind-clients-3.6.23-42.el6_9.x86_64 
samba-3.6.23-42.el6_9.x86_64 
samba-winbind-3.6.23-42.el6_9.x86_64 
samba-common-3.6.23-42.el6_9.x86_64 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA 
• Consultando versão do samba instalada: 
 
 
 
 
• Ativar o serviço na inicialização: 
 
 
 
[root@server01 ~]# smbd --version 
Version 3.6.23-42.el6_9 
[root@server01 ~]# chkconfig smb on 
[root@server01 ~]# chkconfig nmb on 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA 
• Desativar o selinux, primeiramente consultar o estado atual: 
 
 
 
 
 
 
 
 
 
• Definir o selinux como Permissive: 
 
 
 
[root@server01 dados]# sestatus 
SELinux status: enabled 
SELinuxfs mount: /selinux 
Current mode: enforcing 
Mode from config file: permissive 
Policy version: 24 
Policy from config file: targeted 
[root@server01 dados]# setenforce 0 
[root@server01 dados]# getenforce 
Permissive 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA 
• Configurando regras de firewall: 
 
 
 
 
 
 
• Salvando a configuração: 
 
 
 
iptables -I INPUT -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT 
iptables -I INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT 
iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT 
[root@server01 ~]# service iptables save 
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ] 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA 
• O arquivo smb.conf é o arquivo de configuração do samba. 
 
• A documentação oficial está disponível em: 
https://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html. 
 
• Vamos mover o arquivo de configuração default para uma cópia de backup: 
 
 
 
• Vamos criar um arquivo de configuração zerado para nosso exemplo: 
 
 
 
[root@server01 ~]# mv /etc/samba/smb.conf /etc/samba/smb.conf.bkp 
[root@server01 ~]# touch /etc/samba/smb.conf 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA 
• Configurando o smb.conf: 
[global] 
 workgroup = WORKGROUP 
 server string = ServidorSamba 
 security = share 
 map to guest = bad user 
 
[Publico] 
 path = /dados/publico 
 browsable = yes 
 writable = yes 
 guest ok = yes 
 read only = no 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA 
• Reiniciar oserviço smb: 
 
 
 
 
 
• Com isso já será possível acessar o servidor de arquivos no Windows pelo IP (192.168.200.1) ou pelo 
nome do servidor (server01): 
[root@server01 samba]# /etc/init.d/smb restart 
Shutting down SMB services: [ OK ] 
Starting SMB services: [ OK ] 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA 
• Servidor de arquivos acessado via Windows: 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA 
• Observe que apenas o diretório “Publico” é apresentado; é o único configurado no smb.conf. 
 
• Observe, também, que não será possível escrever no diretório: 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA 
• Isto porque o diretório no servidor está limitado ao acesso do usuário root: 
 
 
 
 
 
• Ajustando a permissão ao diretório: 
[root@server01 samba]# ls -ltr /dados/ 
total 4 
drwxr-xr-x. 2 root root 4096 May 22 20:49 publico 
[root@server01 dados]# pwd 
/dados 
[root@server01 dados]# chmod -R 777 publico/ 
[root@server01 dados]# ls -ltr 
total 4 
drwxrwxrwx. 3 root root 4096 May 22 21:12 publico 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA – Usuários e grupos 
• Vamos criar um diretório com acesso restrito. 
 
• Para isso, precisamos de um grupo de usuários, os usuários e as permissões. 
 
• Criando o usuário joao e o grupo privado no servidor: 
 
 
 
 
• Adicionando o usuário ao samba e definindo sua senha: 
root@server01 dados]# useradd joao 
root@server01 dados]# groupadd privado 
[root@server01 dados]# usermod -a -G privado joao 
[root@server01 dados]# smbpasswd -a joao 
New SMB password: 
Retype new SMB password: 
Added user joao. 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA – Usuários e grupos 
• Vamos criar um diretório com acesso restrito: 
 
 
 
• Ajustando as permissões para o diretório gerencia: 
[root@server01 dados]# mkdir gerencia 
[root@server01 dados]# chown -R joao:privado gerencia/ 
[root@server01 dados]# chmod 777 gerencia/ 
[root@server01 dados]# ls -ltr 
total 8 
drwxrwxrwx. 3 root root 4096 May 22 21:12 publico 
drwxrwxrwx. 2 joao privado 4096 May 22 21:22 gerencia 
[root@server01 dados]# ls -ltr |grep gerencia 
drwxrwxrwx. 2 joao privado 4096 May 22 21:22 gerencia 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA – Usuários e grupos 
• Vamos adicionar o diretório criado ao smb.conf: 
[global] 
 workgroup = WORKGROUP 
 server string = ServidorSamba 
 map to guest = bad user 
 
[Publico] 
 path = /dados/publico 
 browsable = yes 
 writable = yes 
 guest ok = yes 
 read only = no 
 
[Gerencia] 
 path = /dados/gerencia 
 browsable = yes 
 read only = no 
 valid users = @privado 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA – Usuários e grupos 
• Para validar o arquivo de configuração, utilizar o comando testparm: 
[root@server01 dados]# testparm 
Load smb config files from /etc/samba/smb.conf 
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) 
Processing section "[Publico]" 
Processing section "[Gerencia]" 
Loaded services file OK. 
Server role: ROLE_STANDALONE 
Press enter to see a dump of your service definitions 
 
[global] 
 server string = ServidorSamba 
 map to guest = Bad User 
 client signing = required 
 idmap config * : backend = tdb 
 
[Publico] 
 path = /dados/publico 
 read only = No 
 guest ok = Yes 
 
[Gerencia] 
 path = /dados/gerencia 
 valid users = @privado 
 read only = No 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA – Usuários e grupos 
• Ao acessar o diretório “gerencia” será 
solicitada a credencial de acesso: 
 
 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA – Buscando servidores na rede 
• Para conectar a um compartilhamento Samba a partir do shell, utilizar o comando: 
 
smbclient //nome_do_host/compartilhamento -U usuário 
 
• O “nome_do_host” é o nome ou o endereço IP do servidor Samba, “compartilhamento” é o nome do 
diretório compartilhado e “usuário” é o nome do usuário do Samba. 
[root@server01 dados]# smbclient //localhost/gerencia -U joao 
Enter joao's password: 
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.23-42.el6_9] 
smb: \> ls 
 . D 0 Mon May 22 22:26:43 2017 
 .. D 0 Mon May 22 21:22:39 2017 
 teste D 0 Mon May 22 22:26:31 2017 
 teste2 D 0 Mon May 22 22:26:43 2017 
 teste1 D 0 Mon May 22 22:26:41 2] 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Configuração do SAMBA – Montar servidor remoto 
• Para montar um compartilhamento Samba, de forma que ele possa ser utilizado como parte do sistema 
de arquivos local, executar o comando: 
 
mount -t cifs -o usuário,senha //servidor/compartilhamento /ponto_de_montagem 
[root@server02 ~]# mount -t cifs -o username=joao,password=123456 
//192.168.200.201/gerencia /mnt 
[root@server02 ~]# ls -ltr /mnt/ 
total 0 
drwxr-xr-x 2 501 503 0 May 22 22:26 teste 
drwxr-xr-x 2 501 503 0 May 22 22:26 teste1 
drwxr-xr-x 2 501 503 0 May 22 22:26 teste2 
AULA 05: ARQUIVOS DE LOG E BACKUP 
LABORATÓRIO PRÁTICO 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
Laboratório prático 
• Configure um servidor samba em seu sistema linux com o seu nome (server string). 
 
• Crie um novo diretório “todos” e compartilhe publicamente no samba. 
 
• Crie o usuário “aluno” no grupo “redes” e adicione-os no samba, definindo a senha padrão “linux”. 
 
• Crie um novo diretório “estacio” e compartilhe no samba restringindo o acesso a apenas o grupo de 
usuários “redes”. 
 
• Acesse o servidor samba dos colegas de classe via Windows. 
 
 
AULA 08: COMPARTILHAMENTO DE ARQUIVOS (SAMBA) 
Servidores para internet 
VAMOS AOS PRÓXIMOS PASSOS? 
 
 
Conhecer os conceitos do 
serviço DNS; 
 
Configurar um servidor DNS 
utilizando software livre; 
 
Acompanhar a execução de 
um servidor DNS; 
 
AVANCE PARA FINALIZAR 
A APRESENTAÇÃO.

Outros materiais