Git e SFTP - Como separá-los?

4

Nós temos um servidor de desenvolvimento local com o Ubuntu 14.04. Usamos SFTP com vsftp e Git.

Alguns colegas de trabalho têm acesso por SFTP (sem acesso ssh, /usr/bin/nologin e sftponly group), e outros colegas de trabalho têm acesso ao host Git (nome de usuário diferente, shell como /usr/bin/git-shell ).

Eu quero criar o seguinte ambiente: acesso SFTP para desenvolvedor front-end da Web (colegas de trabalho externos) e acesso ao Git (por ssh: //) para nosso desenvolvedor de back-end (colegas de trabalho internos ou externos).

O usuário do SFTP é chrooted e isso funciona perfeitamente.

O problema é com o Git - se os usuários tiverem acesso via ssh: // ao repositório git, eles ao mesmo tempo terão acesso a todos os diretórios do sistema via SFTP.

Como usar SFTP e Git no mesmo sistema sem acesso SFTP para usuários Git?

PS. Eu leio quase todos os resultados do Google, mas as soluções não funcionam ou são tão antigas ou aconselho a desativar o SFTP.

    
por guntbert 04.02.2015 / 16:00

1 resposta

2

Publicação atualizada:

Usar o seguinte ForceCommand em sshd_config para o usuário (caso contrário normal) deve funcionar:

ForceCommand /usr/bin/git-shell -c "$SSH_ORIGINAL_COMMAND"

Este pequeno comando mágico foi originalmente encontrado aqui . Observe que o shell do usuário deve ser um shell com todos os recursos normais para que isso funcione corretamente.

Motivo da edição:

Acabei de perceber que minha resposta inicial não funcionou para mim ( tão embaraçosa ). Claro que desabilita o SFTP, mas parece impedir que o git também funcione corretamente!

postagem original:

  

Tente usar um ForceCommand e use o git-shell para o comando também. O ForceCommand desabilita o sftp, a menos que seja definido como interno-sftp. - muru

Apenas decidi citar o muru comentário para que outros possam se beneficiar dele. Funciona como um encanto.

Eu estava tendo exatamente o mesmo problema e quase perdi essa gema, pois ela estava nos comentários em vez de ser postada como resposta.

    
O
por thejonwithnoh 03.01.2017 / 16:07

Tags