Samba - PDC com Debian e Clamwin antivírus sincronizado nas estações

Passo a passo para a montagem de um servidor Samba PDC no Debian 3.1 em modo texto e a personalização do servidor para auto-configurar o ClamWin antivírus nas estações, fazendo com que ele se atualize automaticamente, efetue verificações agendadas e informe no e-mail do administrador os vírus encontrados.

[ Hits: 130.408 ]

Por: Tiago André Geraldi em 27/07/2006


Instalação e configuração do Samba



Já que o artigo é dedicado ao Debian, vamos utilizar os próprios repositórios da distribuição para instalar o servidor Samba:

# apt-get install samba

O mesmo comando serve para distribuições derivadas como o Conectiva e Ubuntu. Se ainda preferir, baixe o código fonte no site oficial (www.samba.org) e compile, mas isso não será tratado aqui.

Ao término o Samba já estará instalado. Agora vamos configurá-lo...

Os arquivos de configuração do Samba estão no diretório /etc/samba, podendo variar de acordo com a distro. O principal arquivo é o smb.conf. Como base, abaixo segue o meu smb.conf comentado para que você o adapte a sua rede.

No decorrer do arquivo você encontrará referências a usuários e grupos. A manipulação desses usuários será tratado no próximo capítulo.

Segue o arquivo /etc/samba/smb.conf:

#
# SERVIDOR SAMBA PDC - DEBIAN GNU/LINUX
#
# POR TIAGO ANDRÉ GERALDI
#


[global]
# Na sessão Global está definido a forma como o
# servidor samba irá funcionar.
# Acompanhe com atenção cada campo...

# No workgroup vai o nome do grupo de trabalho ou Domínio,
# No nosso caso, sendo um PDC, é o nome de Domínio.
workgroup = empresa

# netbios name, o nome do servidor na rede
netbios name = SERVER

# A descrição do servidor para a rede
server string = PDC SERVER LINUX

# Usuário Administrador de Domínio.
# Esses usuários serão administradores do domínio.
# São eles que adicionaram os hosts Windows no domínio
# entre outras funções administrativas.
# Pode ser informado vários usuários
# separados por espaços e /ou grupos. No exemplo, usuários
# tiago, darci e o grupo cpd serão os administradores

admin users = tiago darci @cpd

# O PDC é um servidor de data e hora ?
# habilitamos essa função e posteriormente faremos os
# computadores da rede sincronizar seu relógio com o servidor
time server = yes

# No caso de haver mais de um PDC na rede, de repente um
# servidor Windows NT, as próximas linhas
# dizem se este servidor é o principal PDC e em OS LEVEL
# o valor de concorrências com os outros.
# Deixe assim como está se só houver um PDC na rede.
preferred master = yes
domain master = yes
os level = 100

# O Servidor aceitará Logon dos usuários nas estações
domain logons = yes
local master = yes

# As próximas duas linhas referem-se aos diretórios
# onde seriam armazenados os profiles dos usuários.
# No nosso caso, o servidor não guardará essas informações,
# elas ficaram salvas localmente em cada estação, por isso
# as tags ficam vazias.
        logon path =  
logon home =

        logon script = todos.bat
# Script a ser executado pelos usuários quando fizerem logon.
# Os scripts deverão estar dentro da pasta NETLOGON que
# veremos adiante o seu compartilhando, também devem ser .bat
# para que o Windows possa executá-lo.
# Neste caso temos um único script para todos os usuários,
# Você pode definir scripts individuais com o nome do usuário
# ex: tiago.bat. Aqui na configuração coloque:
# logon script = %u.bat
# ou ainda conforme o grupo do usuário
# logon script = %g.bat


security = user
# Security: nível de acesso, pode ser user ou share.
# User, temos um controle de autenticação por usuário, cada
# usuário tem suas permissões de acesso. Já como share,
# temos um compartilhamento simples onde todos acessam
# tudo sem nenhum controle.

# O servidor aceitará usuários sem senha?
# Eu prefiro deixar No
null passwords = no

