SFTP jail & Mantendo a propriedade do arquivo o mesmo / proprietário do arquivo por pasta

2

Eu quero configurar uma conta SFTP presa para uma subpasta da pasta base de outro usuário, mas quero que o proprietário de tudo nessa subpasta permaneça o mesmo, incluindo novos arquivos e pastas carregados e criados pelo usuário sftp, enquanto ainda permitindo acesso aos arquivos e pastas dessa subpasta como se o usuário do SFTP fosse o usuário pai.

rawny bawb-sftp / home / rawny < - rawny possui este / home / rawny / sftp < - o rawny é dono disso também, mas o bawb-sftp pode fazer upload para ele, editar arquivos, etc

bawb-sftp carrega um arquivo /home/rawny/sftp/lol.txt O rawny ainda deve possuir o arquivo, como se ele tivesse feito isso em primeiro lugar, mesmo que o bawb-sftp tenha sido o responsável por ele.

Basicamente, eu acho que estou pedindo uma prisão sftp que atue como uma passagem / fantoche altamente limitada para outro usuário?

    
por Dragonshadow 29.06.2011 / 01:32

1 resposta

1

Assumindo o Linux, usar um grupo é um caminho a seguir. Crie um grupo contendo rawny e bawb-sftp e use chgrp thatgroup /home/rawny/sftp (assumindo que começando com um diretório vazio, adicione um -R para recursivo).

Em seguida, defina os bits suid e sgid no diretório e conceda ao usuário e ao grupo rwx acesso: chmod 677? /home/rawny/sftp (substitua o? pelo que quer que seja o acesso mundial. As opções comuns são 5 (rx) 1 (x ) e 0, dependendo se você quer que alguém mais acesse ou não. Se a pasta não estiver vazia, não use -R, você precisará aplicar o suid / sgid / x bits para cada pasta individualmente.

Os bits suid / sgid, quando usados em diretórios no Linux, fazem com que os arquivos e subdiretórios recém-criados sejam automaticamente pertencidos / agrupados da mesma forma que o diretório (os subdiretórios também serão suid / sgid) para que todos os arquivos sejam criados em /home/rawny/sftp será de propriedade de rawny e em thatgroup so bawb-sftp poderá acessá-los. Observe que umask pode precisar ser modificado para criar arquivos com permissões de gravação em grupo ( veja aqui, mas use com umask 00? onde? É 2 6 ou 7 correspondendo as escolhas anteriores)

    
por 29.06.2011 / 04:45