C'est juste pour me rappeler… comment accéder à Subversion par SSH avec clefs…
Sur le serveur : SSH. Permettre l'authentification par clefs.
Dans /etc/ssh/sshd_config :
RSAAuthentication yesDans les ~/.ssh/ des intéressés, fichier authorized_keys avec une ligne par clef publique acceptée, du genre :
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
ssh-rsa AAAAB3Nz(…)PMRJl8=Pour produire des clefs publiques, ssh-keygen sous Unix et Puttygen sous Windows. Si Puttygen, une fois la clef publique créée, l'exporter au format OpenSSH pour pouvoir l'utiliser sur un serveur Unix.
ssh-rsa AAAAB3Nz(…)PM60l8==
ssh-rsa AAAAB35u(…)rT62zA== dandriana@ordinateur
C'est lors de la génération des clefs qu'est demandée la « passphrase », mot de passe qui active la clef privée.
Sur le serveur : Subversion. Vu qu'on va faire du svn+ssh, pas besoin de lancer svnserve, donc.
Sur le client : SSH.
Sous Unix, clefs privées et publiques à mettre dans ~/.ssh. En général leurs noms respectifs sont « id_rsa » (-rw-------) et « id_rsa.pub » (-rw-r--r--). Connexion en : ssh -l <username> -i </path/to/private/key>
Sous Windows, clefs à mettre chais pas où, tellement c'est sécurisé. Faire pointer Putty dessus.
Rappel : les clefs publiques « xxx.pub » sont destinées à être fournies publiquement : envois par e-mail, publication dans un blog…
En revanche les clefs privées sont à protéger absolument. Elles sont plus précieuses que le mot de passe (« passphrase ») qui les active.
Sur le client : agent SSH. Pour éviter d'avoir à s'authentificer à chaque fois.
Sous Unix, ssh-agent :
exec ssh-agent bashSous Windows, Pageant.
ssh-add </path/to/private/key>
ssh-agent et Pageant peuvent être lancés au démarrage pour gagner du temps. Cela dépend de l'usage qu'on en a.
Sur le client : Subversion+SSH.
Sous Unix, déclarer dans son .profile une variable d'environnement SVN_SSH, du genre :
export SVN_SSH="ssh -l <username> -i </path/to/private/key>"Si ça ne fonctionne pas, voir ~/.subversion/config.
Sous Windows, après une installation de la version de CollabNet de Subversion, j'ai mis ceci dans C:\Documents and Settings\<user>\Application Data\Subversion\config :
[tunnels]
ssh=<C:\path\to\>PLINK.EXE -l <username> -i <C:\path\to\private\key>
Aucun commentaire:
Enregistrer un commentaire