força a atribuição de grupo no ambiente sftp chroot

1

Eu tenho a seguinte configuração:

Existem vários usuários / home / user1, / home / user2 e assim por diante. Além disso, há um usuário / home / sftp-all. A pasta / home / sftp-all / shared é montada em todos os outros usuários / diretório home, por exemplo. / home / user1 / shared. Todos os usuários user1, user2, ..., sftp-all são membros de um grupo chamado 'sharegroup'.

Agora, o problema é que, se um desses usuários (usuário1, ...) gravar nessa pasta, o novo arquivo pertencerá ao usuário e ao grupo principal dele (por exemplo, user1: user1, ..). Em vez disso, quero que ele seja de propriedade de user1: sharegroup. Alguma idéia de como resolver isso? Obrigado antecipadamente!

    
por paterpeng 16.11.2013 / 00:19

2 respostas

0

Você deve procurar usar as permissões da ACL no sistema de arquivos. Você pode definir uma permissão "padrão" e vários grupos, usuários, etc.

link

Veja a resposta para este outro post para mais informações:

link

    
por 16.11.2013 / 00:52
1

Defina o bit sgid para que ele esteja ativado no diretório /home/sftp-all/shared e faça o grupo do diretório sharegroup .

$ chmod g+s /home/sftp-all/shared

Por fim, certifique-se de que os arquivos pré-existentes em /home/sftp-all/shared tenham o grupo definido como sharegroup . Isso pode ser feito da seguinte forma:

$ chgrp sharegroup /home/sftp-all/shared/*

Ao definir o xgid bit no diretório, você está forçando o que o próprio grupo possui, dito diretório, a ser propagado sempre que novos arquivos forem criados dentro dele. Essa abordagem só funcionará para arquivos recém-criados, por exemplo, não reforçará a propriedade do grupo se alguém mover arquivos para esse diretório de algum outro lugar do sistema.

No entanto, considerando que isso é um aplicativo de servidor SFTP, não consigo pensar em nenhuma maneira de um usuário poder mover arquivos para esse diretório, fora do SFTP.

    
por 16.11.2013 / 09:06