Configuração "automágica" de servidor Linux PDC Samba

Apresentamos uma configuração de servidor Linux Samba com autenticação centralizada (PDC) por meio de um programa configurável escrito em shell script. Aplicamos algumas restrições de segurança e procuramos estabelecer padrões de configuração passíveis de serem modificados, de acordo com as necessidades dos administradores.

[ Hits: 35.981 ]

Por: lourival araujo da silva em 18/09/2008


Considerações iniciais



A ampla maioria dos documentos escritos sobre a configuração de servidores de autenticação destaca os parâmetros do arquivo de configuração do servidor (/etc/samba/smb.conf). Evidentemente com razão, pois erros na configuração do referido arquivo impossibilitam o funcionamento do servidor ou geram inconsistência no acesso aos compartilhamentos.

Pretendemos trabalhar neste artigo com as permissões adequadas no sistema de arquivos do servidor que correspondem ao arquivo de configuração (smb.conf).

Começamos por definir a política de segurança de acesso ao servidor PDC, para que este se torne mais seguro. E, para isso, organizamos a construção do servidor de arquivos com o uso medidas restritivas comuns a uma política de segurança organizacional. Tratamos dos seguintes tópicos:
  1. O servidor necessita possuir arquivos compartilhados em diretórios de uso geral (público), com permissão de leitura e gravação para todos;
  2. O servidor necessita possuir arquivos compartilhados em diretórios de uso específico (seções ou departamentos), com permissão de leitura e escrita para os membros do grupo e sem permissão de leitura para usuários de outros grupos;
  3. O servidor necessita possuir arquivos compartilhados em um diretório geral (notícias), com permissão somente de leitura para todos; (salvo aqueles com permissão de incluir as notícias. :)
  4. O servidor precisa possuir um diretório para compartilhamento a ser usado no logon dos usuários (netlogon);
  5. O servidor pode utilizar um diretório para armazenamento de perfis de usuários da rede (profiles);
  6. Somente máquinas pertencentes à rede da organização devem ter acesso aos compartilhamentos do servidor.

Definidas as linhas da política de acesso, podemos optar por duas possibilidades de construção do servidor:

Opção a) criar um script de instalação/restauração (restaure_samba.sh) com as configurações iniciais de instalação para ser utilizado na instalação inicial e ser executado em caso de crash do servidor, recuperando a instalação inicial.

Opção b) criar um programa interativo a ser utilizado na instalação e configuração do servidor e dos clientes.

Ambas as opções possuem vantagens e inconvenientes. Trabalharemos, no momento, com a construção do servidor por meio do script de restauração.

    Próxima página

Páginas do artigo
   1. Considerações iniciais
   2. Construção do servidor
   3. Ações interativas
   4. Script resultante
   5. Operação salvamento
Outros artigos deste autor

Bom escudo não teme espada: o módulo pam_cracklib

Autenticação via hardware: o módulo pam_usb

webCalendar: a agenda e o PAM

Mudança de hábito: autenticando usuários em base de dados MySQL

Autenticação via hardware: o módulo pam_blue

Leitura recomendada

Metasploit Exploitation

Segurança extrema com LIDS: novos recursos

Instalando um firewall em ambientes gráficos leves

Desafio: Análise Forense Computacional - Forense em Tráfego de Rede [Resolvido]

Entendendo o que é Engenharia Social

  
Comentários
[1] Comentário enviado por lbruni em 18/09/2008 - 13:30h

Tava precisando de algo assim para criar um PDC e fazer as máquinas windows logarem nele... o problema é q as máquinas windows XP não estão aceitando o PDC linux como domínio... como eu faço isso? Já ví arquivos .reg para executar nessas máquinas mas nunca deu certo... me dá uma luz nisso também???

Valeu!

[2] Comentário enviado por araujo_silva em 18/09/2008 - 23:20h

Caro lbruni,

Existem duas formas para contornar esse problema (não sei a versão do service pack instalado):
a) alterar: painel de controle > sistema > nome da maquina > (workgroup || dominio). Em alguns casos incluir a opção workgroup funciona nas maquinas WinXP.
b) teste no servidor: $ testparm (verificar a coerencia do arquivo smb.conf); $ smbstatus (verifica os clientes e maquinas logados no servidor); $ smbclient -L localhost -U usuariowindows%senha (verifica os compartilhamentos visiveis para o usuario considerado);
teste em um cliente Linux: $ smbmount //servidor/publico /mnt/publico -o username=usuariowindows,password=senhadowindows (testa se o usuario do dominio consegue realizar montagens).
Verifique os logs, e reporte as falhas.
Abraços,
Lourival

[3] Comentário enviado por metall em 21/09/2008 - 22:45h

Gostaria de saber se tem como fazer o linux ligar no PDC ?
estou precisando com urgencia... se alguem souber da um toque...

Abraço.

[4] Comentário enviado por araujo_silva em 22/09/2008 - 10:00h

Caro metall

Existem algumas formas. Estaremos disponibilizando um programa interativo para operar com cliente e usuário de domínio com o samba.
As operações envolvem juntar o seu Linux ao domínio (primeiro verifique se está no domínio):
$ net rpc testjoin seudominio
$ net rpc join -S server -U admin
$ wbinfo -u
$ wbinfo -g
Existem vários arquivos (/etc/pam.d) a serem editados, verifique o arquivo que configura o programa login (/etc/pam.d/login). Deve existir pelo menos duas linhas com o módulo winbind:
auth sufficient pam_winbind.so
auth required pam_unix.so use_first_pass

account sufficient pam_winbind.so
account required pam_unix.so use_first_pass

session optional pam_mkhomedir.so skel=/etc/skel umask=0022
session optional pam_limits.so

password sufficient pam_winbind.so
password required pam_unix.so try_first_pass

(Nesta configuração o sistema priorizará a autenticação no domínio, somente se falhar buscará autenticação local).
Não esqueça de consultar o arquivo de seleção de base de autenticação (/etc/nsswitch.conf), ao menos três linhas têm que possuir a base NT (modulo winbind) como referência:

passwd: compat winbind
group: compat winbind
shadow: compat winbind

Leia os arquivos de log (/var/log/auth.log) eles ajudam a corrigir as falhas.

Abraços,

Lourival


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts