02/08/05 23:54 #1446
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)
(postado por
Augusto Campos)