2011-07-19 17 views
5

En este momento tengo un git repo agregado a través de gitosis. El manual que utiliza es http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-way¿Cómo incluir ssh clave de clave privada cuando se accede a git repo a través de ssh (gitosis)?

  1. puedo clonarlo y empujar en ella a través de autenticación SSH con claves privadas y públicas (en Gentoo), pero los usuarios de Windows que está utilizando extensiones Git no pueden. Las claves SSH ubicadas en $ HOME/.ssh y ssh piden una contraseña. Ni la contraseña ni la frase de contraseña (de la clave ssh privada) no coinciden.

  2. Redmine necesita para un acuerdo de recompra al descubierto, así que clona cesión temporal de gitosis en mi máquina local y lo movió a servidor (Redmine + GIT), luego trató de sincronización que observamos aquí http://www.redmine.org/projects/redmine/wiki/HowTo_keep_in_sync_your_git_repository_for_redmine Pero pide una ¡contraseña de nuevo! Por supuesto no hice apache sus propias claves ssh auth gitosis = _ = (Apache es propietario de Redmine desnuda repo, porque es acceder a ella a través de autenticación HTTP)

De todos modos, la pregunta es cómo utilizar la clave ssh privada del archivo al acceder a la gitosis?

===

Parcialmente resuelto! ssh-keygen -t rsa genera claves, cuyos nombres son exactamente id_rsa y id_rsa.pub. si ejecuta ssh -vvv [email protected] debería ver algo similar a

debug1: Authentications that can continue: publickey,keyboard-interactive 
… 
debug3: authmethod_is_enabled publickey 
debug1: Next authentication method: publickey 
debug1: Offering RSA public key: [email protected] 
debug3: send_pubkey_test 
debug2: we sent a publickey packet, wait for reply 
debug1: Authentications that can continue: publickey,keyboard-interactive 
debug1: Trying private key: /home/user/.ssh/id_rsa 
debug3: no such identity: /home/user/.ssh/id_rsa 
debug1: Trying private key: /home/user/.ssh/id_dsa 
debug3: no such identity: /home/user/.ssh/id_dsa 
debug1: Trying private key: /home/user/.ssh/id_ecdsa 
debug3: no such identity: /home/user/.ssh/id_ecdsa 
debug2: we did not send a packet, disable method 
debug3: authmethod_lookup keyboard-interactive 

archivos Así, cliente ssh quiere exactamente con nombre o va a cambiar a la siguiente método de autenticación (contraseña). Ahora Retitulé llaves en mi máquina de casa y:

[email protected] ~ $ git clone ssh://[email protected]/reponame.git 
Cloning into reponame... 
Enter passphrase for key '/home/user/.ssh/id_rsa': 

Hurra, solicita una contraseña! Por cierto, los usuarios de ИIИDOШS ™ siguen teniendo problemas con sus decenas de claves generadas.

UPD

Si utiliza OpenSSH, a continuación, en ~/.ssh puede crear un archivo llamado 'config' y poner allí algo como esto:

Host mygitosisserver.com 
IdentityFile ~/.ssh/private-key-for-mygitosisserver-com 

Respuesta

4

usuarios de Windows deben ser capaces para clonar también (con ssh), si han definido la variable de entorno% HOME%.
INICIO no está definido de forma predeterminada.
Se puede hacer referencia a cualquier directorio que quieren (por lo general, se toma el mismo que %HOMEPATH%)


Los OP user685107 informes:

problema con los usuarios de Windows se resolvió siguiendo estrictamente el manual de generación de claves con puttygen.
nuevo par de claves maked en Windows funciona bien

+0

Eso es porque no git.cmd (especie de pre-init en Extensiones GIT) con '@if no existe "% HOME%" @set HOME =% HOMEDRIVE% % HOMEPATH% ', por lo que% HOME% se establece en el entorno git. Aún así, ¿cómo importar las claves ssh? Regresé a casa y coloqué mis claves ssh desde la estación de trabajo a ~/.ssh, intentando clonar 'git clone ssh: // git @ my_host/gitosis-admin.git' y puse la solicitud de contraseña (usualmente una ventana pidiendo una _passphrase_). – tijagi

+0

@ user685107: parece normal si ha generado su clave privada con una frase de contraseña. En ese caso: http://stackoverflow.com/questions/370030/git-cant-remember-my-passphrase o http://stackoverflow.com/questions/6106137/git-enter-long-passphrase-for-every- push – VonC

+0

Por supuesto, las claves se generaron con frases de contraseña. Pero Putty hace que las claves sean incompatibles con el servidor OpenSSH. Así que los generé en el mismo servidor para usuarios de Windows ™. No son problemas de problemas, excepto que la conexión siempre solicita una ** contraseña en lugar de una contraseña ** – tijagi

Cuestiones relacionadas