Visite também: UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  Dicas-L ·  NoticiasLinux ·  SoftwareLivre.org ·  [mais] ·  Efetividade ·  Linux in Brazil ·  Floripa  

Exemplo de configuração de um PDC Samba com quotas de disco

O leitor Djames Suhanko (djames.suhankoΘgmail.com) enviou uma descrição detalhada do seu procedimento para instalação de um PDC baseado em Samba, com suporte a quotas de disco. Veja abaixo a íntegra do texto.


PDC em 20 minutos
por Djames Suhanko (djames.suhankoΘgmail.com)

Este howto descreve o procedimento para se ter um Linux PDC com quota de
disco, de uma forma simples e direta. Mesmo que você não compreenda, mas
execute exatamente o que está descrito aqui, acredite, você terá um domínio
funcionado - inclusive dele, foi feito laboratório.

Os testes foram executados em Conectiva 10 e Mandriva LE 2005.

1 - Composição do arquivo smb.conf para atuar como PDC
2 - Adicionando usuá¡rios
3 - Configuração de quotas locais
4 - Configuração das estações
5 - Dependências:
5.1 - samba-server
5.2 - samba-doc
5.3 - quota


1- Composição do arquivo smb.conf

# parâmetros globais
# O domí­nio terá o nome do workgroup
#Nome na rede (netbios)
#Uma frase descritiva
#Nível de log

[global]
workgroup = URANET
netbios name = SRVUSERS
server string = Linux PDC
log level = 3

#Submeter o usuário samba aos direitos do usuário Linux
#3 linhas de parâmetros de domí­nio
#Script de logon por usuário

force user = %U
domain master = yes
preferred master = yes
local master = yes
domain logons = yes
logon script = %U.bat

#segurança
# senhas criptografadas
#nível de disputa

security = user
encrypt passwords = yes
os level = 100

#Arquivos que são proibidos e serão deletados

