Quiero configurar un entorno git para mis compañeros de trabajo y para mí entre el server de desarrollo y el server de prod (y más tarde entre las máquinas locales y el server de desarrollo también). Instalado git en prod, init, todo está bien.
Ahora quiero git clone
la prod en el desarrollador, para luego poder insert características validadas para prod. Intenté hacerlo con
git clone ssh://sshUser@111.11.11.111:1234/path/to/git/repos/
El problema es que ese usuario no es un superusuario y no tiene acceso a esa ruta. Por supuesto que falla. No puedo conectarme en la raíz porque PermitRootLogin no
. Entonces pensé en 2 posibilidades:
PermitRootLogin no
a PermitRootLogin without-password
y use una key ssh para conectarse como root. Supongo que funcionaría. Pero no estoy seguro de si es el path correcto o si tengo otra opción que no pensé / encontré información.
Gracias por delante!
En primer lugar, no es una buena idea tener files de aplicaciones en su sistema de producción que requieran acceso a la root
, y una mayor apertura de su count root
en la forma en que describe es un absoluto no-no. Un buen enfoque (es decir, seguro) es este:
myapp
y un usuario myappadm
. /path/to/git/repos/
) debe ser myappadm:myapp
a myappadm:myapp
. myappadm
pero solo legible por myapp
. myapp
. (Por supuesto, si ya tiene un grupo como myapp
y solo tiene root
lugar de myappadm
entonces puede mantener ese grupo y simplemente myappadm
todo a myappadm
lugar de a root
).
Hecho esto, ssh://myappadm@...
de ssh://myappadm@...
y todo estará bien. Las personas que tienen acceso a myappadm
ya no podrán hacerse cargo de toda la máquina, y así sucesivamente.