No estoy seguro de si puedo publicar y tener uno de mi pregunta recién hecha en security.stackexchange y unix.stackexchange o no, pero creo que es apropiado hacer la pregunta aquí también, ya que se trata de la seguridad de usar git server y configurarlo de forma segura y no solo de la configuración típica. Así que aquí es a lo que me he enfrentado con varios problemas durante la configuración, y le agradecería que alguien me ayudara.
Estoy configurando un servidor git, y habrá tres grupos diferentes trabajando en diferentes proyectos iOS , WebDevel , Android . Necesito hacerlo de forma segura.
Mientras tanto, no quiero que los desarrolladores de iOS puedan cambiar las cosas de Android, o viceversa. En otras palabras, quiero restringir cualquier grupo solo a su propio proyecto. (El permiso de lectura no es un problema, pero si puede decirme cómo puedo restringir el permiso de lectura también, le estaré agradecido)
Necesito su ayuda para configurar el servidor de manera que los Desarrolladores puedan usar pull / push / commit a través de SSH a través de su clave pública, ¡pero SOLO para su propio proyecto! ¿Hay una manera de encarcelarlos a su propio directorio de proyectos de repositorio? Por ejemplo, ¿hay una manera de decir siempre que X
usuario con la clave pública de x_id_rsa.pub
o con la solicitud de [email protected]:~/git/iOS
tratando de empujar o extraer datos, debe ser enviado a iOS y no se le debe permitir agregar? ¿Algún compromiso o algo más a otros proyectos?
Y la pregunta final es ¿cómo puedo usar diferentes tipos de políticas para cada directorio de repo de SELinux, y cuán útil puede ser?
Estoy usando CentOS 7, por favor explique en detalles. Estoy abierto a cualquier sugerencia, gracias de antemano.