Compartir arquivos entre Windows e FreeBSD com Samba

Autores: Whisper_ e Slink
Data: 27 de outubro de 2001.


Neste documento vou tentar descrever a instalação e configuração de um meio de compartición de arquivos mediante SAMBA, baseado no protocolo SMB e que se apoia em NetBios .

Este documento não pretende (mais quisesse eu!) ser um manual exhaustivo de SAMBA, cujas possibilidades se escapam ao objetivo deste HOWTO. Singelamente vamos supor que temos em casa duas Pc, um com Windows e outro com FreeBSD e queremos compartir arquivos. Mediante SAMBA criaremos um meio de rede compatível com Windows e transparente para este, de forma que no icono Meio de Rede do escritorio de win apareça além da máquina local nossa máquina com FreeBSD com o/os diretórios que queiramos compartir.

Instalação de Samba

Para instalar Samba, se ainda não o fizemos pois o fazemos desde os ports, como de costume:

 
yomismo# cd /usr/ports/net/samba/ && make install

Posteriormente, se queremos arrancar Samba desde inetd para tê-lo ativado com o início do sistema, editámos o arquivo /etc/inetd.conf e adicionámos:

netbios-ssn stream tcp nowait root /usr/local/sbin/smbd smbd
netbios-ns dgram udp wait root /usr/local/sbin/nmbd nmbd

Desta maneira nos assegurámos de que se ativem os serviços necessários sob demanda.

Há outra forma de ativar o serviço ao arranque, e é a seguinte: quando instalamos o port, cria-se o arquivo /usr/local/etc/rc.d/samba.sh.sample. Não temos mais do que renombrarlo:

yomismo# mv /usr/local/etc/rc.d/samba.sh.sample /usr/local/etc/rc.d/samba.sh

Desta forma nos assegurámos o arranque a partir do próximo início do sistema.

Configuração de Samba

Samba tem umas possibilidades de configuração enormes, não prentendo abarcá-las, se não que vou propor uma configuração para um meio caseiro de compartición de arquivos entre um pc com Windows e outro com FreeBSD. Para uma configuração mais específica, pois como sempre, man samba e man smb.conf nos serão de grande ajuda ;-)

O arquivo de configuração é /usr/local/etc/smb.conf. Em usr //local/share/examples/samba/ poderemos encontrar uma configuração de exemplo e outra documentação.

Com um smb.conf como este, uma rede FreeBSD/windows deveria funcionar sem problemas:

# Aqui começa a configuracion gral do server
%[global]
   workgroup = CRRPT    # O grupo de  trabalho é recomendável
                        # que seja o mesmo que em  win
   hosts allow = 192.168.0. 127    # . Aqui autorizamos as máquinas
                                    # de  nossa rede
   log file = /var/log/log.%m
   max log size = 50
   default = cositas    # O nome que vamos dar-lhe  ao diretório
                        # compartido (assim aparecerá no
			# Meio de  rede de  Windows)
   socket options = TCP_NODELAY
   dns proxy = não
   security = share    # Isto facilita uma comparticion sem
                       # contraseñas em  sentido Windows -> FreeBSD.
   server string = Samba Server
   wins support = true    # Não é imprescindível mas recomendável

# Aqui começa a configuração concreta do share que vamos criar
%[cositas]
   writable = yes
   guest only = yes
   comment = Home Directories
   path = /usr/home/miguel
   public = yes
   browseable = yes    # Nos  assegurámos que apareça no
                       # Meio de  rede

Podemos criar tantos shares como queiramos, cada um deles com sua rota associada, e estes apareceran como carpetas no meio de rede de Windows.

Para configurar o Pc com Windows, nas propriedades TCP/IP de nosso dispositivo de rede, dando por fato que já temos uma configuração de rede correta e os pc se "vêem" com ping pois só tendriamos que marcar na pestana Configuração WINS a casinha Ativar resolução WINS e agregar a ip do pc com free.

Para compartir os diretórios e arquivos elegidos, em Windows não teremos mais do que fazer dobre-clic no icono Meio de rede do escritorio. Em mudança, desde FreeBSD usaremos smbclient(consola) que é o cliente que nos instala samba por defeito. A forma de uso seria tal que assim:

# smbclient //nome_host/recurso_compartido

Observaremos uma saída assim:

yomismo@host# smbclient //nome_host/nome_recurso
added interface ip=192.168.0.1 bcast=192.168.0.255 nmask=255.255.255.0
Password:
smb: \>

A contraseña que nos solicita deve coincidir com a que elegemos ao ativar a compartición em windows. Se não elegemos nenhuma contraseña pomos o que se nos ocorra que a aceitará. A partir de aí o funcionamento é similar ao de uma sessão FTP, se escrevemos help nos sairá uma listagem com os comandos suportados.

Gestão de usuários e contraseñas sob FreeBSD

Para fazer Samba mais seguro, temos que usar contraseñas encriptadas e a gestão de usuários de forma correta.

Primeiro começaremos por adicionar estas duas lineas a nosso smb.conf. Com isso habilitaremos a segurança baseada em usuários e as contraseñas encriptadas.

security = user
encrypt passwords = yes

Se nosso Windows é um 95, deveremos ler a documentação de Samba para habilitar as contraseñas encriptadas. Nas versões seguintes, está habilitado por defeito.

Uma vez feito isto, devemos adicionar os usuários Unix que desejemos que tenham acesso a nosso sistema FreeBSD; para isso usaremos adduser.

Agora nos falta configurar as contraseñas Samba, que são diferentes às Unix. Deste modo podemos ter duas claves diferentes para cada usuário. Se o usuário ainda não está na lista de usuários de Samba faremos:

# smbpasswd -a  nome_usuário

Se só queremos mudar a contraseña a um usuário já existente, faremos o mesmo mas sem o modificador -a .

Por último nos falta ajustar o nome de usuário na máquina Windows. Normalmente, ao instalá-lo nos configura o nome de usuário como nosso nome completo. Isto, aparte de pouco útil, é incorreto em sistemas Unix. Se estamos ante um Windows NT, a solução mais singela é mudar o nome de usuário através do painel de controle. No caso dos Windows 9x, temos que tocar o registo. Abrimos o regedit e nos dirigimos à clave:

HKEY_LOCAL_MACHINE/Network/Logon

Nesta clave, veremos um campo chamado username, o qual devemos modificar e pôr o mesmo nome de usuário que na máquina FreeBSD. Feito isto, reiniciámos.

Agora nossa máquina Windows é capaz de identificar-se em FreeBSD corretamente, e ademais podemos fazer do que guarde a contraseña, de modo que os seguintes acessos sejam automáticos.


Esperámos que isto sirva de ajuda e já sabeis, comentários e sugestões às direções do início da página.

Hosted by www.Geocities.ws

1