Samba: Clientes conectados não são afetados por mudanças de acesso de grupo / compartilhamento / usuário

2

Estamos tentando resolver o que percebemos como um problema com o comportamento do nosso servidor Samba. Por favor, entenda que não estamos afirmando que este é um bug no Samba. É simplesmente diferente do comportamento que queremos.

Nosso servidor Samba é a versão 3.5.4 (release 68.el6) e é executado no CentOS 6.0 (x86_64). Acontece que usamos o Active Directory (AD) para autenticar, mas não estou convencido de que esse comportamento seja específico da AD.

O que se segue é uma afirmação generalizada do comportamento indesejável, com o contexto fornecido primeiro como uma sequência de eventos:

  1. Um cliente CIFS estabelece (e mantém) uma conexão com um CIFS compartilhar no nosso servidor Samba.
  2. Após essa conexão ter sido estabelecida, uma alteração de configuração é feito (exemplos fornecidos como marcadores abaixo) que achamos que deve revogar imediatamente o acesso do cliente CIFS ao CIFS conectado compartilhar. Por exemplo:
    • O usuário do Active Directory é excluído do domínio (por meio do Centro Administrativo do Active Directory no controlador de domínio).
    • O usuário do Active Directory é removido da lista de usuários permitidos do compartilhamento CIFS (no host do servidor Samba).
    • O compartilhamento CIFS é excluído (no host do servidor Samba).

Este é o comportamento indesejável. Contanto que o cliente CIFS mantenha a conexão existente com o compartilhamento CIFS, o acesso a esse compartilhamento não será revogado. Ou seja, o usuário continua tendo o mesmo acesso ao compartilhamento do que quando a conexão foi estabelecida pela primeira vez. FWIW, acreditamos que esse comportamento é intencional.

O comportamento desejado é que o acesso seja revogado assim que a “alteração de configuração” pertinente aos direitos de acesso seja finalizada. Desconectar a (s) sessão (ões) do cliente afetada é aceitável e apropriado, mas desconectar outras sessões é indesejável.

Eu gostaria de ter suas idéias em direção a uma abordagem que produzirá o comportamento desejado. Talvez isso seja tão simples quanto mudar a configuração do nosso servidor Samba; Não encontramos nenhum parâmetro de configuração que pareça relevante para esse comportamento. Parece que a arte de detectar que o acesso foi revogado é a parte mais difícil de tudo isso.

    
por Steve Tice 02.04.2012 / 20:02

1 resposta

0

Tenho certeza que isso não é possível no momento, pelo menos não usando a funcionalidade incorporada ao próprio Samba.

Uma solução alternativa pode ser algo como um cronjob que verifica regularmente se todos os processos smbd em uma máquina são de usuários válidos, analisando a saída do utilitário smbstatus para verificar quais usuários estão conectados e quais processos os estão atendendo e verificar esses processos em relação aos usuários no AD. Você pode usar essas informações para eliminar qualquer processo para usuários que não são mais válidos.

    
por 02.04.2012 / 23:52

Tags