Articles

Usando o Samba para compartilhar arquivos entre Linux e Windows

sua rede doméstica pode ter algumas máquinas Windows no rés-do-chão, um Mac em um quarto de cima, um PocketPC em uma mesa de cabeceira, e uma caixa Linux ou duas no porão, todas em rede com um roteador Genérico. Para todos os dispositivos nesta familiar configuração familiar familiar, ou mesmo um cenário com milhares de usuários, o suíte Samba é uma solução ideal para compartilhamento de arquivos e impressões.

existem vários ficheiros multi-plataforma e soluções de partilha de impressões, mas o samba e o protocolo SMB/CIFS podem ser os mais fáceis de implementar num ambiente de rede doméstica. Máquinas Windows e Macs vêm com a funcionalidade para trabalhar com Samba fora da caixa, e você só deve precisar instalar um único pacote Samba para máquinas Linux. GNOME e KDE oferecem funcionalidade de cliente Samba incorporada aos seus gestores de ficheiros predefinidos, Nautilus e Konqueror, respectivamente.

iremos focar-nos na configuração e utilização do Samba para partilha de ficheiros e impressões numa rede doméstica típica com máquinas Linux e Windows. Você pode escolher entre vários GUIs de configuração do Samba, mas vamos pela rota antiga e apontar nossos editores de texto para smb.conf. O ficheiro de configuração é normalmente encontrado no /etc/samba/smb.conf ou / usr / local / samba/lib / smb.conf. Note que você vai precisar ser root para editar estes, ou usar sudo.

Samba será executado em quase qualquer sistema semelhante ao Unix e pode ser encontrado nos repositórios de quase todas as distribuições Linux. Comece por usar o Gestor de pacotes da sua distribuição para se certificar de que está instalado.

configurar o samba

Samba é um pacote muito maduro e complexo, por isso o seu ficheiro de configuração pode ser longo e complicado. Você terá que confiar que sua distribuição lhe forneceu uma configuração padrão de som razoável e se concentrar em mudar apenas algumas linhas em smb.conf para se certificar de que são adequados para fins de uma rede doméstica. Se você quiser saber mais sobre qualquer linha, Consulte man smb.conf.