# Habilita senhas criptografadas, é importante a habilitação
# para compatibilidade com Windows 2000 e XP
encrypt passwords = true

# Corrige acentuação dos arquivos compartilhados
unix charset = iso8859-1
        display charset = cp850

# IPs ou hostnames dos micros da rede
# importante para a segurança, evita conexões indesejadas.
# A classe de IPs da minha rede é 10.1.0.0 talvez a sua
# seja 192.168.0.0, mude de acordo. 127. diz respeito
# ao localhost, o próprio servidor.
hosts allow = 10.1.0. 127.

# arquivo de log do samba
log file = /mnt/sda7/logs/samba/log.%m

# tamanho máximo do arquivo de log em KBs
max log size = 10000

# Nível de detalhes do arquivo log
# altere de 1 a 5 e verifique as diferenças      
log level = 2
debug level = 2

##########################################
### Aqui finda a seção homes. Agora em diante vem os
### compartilhamentos e suas configurações.
###########################################

# O compartilhamento netlogon é obrigatório
# nele ficará os scripts de logon dos usuários.
# Defina o path, especificando onde está a pasta netlogon
# não esqueça de criá-la também depois.
# Estamos definindo abaixo que o compartilhamento não
# será navegável e que será somente leitura.
[NETLOGON]
comment = Serviço de logon
path = /mnt/sda7/netlogon
browseable = no
read only = yes

