W tej chwili mam jeden repo git dodane przez gitosis. Instrukcja użyłem jest http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-wayJak dołączyć ssh prywatny klucz RSA podczas uzyskiwania dostępu do repozytorium git za pośrednictwem ssh (gitosis)?
mogę sklonować go i wcisnąć w nią poprzez ssh auth z prywatnych i publicznych kluczy (na Gentoo), ale użytkownicy Windows, które używają rozszerzenia Git nie może. Klucze SSH umieszczone w $ HOME/.ssh, a ssh prosi o podanie hasła. Hasło ani hasło, ani hasło (z prywatnego klucza ssh) nie pasują do siebie.
Redmine potrzebuje do gołego repo, więc sklonowane repo z gitosis na moim lokalnym komputerze i przenieść go do serwera (Redmine + git), a następnie próbował zsynchronizowane jak pokazał tutaj http://www.redmine.org/projects/redmine/wiki/HowTo_keep_in_sync_your_git_repository_for_redmine Ale to prosi o Hasło ponownie! Oczywiście, że nie uczynił apache jego własne klucze SSH do dopuszczonego gitosis = _ = (Apache jest właścicielem Redmine gołej repo, bo to do niego dostęp za pośrednictwem protokołu HTTP auth)
W każdym razie chodzi o to, jak używać prywatnego klucza ssh z pliku podczas uzyskiwania dostępu do gitosis?
===
Częściowo rozwiązany! generuje klucze, których nazwy to dokładnie id_rsa i id_rsa.pub. jeśli uruchomić ssh -vvv [email protected]
powinieneś zobaczyć coś podobnego do
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
Tak, klient ssh chce dokładnie nazwach plików lub przejdzie do następnej metody auth (hasło). I teraz przemianowany klucze na moim komputerze domowym oraz:
[email protected] ~ $ git clone ssh://[email protected]/reponame.git
Cloning into reponame...
Enter passphrase for key '/home/user/.ssh/id_rsa':
Hurra, to prosi o hasłem! BTW, użytkownicy ШIИDOШS ™ nadal mają problemy z dziesiątkami wygenerowanych kluczy.
Upd
Jeśli używasz OpenSSH, wtedy w ~/.ssh można utworzyć plik o nazwie 'config' i umieścić tam coś takiego:
Host mygitosisserver.com
IdentityFile ~/.ssh/private-key-for-mygitosisserver-com
To dlatego, że tam jest git.cmd (rodzaj wstępnej inicjalizacji w Git Extensions) z '@if nie istnieje "%%" HOME @SET HOME =% HOMEDRIVE% % HOMEPATH% ', więc% HOME% jest ustawiony w środowisku git. Nadal, jak importować klucze ssh? Wróciłem do domu i umieściłem klucze ssh ze stacji roboczej do ~/.ssh, próbując sklonować 'git clone ssh: // git @ my_host/gitosis-admin.git' i złapałem prośbę o podanie hasła (zwykle okno z prośbą o _passphrase_). – tijagi
@ user685107: wydaje się normalne, jeśli wygenerowałeś swój klucz prywatny z hasłem. W takim przypadku: http://stackoverflow.com/questions/370030/git-cant-remember-my-passphrase lub http://stackoverflow.com/questions/6106137/git-enter-long-passphrase-for-every- push – VonC
Oczywiście klucze zostały wygenerowane z hasłami. Ale Putty sprawia, że klucze są niekompatybilne z serwerem OpenSSH. Więc wygenerowałem je na tym samym serwerze dla użytkowników Windows ™. Nie stanowią problemu, z wyjątkiem tego, że połączenie zawsze prosi o podanie ** hasła zamiast hasła ** – tijagi