Como manter o arquivo / pasta ownserhip e permissões ao longo do tempo?

6

Temos pastas em vários dos nossos servidores (Debian) que requerem que vários usuários (reais e do sistema) possam ler e / ou escrever. Criamos um modelo específico de permissão e propriedade de arquivos que deixa todo mundo feliz, mas, por diversos motivos, esse modelo se desfaz ao longo do tempo à medida que os usuários modificam as coisas.

Nós tentamos definir coisas como a umask e definimos bits pegajosos na permissão do grupo, na tentativa de manter permissões e propriedades corretas, mas esses esforços não costumam ser suficientes.

O ideal seria especificar nossas permissões de arquivo e modelo de propriedade em um arquivo de configuração e ter um daemon que imponha esse modelo. Existe algo assim?

(Googling sugeriria não, mas eu preferiria não reinventar a roda se isso já foi resolvido)

    
por Torrance 27.02.2013 / 00:30

3 respostas

3

Para responder a minha própria pergunta aqui, eu escrevi um pequeno daemon que aceita um arquivo de configuração YAML simples e, em seguida, impõe a propriedade do arquivo, o grupo e as permissões. É chamado reforçado ( link ) - você precisará de Go (golang) para construí-lo.

Ele faz uma pesquisa inicial das pastas em configuração e, em seguida, configura-se para observar qualquer alteração de arquivo, corrigindo imediatamente quaisquer arquivos que sejam alterados.

Espero que seja de ajuda para outra pessoa.

    
por 28.02.2014 / 02:53
2

Você pode usar o fam (o daemon de monitoramento de alteração de arquivo) para ser notificado sempre que um arquivo for modificado (esse é o evento fam relatado se os direitos de acesso forem alterados). Então você pode stat o arquivo, verifique se apenas o mtime mudou ou ctime e redefinir os direitos de acesso, se necessário.

Se não for necessário que os usuários sejam capazes de alterar os direitos de acesso, você pode esperar por eventos de criação de arquivos (muito menos), alterar o proprietário do arquivo, redefinir os direitos de acesso e terminar: Nunca mais problemas com este arquivo.

Estranho: Pelo menos para o meu conhecimento, o Linux não oferece restrições sobre alterações de acesso correto.

Esse problema também pode ser usado por um sistema de arquivos FUSE que apenas modifica os direitos de acesso. Eu não sei se algo assim já existe, mas existem tantos módulos FUSE que vale a pena conferir.

    
por 27.02.2013 / 03:27
0

Acho que um script bash em execução de crontab seria minha resposta para esse problema singular.

Desde que você afirmou que as permissões de arquivos ficam confusas de tempos em tempos, definir um deamon, ou mesmo fam, para verificar se há mudanças de permissão o tempo todo seria "overkill" (IMHO).

Definir um cron job para executar e corrigir as permissões uma vez por semana, ou até mesmo uma vez por dia, seria bom.

    
por 27.02.2013 / 03:30