lembre-se que qualquer linha no ficheiro de configuração precedida de um ponto e vírgula (;) Ou Marca hash (#) é um comentário e não será reconhecida como uma configuração activa. Para ativar a linha, remova o ponto-e-vírgula ou hash. É uma boa idéia adicionar seus próprios comentários precedidos por um desses personagens para que você se lembre da lógica por trás de sua configuração da próxima vez que você carregar smb.conf.

a primeira opção a considerar é o nível de segurança do Samba. Esta linha aparecerá na secção da smb.conf, onde toda a configuração do Samba é feita. As outras secções, abordadas posteriormente neste artigo, referem-se a serviços específicos de Samba (recursos partilhados). O nível de segurança será provavelmente ajustado para o valor user e se parecer com isto:

security = user

para uma rede doméstica, poderá considerar configurar isto para share. A principal diferença é que com a configuração user você será obrigado a entrar no servidor de Samba antes de poder navegar nos seus recursos. Esta é uma precaução sábia em redes não confiáveis, mas será inconveniente ao usar recursos que você gostaria que toda a sua casa tivesse acesso, como uma impressora. Com share habilitado, pode ainda exigir que os utilizadores se autentiquem com uma senha para aceder a recursos específicos.

ainda na seção, vamos passar para as impressoras. Se você usar o Common UNIX Printing System (CUPS) (a qual a maioria das distribuições padrão), a única coisa que você precisa fazer para que o Samba reconheça suas impressoras é definir as seguintes linhas de acordo com:


printing = cups
printcap name = cups

Uma vez que poderá configurar estas impressoras (e talvez outros recursos) para serem acessíveis sem a autenticação do utilizador, é muito importante que restrinja o acesso apenas a máquinas conhecidas e de confiança – os computadores da sua casa. Consulte o manual do seu router para obter instruções sobre a atribuição de endereços IP específicos para cada computador em sua rede doméstica. Uma vez que tenha uma lista de máquinas de confiança, introduza – as nas seguintes linhas na secção :


hosts allow = computer1 computer2 computerN
hosts deny = ALL

Apesar de você ter especificado que ALL hosts ser negado, qualquer host listados no hosts allow linha ainda será dado acesso. O formato dos endereços IP atribuídos a cada computador pelo seu router irá variar. Por exemplo, se as máquinas na sua rede local receberem endereços do formato 192.168.0.x, as seguintes linhas irão restringir o acesso do Samba às máquinas locais:

hosts allow = 192.168.0.
hosts deny = ALL

Note que o último dígito do endereço IP foi deixado de fora no hosts allow linha. Indica que é permitido qualquer endereço IP nesse intervalo. Para segurança adicional contra acesso externo, olhar para bloquear portas Samba com uma firewall.

partilha de pastas e impressoras

é altura de ir para além de e configurar recursos partilhados específicos. Comece com a secção . Por omissão, a sua distribuição poderá ter esta secção configurada para permitir que os UTILIZADORES acedam à sua pasta pessoal na máquina que executa o servidor de Samba.

Se tiversecurity = share, esta funcionalidade poderá não funcionar como esperado e os utilizadores poderão ser apresentados com directórios domésticos sem se registarem. Se você é o único com um diretório na máquina que está executando o servidor do Samba de qualquer maneira, o que é provável que em um ambiente de rede doméstica, é aconselhável remover ou comentar (usando marcas de hash ou ponto-e-vírgula) seção e adicionar qualquer útil diretórios, recursos compartilhados, individualmente, mais tarde.

Agora você pode começar a compartilhar diretórios específicos. Use isto como um modelo para uma pasta partilhada publicamente para a qual não é necessário que os utilizadores sejam autenticados:


path = /location/of/directory
guest ok = yes
browseable = yes
read only = no

Share Name é o título que escolher (para o cliente que aceder ao seu servidor, este irá parecer ser o nome da pasta partilhada). A linha guest ok = yes é o que especifica esta partilha como acessível ao público. A linha browseable = yes tornará a partilha disponível para todos os utilizadores. Definir browseable = no para forçar os usuários a digitar manualmente o nome da partilha para acessá-lo. Claro, você pode definir read only = yes para restringir os usuários de fazer alterações ao diretório remotamente.

Use este como um modelo para ações privadas que os usuários devem inserir uma senha para acessar:


path = /location/of/directory
valid users = user
read only = yes
browseable = no

Aqui user é o nome de usuário na máquina que executa o servidor Samba da pessoa com privilégios de acesso para o compartilhamento. Use estes dois modelos para adicionar ações para todos os usuários de arquivos podem querer acessar a partir da máquina do servidor.

o seu servidor deverá estar totalmente configurado agora. Com o que adicionou aos valores por omissão fornecidos pela sua distribuição, o seu smb completo.conf deve ser parecido com isto.:

security = shareworkgroup = HOMEserver string = %h serverlog file = /var/log/samba/log.%mmax log size = 1000dns proxy = Nohosts allow = 192.168.0.hosts deny = ALLprinting = cupsprintcap name = cupspath = /var/spool/sambaprintable = Yesbrowseable = Nopath = /var/lib/samba/printerspath = /Public/Filesguest ok = yesread only = nobrowseable = yespath = /private/files/valid users = meread only = yesbrowseable = no

Antes de sair da máquina do servidor, terá algumas tarefas mais rápidas. Primeiro, indique quaisquer utilizadores que estejam a aceder ao servidor de Samba no seguinte comando:

smbpasswd -a user

ser-lhe-á pedido para introduzir uma senha de samba para cada utilizador. Você pode alterar a senha a qualquer momento, fazendo login como o usuário desejado e executando smbpasswd. Agora reinicie o seu servidor de Samba com este comando:

/etc/init.d/samba restart

acessando ações do Samba de clientes do Windows

Head over to a Windows machine to try out your new setup. O seu novo servidor deverá aparecer no Windows ‘ Os Meus Locais de Rede (procure o atalho na sua área de trabalho, por omissão). Como alternativa, abra o menu Iniciar e clique em “Executar…”, em seguida, digite:

\server

Substituir server com o nome ou endereço IP da máquina que está executando o servidor Samba. Uma janela do Windows Explorer com as partilhas navegáveis do seu servidor deverá abrir. Se você fez uma partilha não navegável, acesse-a usando esta ligação:

\servershare name

É fácil tornar as pastas partilhadas mais acessíveis. No Windows XP, Clique com o botão direito na partilha do Explorer e escolha “Map Network Drive…” você será capaz de atribuir-lhes uma letra de unidade, como Z:, de modo que eles podem ser facilmente encontrados no meu computador, mesmo após um reboot.

no meu teste no Windows XP com o nível de segurança definido para share, as impressoras são automaticamente detectadas e disponíveis para utilização na máquina Windows. Com user nível de segurança, foi necessário entrar no servidor em uma janela do Windows Explorer antes de tentar imprimir. Sua experiência em outras versões do Windows pode variar.

aceder às partilhas SMB/CIFS de outras máquinas Linux

samba e Windows podem ser facilmente acedidas pelos gestores de ficheiros predefinidos do Gnome e do KDE. Começaremos por aceder às acções da Nautilus em Gnome. Abrir Nautilus e ir para File – > ligar ao servidor.

Escolha “Windows share” da lista e indique o nome do servidor ou o endereço IP do seu servidor de Samba. Você também pode clicar no botão ” Navegar na rede “e procurar no diretório” Windows Network ” para procurar o servidor manualmente. Carregue em” ligar ” e uma janela Nautilus irá abrir com os recursos navegáveis do seu servidor de Samba.

aceder às partilhas de Samba com o Konqueror é tão simples quanto isso. Para navegar pelo seu servidor, indique o URL remote:/ no Konqueror. Para acesso direto, digite o URL do servidor diretamente neste formato:

smb://user@server/share

Note que o utilizador e a partilha são critérios opcionais.

configurar as impressoras sobre o Samba é igualmente fácil em ambos os ambientes de trabalho. In Gnome, go to System – > Administration- > Printing. Na aplicação de configuração da impressora, seleccione o Printer -> Adicionar Impressora. Ser-lhe-á pedida a sua senha. No Assistente de adicionar impressora, selecione ” Impressora de rede “e, em seguida,” Windows Printer SMB ” da lista. Ser-lhe-á pedido um nome de utilizador e uma senha no seu servidor de Samba. Identifique a sua máquina e Impressora no servidor de Samba e, em seguida, passar para a próxima tela. Selecione o seu modelo de impressora e, em seguida, clique em Aplicar.

para fazer o mesmo no KDE, abra o centro de configuração, lançando o comando kcontrol. Navegue para o módulo de Impressoras e vá para Add – > Adicionar Impressora / classe… na janela resultante, carregue em Seguinte e depois seleccione “SMB shared printer (Windows).”Click Next again and configure the username and password of a” Normal account, “if using user level security. Clique na próxima vez e, em seguida, digitalizar para navegar pelo seu servidor de Samba.

alternativamente, indique os detalhes do servidor manualmente. Na próxima tela, selecione seu modelo de impressora da lista. Clique nas próximas telas e dê à sua impressora em rede um título para terminar.

solução de problemas

Se tiver tido problemas em conseguir que alguma desta funcionalidade funcione, vire para a lista de controlo de resolução de problemas do Samba. Um truque rápido emprestado do documento para testar o arquivo de configuração do Samba para erros óbvios é executar o seguinte comando:

testparm smb.conf

Novamente, o caminho exato de seu smb.conf pode variar por distribuição.

só exploramos a funcionalidade básica do Samba aqui, sob medida para uma rede doméstica. Cenários de uso mais extremos são abordados em detalhes no samba por exemplo guia.