# Criamos abaixo um compartilhamento público para todos
# acessarem livremente e trocarem arquivos. Ele é
# navegável (browseable=yes), arquivos somente leitura
# podem ser apagados (delete readonly=yes), gravável
# (writable), publico (usuários anônimos também acessaram) e
# disponível (available). Em veto files, defini extensões
# de arquivos que não poderão gravadas, afim de evitar
# abusos. Em create mode, está definido que os arquivos
# criados poderão ser alterados por qualquer um, não
# somente pelo dono, exemplo diferente você verá mais abaixo
[publico]
browseable = yes
delete readonly = yes
writable = yes
path = /mnt/sda7/publico
create mode = 0777
available = yes
public = yes
veto files = /*.mp3/*.wma/*.wmv/*.avi/*.mpg/*.wav/

# O compartilhamento abaixo segue a mesma estrutura,
# a diferença é que só os usuários do grupo adm
# poderão acessá-lo.
[administracao]
    path = /mnt/sda6/adm
    available = yes
    browseable = yes
    create mode = 0777
    writable = yes
    valid users = @adm

        
# Abaixo temos um compartilhamento com force file mode=700,
# desta maneira os arquivos criados só poderão ser lidos ou
# alterados pelo usuário que os criou.  
[bkps]
    path = /mnt/sda7/bkps
    available = yes
    browseable = yes
    writeable = yes
    force file mode = 700
veto files = /*.mp3/*.wma/*.wmv/*.avi/*.mpg/

# Agora é só ir criando os compartilhamentos que você precisa
# da mesma maneira. Repare que não temos a seção Homes
# comumente vista nos exemplos de smb.conf porque realmente
# não vamos precisar dela.
Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Instalação e configuração do Samba
   3. Criando grupos e usuários
   4. Baixando e instalando o Clamwin nas estações
   5. Escrevendo scripts de logon
   6. Executando o Samba e adicionando as estações
Outros artigos deste autor

Ubuntu, simplesmente poderoso

Mandriva 2006 - Configurando servidor proxy transparente completo

Backup de arquivos das estações de sua rede com Samba PDC

Leitura recomendada

Samba: Servidor de impressão e introdução a PDC (Primary Domain Controller)

Autenticando cliente Linux Ubuntu 8.10 no PDC Samba com perfil móvel

Samba - Configurado como PDC

Instalando e Configurado a ferramenta Swat no Debian

Slackware 13 com Samba PDC completo

  
Comentários
[1] Comentário enviado por removido em 28/07/2006 - 13:33h

Da no mesmo que ter um AVG ou Avast. seria interessante se pegasse as atualizaçoes do servidor PDC .

[2] Comentário enviado por virgulla em 28/07/2006 - 14:14h

Sim, porém deve se lembrar que o AVG e o Avast são antivirus pagos. Quanto as autualizações, não há grandes problemas porque são arquivos muito pequenos, a atualização ocorre muito rapidamente, mesmo assim, a solução prática seria um proxy com cache na rede, uma estação se atualiza e as demais apenas buscam no proxy.

[3] Comentário enviado por rodrigobassani em 28/07/2006 - 20:10h

Foi de muita valia pra mim tirar idéias pra fazer um novo script! Valeu

[4] Comentário enviado por econt_linux em 31/07/2006 - 10:00h

Otimo artigo!

Eu já faço instalação de servidores dessa forma a algum tempo, e realmente é uma maravilha!

Parabéns.


Cledson

[5] Comentário enviado por laeciocosta em 16/10/2006 - 12:47h

Olá, muito bom o artigo.

Mas uma dúvida, como posso adicionar grupos de trabalho no domínio, para que possa organizar os host´s por grupo de cada setor da empresa?

Abraços,

Laécio Costa

[6] Comentário enviado por k34z0 em 26/02/2007 - 11:56h

Excelente artigo.....

Parabéns.....

testado no Debian-CDD-BR ....

[7] Comentário enviado por renatomizani em 03/04/2007 - 17:56h

Muito bom este artigo, como faço para verificar quais máquinas já estão cadastradas.

testado no Conectiva 10...

[8] Comentário enviado por virgulla em 04/04/2007 - 14:33h

basicamente voce pode olhar no arquivo /etc/smbpasswd as linhas cujo nome termina com $, porém nao é pratico já que o arquivo mistura os usuarios normais tambem. Você algum filtro no comando cat para ele exibir apenas as maquinas, mas sei ao certo como fazer. Outra solucao é usar um configurador web para o samba, o Swat ou Webmin, neles voce vai poder listar facilmente varias informacoes.

[9] Comentário enviado por fernandoborges em 05/11/2007 - 15:31h

Brother,
Primeiramente parabéns pelo tutorial. Gostaria de saber se há como eu montar um repositório das atualizações no meu PDC Debian em minha rede interna. Ela não acessa a Internet, logo os clientes não têm como atualizar o antivirus. Pensei em baixar as atualizações e aplicá-las numa pasta no PDC, de onde as estações fariam o download das atualizações. Teria como fazer isso??? Obrigado...

[10] Comentário enviado por shadowfox em 07/11/2007 - 15:32h

Pessoal... Tem cmo atualizar o banco de dados de virus nas maquinas tb... Instala o clamav no servidor, ativa o crontab diario para atualizar o clamav executando o freshclam. Depois é só copiar o daily.cvd e main.cvd do diretório /var/lib/clamav/ para o diretorio %profile%/.clamwin/db usando o todos.bat na hora do logon.

hehehehe.. Isso até rola como dica para o site!!!!

Jah jah mando!!!

[11] Comentário enviado por prgs.linux em 26/02/2008 - 16:44h

Parabens pelo tutorial..............tinha um bom tempo que procurava um anti virus que gerenciasse estaçoes win.................VALEU ........



[12] Comentário enviado por osmarklein em 28/02/2008 - 09:38h

Parabéns pelo Artigo!! Eu uso o Debian em dois servidores distintos e estou fazendo os testes baseado no seu artigo para eliminar meu Win2K Server PDC da rede.
Eu tenho no W2KServer uma opção de definir horários para logon de usuários no domínio. É possível fazer isto no Samba PDC?

Grato desde já!!!!


[13] Comentário enviado por lipecys em 17/04/2008 - 08:41h

Sem dúvidas foi pro favoritos.

[14] Comentário enviado por malaka em 30/11/2010 - 22:19h

Amigo parabéns!! Muito bom seu artigo. Como sou novato tenho algumas duvidas

logon path =
logon home =

Por qual motivo voçê grava o profile no host e não no servidor?
e qual serial o comando para adicionar e excluir usuário de um grupo já existente.

Abraços
Malaquias


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts