Como configurar o usuário git para repositórios graváveis em grupo e acesso SSH?

0

Estou configurando um servidor Git no Ubuntu 14.04 LTS. Eu preciso do servidor para suportar os protocolos SSH e HTTP.

Até agora segui as instruções em o Git Book para que meu servidor suporte o protocolo SSH.

Para suportar o protocolo HTTP, estou conectando o pushover ao meu servidor web existente. Como o servidor da Web está sendo executado como um usuário diferente, ele não poderá gravar nos repositórios principais, que são de propriedade do usuário "git". Então eu adicionei meu usuário do servidor web ao grupo "git" e fiz um chmod -R g+w /home/git e obtive o protocolo HTTP para funcionar. No entanto, ao fazer isso, eu inadvertidamente interrompi o acesso SSH aos repositórios, já que o OpenSSH não permite que o diretório home de um usuário seja gravável em grupo.

Há algumas coisas que pensei em resolver esse problema.

  1. Altere as opções de configuração de SSH globais, definindo um local de AuthorizedKeysFile personalizado ou definindo StrictModes no . Eu não quero fazer nenhuma dessas coisas porque as mudanças afetam meus outros usuários SSH não-git.
  2. Remova privilégios de gravação do grupo do diretório inicial do usuário do git e, em seguida, escreva um script que inclua manualmente privilégios de gravação do grupo em novos repositórios. Isso provavelmente funcionaria, mas não parece ser uma solução muito elegante.

Alguma sugestão de como estruturar meu sistema de arquivos para permitir repositórios git graváveis em grupo enquanto, ao mesmo tempo, mantêm o acesso SSH?

    
por sffc 07.01.2015 / 16:20

0 respostas