Journal cvs à travers ssh sans password. Et le dernier ferme la porte.

Posté par  (site web personnel) .
Étiquettes : aucune
0
5
août
2003
Hier j'ai passé une trois heures à faire marcher CVS à travers SSH sans mot de passe.

Pourtant c'est pas très difficile :
alors ça pourra peut-etre servir à qqun :

sur le serveur :
dans /etc/sshd/sshd_config, activer
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

sur le client, generer une paire de clefs asymétriques RSA :
ssh_keygen -b 1024 -t rsa
(on se retrouve avec ~/.ssh/id_rsa et id_rsa.pub)

envoyer la clef publique vers le serveur :
scp id_rsa.pub @:/home//.ssh/authorized_keys

redemarrer sshd :
service sshd restart
(normalement on doit pouvoir rentrer sans mot de passe)

et pour cvs, sur le client :
export CVS_RSH=/bin/ssh
export CVSROOT=@:/chemin/vers/CVSROOT
  • # Re: cvs à travers ssh sans password. Et le dernier ferme la porte.

    Posté par  . Évalué à 3.

    une petite astuce ? :-)
    histoire que ça ne disparaisse pas dans les strates des journaux de DLFP
  • # Re: cvs à travers ssh sans password. Et le dernier ferme la porte.

    Posté par  . Évalué à 1.

    Est-ce que c'est cumulable avec l'authentification pserver ?
    Pour être plus clair, voilà ce qui me plairait :
    - accès en lecture/écriture via ssh pour les personnes disposant d'un compte ;
    - accès en lecture via pserver anonyme pour faire des checkout.

    Si mes souvenirs sont bons, lancer le serveur CVS avec l'option -pserver force l'utilisation de ce dernier dans (x)inetd ; ne pas mettre cette option laisse-t-il le choix du protocole ?
    • [^] # Re: cvs à travers ssh sans password. Et le dernier ferme la porte.

      Posté par  (site web personnel) . Évalué à 1.

      ça doit dépendre de la variable CVSROOT :

      si tu mets CVSROOT=[user]@[server]:/chemin/vers/CVSROOT
      il utilise ssh ou rsh (selon la variable CVS_RSH)

      et si tu mets CVSROOT=:pserver:[user]@[server]:/chemin/vers/CVSROOT
      il prend le password server de cvs

      Donc je suppose que deux clients peuvent utiliser chacun un protocole différent.
    • [^] # Re: cvs à travers ssh sans password. Et le dernier ferme la porte.

      Posté par  (site web personnel) . Évalué à 1.

      Les deux méthodes coexistent sans problème, il n'y a rien de particulier à faire pour utiliser cvs à travers ssh (à part avoir un serveur ssh :-))

      Par contre, pour que les différents devs n'aient pas de problèmes, il faut faire gaffe aux droits d'accès en écriture sur le repository (au moins pour un groupe)

      Après il suffit de mettre le user anoncvs dans le fichier CVSROOT/readers et de le mapper sur un user unix du même groupe que les devs (de mémoire il a besoin d'un accès en écriture sur le repository pour pouvoir créer un fichier lock, mais je peux me tromper)
  • # Re: cvs à travers ssh sans password. Et le dernier ferme la porte.

    Posté par  (site web personnel) . Évalué à 1.

    Zut il a bouffé les "user" et "server" :


    envoyer la clef publique vers le serveur :
    scp id_rsa.pub [user]@[server]:/home/[user]/.ssh/authorized_keys

    ...

    export CVSROOT=[user]@[server]:/chemin/vers/CVSROOT
  • # Re: cvs à travers ssh sans password. Et le dernier ferme la porte.

    Posté par  (site web personnel) . Évalué à 2.

    Une petite remarque : si cette méthode permet effectivement de se connecter en ssh sans le mot de passe du compte unix (pour cvs ou toute autre utilisation de ssh d'ailleurs), elle ne dispense pas de la passphrase nécessaire pour dévérouiller la clé rsa.
    A moins bien sûr de laisser une passphrase vide, mais ceci est Mal(tm)

    Donc, astuce à utiliser avec un ssh-agent pour un maximum d'efficacité

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.