28.3. Configurando um servidor Samba

O servidor Samba no SUSE Linux pode ser configurado de duas maneiras diferentes: com o YaST ou manualmente. A configuração manual oferece um nível maior de detalhes, mas não tem a conveniência da interface gráfica de usuário do YaST.

28.3.1. Configurando um servidor Samba com o YaST

Para configurar o servidor Samba, inicie o YaST e selecione Serviços de Rede+Servidor Samba. Quando o módulo é iniciado pela primeira vez, a caixa de diálogo Instalação do Servidor Samba é iniciada, solicitando que você tome algumas decisões básicas em relação à administração do servidor. No final da configuração, a senha de root do Samba é solicitada. Nas inicializações seguintes, a caixa de diálogo Configuração do Servidor Samba será exibida.

A caixa de diálogo Instalação do Servidor Samba consiste em duas etapas:

Nome de Grupo de Trabalho ou Domínio

Selecione um nome existente em Nome de Grupo de Trabalho ou Domínio ou digite um novo nome e clique em Próximo.

Tipo de Servidor Samba

Na etapa seguinte, especifique se o servidor deverá funcionar como PDC e clique em Próximo.

É possível mudar todas as configurações na Instalação do Servidor Samba posteriormente na caixa de diálogo Configuração do Servidor Samba com a guia Identidade.

Na primeira vez que você iniciar o módulo do servidor Samba, a caixa de diálogo Configuração do Servidor Samba é exibida logo após a caixa de diálogo Instalação do Servidor Samba. Ela contém três guias:

Inicialização

Na guia Inicialização, você pode definir como iniciar o servidor Samba. Para iniciar o serviço sempre que o sistema for inicializado, clique em Durante a Inicialização. Para ativar a inicialização automática, escolha Manualmente. Mais informações sobre como iniciar um servidor Samba são fornecidas na Seção 28.2, “Iniciando e interrompendo o Samba”.

Nesta guia, também é possível abrir portas no seu firewall. Para fazer isso, selecione Abrir Porta no Firewall. Se tiver várias interfaces de rede, clique em Detalhes do Firewall, selecione as interfaces e clique em OK para selecionar a interface de rede para os serviços Samba.

Compartilhamentos

Nesta guia, determine os compartilhamentos do Samba a serem ativados. Há alguns compartilhamentos predefinidos, como homes e impressoras. Use Alternar Status para alternar entre Ativo e Inativo. Clique em Adicionar para adicionar novos compartilhamentos e Apagar para apagar o compartilhamento selecionado.

Identidade

Em Identidade, você pode determinar o domínio ao qual o host deve ser associado (Configurações de Base) e se um nome de host alternativo deve ser usado na rede (Nome de Host do NetBIOS). Para definir configurações globais de especialista ou autenticação de usuário, clique em Configurações de Usuário.

Clique em Concluir para fechar a configuração.

28.3.2. Administração da Web com o SWAT

Uma ferramenta alternativa para a administração do servidor Samba é o SWAT (Ferramenta de Administração da Web do Samba). Ele oferece uma interface da Web simples para configuração do servidor Samba. Para usar o SWAT, abra http://localhost:901 e efetue login como usuário root. Se você não tiver uma conta root especial do Samba, use a conta root do sistema.

[Note]Ativando o SWAT

Após a instalação do servidor Samba, o SWAT não estará ativado. Para ativá-lo, abra Serviços de Rede+Serviços de Rede (xinetd) no YaST, habilite a configuração dos serviços de rede, selecione swat na tabela e clique em Alternar Status (Ativado ou Desativado).

28.3.3. Configurando o servidor manualmente

Se pretender usar o Samba como servidor, instale samba. O arquivo de configuração do Samba é o /etc/samba/smb.conf. Esse arquivo pode ser dividido em duas partes lógicas. A seção [global] contém as configurações central e global. As seções [share] contêm os compartilhamentos individuais de arquivo e impressora. Com essa abordagem, detalhes relativos aos compartilhamentos podem ser definidos de forma diferenciada ou global na seção [global], que aumenta a transparência estrutural do arquivo de configuração.

28.3.3.1. A seção global

Os seguintes parâmetros da seção [global] precisam de ajustes para atender aos requisitos de configuração da sua rede para que outras máquinas possam acessar seu servidor Samba via SMB em um ambiente Windows.

workgroup = TUX-NET

Essa linha designa o servidor Samba a um grupo de trabalho. Substitua o TUX-NET por um grupo de trabalho apropriado do seu ambiente de rede. Seu servidor Samba aparece sob o nome DNS, a menos que esse nome tenha sido designado a alguma outra máquina na rede. Se o nome DNS não estiver disponível, defina o nome do servidor usando netbiosname=MYNAME. Consulte mansmb.conf para obter mais detalhes sobre esse parâmetro.

os level = 2

Esse parâmetro determina se seu servidor Samba tenta se tornar um LMB (Local Master Browser - Browser Master Local) para seu grupo de trabalho. Escolha um valor bem reduzido para poupar a rede do Windows existente de perturbações causadas por um servidor Samba mal configurado. Mais informações sobre esse importante tópico podem ser encontradas nos arquivos BROWSING.txt e BROWSING-Config.txt, no subdiretório textdocs da documentação do pacote.

Se nenhum outro servidor SMB estiver presente na rede (como o servidor Windows NT ou 2000) e você desejar que o servidor Samba mantenha uma lista de todos os sistemas presentes no ambiente local, ajuste o os level em um valor mais alto (por exemplo, 65). Assim, o servidor Samba é selecionado como LMB para a rede local.