veto files
= /*.aif/*.avi/*.cpl/*.mid/*.mov/*.mpa/*.mpe/*.mp3/*.mpeg/*.mpg/*.rar/*.scr/*.vbe/*.vbs/*.wav/*.wma/*.wmv/*.pif/*.bat/*.exe/
delete veto files = yes


# Especificar um "logon path" sem caminho, evita armazenar dados
#do usuário no servidor, além de não gerar mensagem de erro.

logon path =

# Netlogon - caminho e modo de acesso ao logon

[netlogon]
comment = Servico de logon
path = /var/samba/netlogon
guest ok = Yes
browseable = No

# Um diretório público acessí­vel por todos

[publico]
comment = Diretorio publico
path = /mnt/usuarios
guest ok = no
public = yes
writeable = yes
browseable = yes
directory mask = 0777
create mask = 0777


2 - Adicionando usuários

Primeiramente cadastre o root no samba:
smbpasswd -a root

Crie o caminho do netlogon e ajuste suas permissões:
mkdir -p /var/samba/netlogon
chmod 775 /var/samba/netlogon

Adicione localmente o usuário que fará login por samba:
adduser jose
smbpasswd -a jose

É necessário criar contas de máquinas. A conta deve ser criada com o nome real
das máquinas que farão login no domí­nio - No exemplo será criada uma
máquina com o nome de recepcao.
O diretório home será apontado para /dev/null e o shell para /bin/false, afim
de aumentar a segurança. Note que é fundamental inserir o simbolo $ para nome
de máquina:

useradd -d /dev/null -s /bin/false recepcao$

Agora, travar a senha da máquina:
passwd -l recepcao$

Nesse linha abaixo não se deve adicionar o sí­mbolo $ - aqui a máquina é
identificada pela flag "-m" (de "machine"):
smbpasswd -a -m recepcao

Neste exemplo, para cada usuário será criado um script de logon, sendo
possível ter um total controle sobre o que será executado em cada máquina
durante o logon:

Para o usuário jose, gere então um arquivo jose.bat
em /var/samba/netlogon/jose.bat. Um exemplo de conteúdo:

net use z: \\SRVUSERS\publico /yes
net time \\SRVUSERS /set /yes
notepad.exe

Isso fará um mapeamento em z: para a pasta pública no login do jose,
sincronizará o horário da máquina local com o servidor e rodará o programa
notepad.exe.

3 - Configuração de quotas locais
A quota deverá ser configurada localmente. Os usuários cadastrados no samba
devem estar cadastrados no sistema, porém no sistema esses usuários não
precisam possuir senha e por conseqüênte, não poderão fazer login de usuário
Linux.
As quotas funcionam bem em ext2 e ext3, além de funcionar em qualquer Linux
com kernel 2.6 e algumas versões do kernel 2.4 sobre reiserfs.

No fstab, deve haver uma modificação na linha de parâmetros da partição que se
submeterá a quotas. No exemplo, a partição raiz:
/dev/hda2 / reiserfs notail,usrquota,grpquota 1 1
Apenas foram adicionados os parâmetros usrquota e grpquota

Devem ser criados na raiz da partição escolhida os arquivos "quota.user" e
"quota.group" no Conectiva 10. Já no caso do Mandriva, os arquivos devem se
chamar "aquota.user" e "aquota.group":
cd /
touch quota.user quota.group

Inicializando quotas:
mount -o remount /
quotacheck -avug
quotaon -avug

Reinicialize o sistema, em todo o caso.
Insira as regras de quota:

edquota jose
Soft = Espaço máximo que pode ser utilizado em disco. No exemplo, 2MB (2048).
Hard = Se um arquivo for salvo e possuir um tamanho maior que o espaço
permitido, essa é a tolerância. No exemplo, 3MB (3072).
Só devem ser mudados os primeiros 2 parâmetros.

Disk quotas for user quota (UID 501):
Filesystem blocks soft hard inodes soft hard
/dev/hda2 36 2048 3072 9 0 0

A linha force user no arquivo smb.conf fará com que o usuário jose cadastrado
no samba respeite os limites de quota. Sem essa linha, as quotas não surtirão
efeito e o usuário escreverá em disco sem limitações lógicas.

4 - Configuração das estações

Antes de colocar as estações no domí­nio, é preciso alterar o registro do
Windows. O samba-doc contém um arquivo .reg pronto para fazer a modificação,
bastando copiá-lo para a estação e clicar sobre ele. No exemplo, a
modificação será feita em uma estação Windows XP professional:
1 - Localize o arquivo no linux:
rpm -qla samba-doc |grep WinXP_SignOrSeal.reg

Por fim, coloque a estação no domí­nio, clicando com o botão direito em "Meu
Computador" > Propriedades > Nome do Computador.

No Mandriva, o login no domínio foi feito pelo "ID de Rede". No Conectiva10,
clicando em "Alterar" para ingressar em um domínio.

O primeiro login que aparece é a solicitação de uma conta que tenha permissão
de ingressar a máquina no domí­nio - logo, o usuário root, que foi
inicialmente inserido como usuário samba.

5 - Dependências
As dependências são:
5.1 - samba-server - servidor samba
5.2 - samba-doc - os arquivos para a alteração do registro de sistemas Windows
se encontram dentro deste pacote.
5.3 - quota - Para controlar o uso de disco.

O exemplo de limitação é inválido na vida real, claro. A tolerância se dá ao
fato de o usuário escrever um documento que ultrapasse um pouco seu limíte.

Autor: Djames Suhanko (djames.suhankoΘgmail.com)

BR-Linux.org
Linux® levado a sério desde 1996. Notícias, dicas e tutoriais em bom português sobre Linux e Código Aberto. "A página sobre software livre mais procurada no Brasil", segundo a Revista Isto É.
Expediente
Sobre o BR-Linux
Enviar notícia ou release
Contato, Termos de uso
FAQ, Newsletter, RSS
Banners e selos
Anunciar no BR-Linux
BR-Linux apóia
LinuxSecurity, Tempo Real
Suporte Livre, Drupal
Verdade Absoluta
Pandemonium
Efetividade, Floripa.net
sites da comunidade
Ajuda
Moderação
Flames: não responda!
Publicar seu texto
Computador para Todos
Notícias pré-2004
Tutoriais, HCL pré-2004