configuration - permitir - Gitlab con puerto SSH no estándar(en VM con reenvío Iptable)
iptables linux firewall (3)
En las versiones empaquetadas de Omnibus puede modificar esa propiedad en el archivo /etc/gitlab/gitlab.rb
:
gitlab_rails[''gitlab_shell_ssh_port''] = 766
Entonces, necesitarás reconfigurar GitLab:
# gitlab-ctl reconfigure
Sus URI se mostrarán correctamente como ssh://[email protected]:766/group/project.git
en la interfaz web.
Mi gitlab
está en una máquina virtual en un servidor host. Llego a la máquina virtual con un puerto SSH no estándar (es decir, 766
) que una regla iptable luego reenvía desde el host:766
a vm:22
.
Así que cuando creo un nuevo repositorio, las instrucciones para agregar un control remoto proporcionan una URL mal formada (ya que no usa el puerto 766
Por ejemplo, la interfaz web me da esto:
Malformado
git remote add origen [email protected]: group / project.git
En lugar de una URL que contenga :766/
antes del grupo.
Bien formado
git remote add origen [email protected]: 766 / group / project.git
Entonces, cuando creo un repositorio, tengo que hacer la modificación manualmente, lo mismo para mi colaborador. Cómo puedo arreglar eso ?
si configura ssh_port correctamente en config / gitlab.yml, las páginas web mostrarán la url de repo correcta.
## GitLab Shell settings
gitlab_shell:
...
# If you use non-standard ssh port you need to specify it
ssh_port: 766
PD. la URL correcta es: ssh: //[email protected]: 766 / group / project.git
editar: después del cambio necesita borrar cachés, etc.
bundle exec rake cache:clear assets:clean assets:precompile RAILS_ENV=production
NB: esto fue probado en una versión antigua de Giltab ( v5
- v6
) , y podría no ser adecuado para la instancia moderna.
Puede lograr un comportamiento similar en un proceso de 2 pasos:
1. Editar: config/gitlab.yml
En el servidor, configure el puerto al que usa:
ssh_port: 766
2. Edición ~/.ssh/config
En su máquina, agregue la siguiente sección correspondiente a su gitlab:
Host sub.domain.com
Port 766
Límite
Deberá repetir esta operación en la computadora de cada usuario ...