Ao mudar essa configuração, reflita bem sobre como isso pode afetar um ambiente de rede Windows existente. Primeiro, teste as mudanças em uma rede isolada ou em um horário não crítico do dia.

suporte WINS e servidor WINS

Para integrar o servidor Samba a uma rede Windows existente dotada de um servidor WINS ativo, habilite a opção wins server e defina seu valor para o endereço IP desse servidor WINS.

Se as suas máquinas do Windows estiverem conectadas a sub-redes separadas e ainda assim precisarem levar as restantes em consideração, será necessário configurar um servidor WINS. Para transformar um servidor Samba em um servidor WINS, defina a opção wins support = Yes. Verifique se somente um servidor Samba da rede possui essa configuração habilitada. As opções wins server e wins support nunca devem ficar habilitadas ao mesmo tempo no arquivo smb.conf.

28.3.3.2. Compartilhamentos

Os exemplos a seguir ilustram como uma unidade de CD-ROM e os diretórios do usuário (homes) são disponibilizados aos clientes SMB.

[cdrom]

Para evitar a disponibilização acidental da unidade de CD-ROM, essas linhas são desativadas com marcas de comentários (nesse caso, pontos-e-vírgulas). Remova os pontos-e-vírgulas da primeira coluna para compartilhar a unidade do CD-ROM com o Samba.

Exemplo 28.1. Compartilhamento de CD-ROM

;[cdrom]
;       comment = Linux CD-ROM
;       path = /media/cdrom
;       locking = No
[cdrom] e comment

A entrada [cdrom] é o nome do compartilhamento que pode ser visto por todos os clientes SMB na rede. Um comment adicional pode ser feito para enriquecer a descrição do compartilhamento.

path = /media/cdrom

path exporta o diretório /media/cdrom.

Por meio de uma configuração padrão bastante restritiva, esse tipo de compartilhamento somente é disponibilizado aos usuários presentes nesse sistema. Se esse compartilhamento precisar ser disponibilizado a todos, adicione uma linha guest ok = yes à configuração. Essa configuração concede permissões de leitura a todos na rede. Recomenda-se muita cautela no manejo desse parâmetro. Isso se aplica ainda mais intensamente ao uso desse parâmetro na seção [global].

[homes]

O compartilhamento [home] possui especial importância aqui. Se o usuário possuir uma conta e senha válidas para o servidor de arquivos Linux e seu próprio diretório pessoal, pode ficar conectado a ele.

Exemplo 28.2. Share homes

[homes]
	comment = Home Directories
	valid users = %S
	browseable = No
	read only = No
	create mask = 0640
	directory mask = 0750
[homes]

Contanto que não haja nenhum outro compartilhamento usando o nome de compartilhamento do usuário que estabelece a conexão ao servidor SMB, um compartilhamento é gerado dinamicamente usando as diretivas de compartilhamento [homes]. O nome resultante do compartilhamento é o nome do usuário.

valid users = %S

%S é substituído pelo nome concreto do compartilhamento logo que uma conexão tenha sido estabelecida com sucesso. Para um compartilhamento [homes], sempre será usado o nome do usuário. Conseqüentemente, os direitos de acesso ao compartilhamento de um usuário ficam restritos exclusivamente a ele.

browseable = No

Essa configuração torna o compartilhamento invisível no ambiente da rede.

read only = No

Por padrão, o Samba proíbe o acesso de gravação aos compartilhamentos exportados por meio do parâmetro read only = Yes. Para tornar um compartilhamento gravável, defina o valor read only = No, que corresponde a writeable = Yes.

create mask = 0640

Como os sistemas que não se baseiam no MS Windows NT não compreendem o conceito de permissões do UNIX, não são capazes de designar permissões ao criar um arquivo. O parâmetro create mask define as permissões de acesso designadas a arquivos recém-criados. Isso somente se aplica a compartilhamentos graváveis. Na verdade, essa configuração significa que o proprietário possui permissões de leitura e gravação e que os membros do grupo principal do proprietário possuem permissões de leitura. valid users = %S impede o acesso de leitura mesmo se o grupo possuir permissões de leitura. Para que o grupo tenha acesso de leitura ou gravação, desative a linha valid users = %S.

28.3.3.3. Níveis de segurança

Para aumentar a segurança, cada acesso a compartilhamento pode ser protegido por senha. O SMB possui três formas de verificar as permissões:

Segurança no nível do compartilhamento (security = share)

Uma senha é rigorosamente designada a um compartilhamento. Todos que conheçam essa senha possuem acesso ao compartilhamento.

Segurança no nível do usuário (security = user)

Essa variação introduz o conceito do usuário ao SMB. Cada usuário precisa se registrar no servidor com sua própria senha. Após o registro, o servidor pode conceder acesso a compartilhamentos exportados específicos condicionados a nomes de usuários.

Segurança no nível do servidor (security = server):

Para seus clientes, o Samba age como se estivesse operando em modo de nível de usuário. Entretanto, ele encaminha todas as consultas de senha a outro servidor de modo de nível de usuário, que se encarrega da autenticação. Essa configuração pressupõe um parâmetro adicional (password server).

A seleção de segurança no nível de compartilhamento, usuário ou servidor se aplica a todo o servidor. Não é possível oferecer compartilhamentos individuais de uma configuração de servidor com segurança no nível de compartilhamento e outros com segurança no nível de usuário. Entretanto, é possível executar um servidor Samba separado para cada endereço IP configurado em um sistema.

Para obter mais informações sobre esse assunto, consulte a Coleção HOWTO do Samba. No caso de vários servidores em um sistema, preste atenção nas opções interfaces e bind interfaces only.