Servidor Git privado en Linux
Hay varias formas de alojar tu propio servidor Git. Esta guía cubre la opción más sencilla — un repositorio bare accedido por SSH — que funciona bien para equipos pequeños de confianza. Para una interfaz web completa con pull requests y gestión de issues, consulta la sección de alternativas modernas al final.
Repositorio bare por SSH
Todos los colaboradores necesitan acceso SSH al servidor y Git instalado en ambos lados (apt install git / dnf install git).
Preparar el servidor
Crear un grupo para los colaboradores:
groupadd git-users
Crear un usuario del sistema para cada colaborador y asignarlo al grupo:
useradd -m -g users -G git-users -s /bin/bash contributor1
passwd contributor1
Repetir para cada colaborador.
Crear el repositorio
mkdir -p /srv/git-repos
git init --bare /srv/git-repos/project.git
chown -R root:git-users /srv/git-repos/
chmod -R g+rwX /srv/git-repos/
g+rwX da al grupo acceso de lectura y escritura, y establece el bit setgid en los directorios para que los archivos nuevos hereden el grupo automáticamente.
Clonar y hacer push
Desde la máquina de un colaborador, clonar el repositorio:
git clone contributor1@tu-servidor:/srv/git-repos/project.git
O añadirlo como remoto a un repositorio local existente:
git remote add origin contributor1@tu-servidor:/srv/git-repos/project.git
git push -u origin main
Autenticación por clave SSH (recomendado)
El acceso por contraseña funciona, pero las claves SSH son más seguras y permiten la automatización. En la máquina de cada colaborador:
ssh-keygen -t ed25519 -C "contributor1"
ssh-copy-id contributor1@tu-servidor
Alternativas modernas — Gitea y Forgejo
Si necesitas una interfaz web con pull requests, gestión de issues, administración de usuarios y navegación de repositorios, las dos opciones líderes de alojamiento propio son:
- Gitea — ligero, binario único, funciona en cualquier servidor Linux o como contenedor Docker
- Forgejo — fork comunitario de Gitea con énfasis en la gobernanza abierta
Ambos usan por debajo el mismo flujo de trabajo Git por SSH, así que se puede empezar con el enfoque de repositorio bare descrito arriba y migrar a Gitea/Forgejo más adelante sin perder el historial.
Última actualización: 26 de junio de 2026
Por: Guillermo Garron