Le TwiBlog

The one with Twidi

Aller au contenu | Aller au menu | Aller à la recherche

samedi 26 mai 2007

Utiliser "ssh-copy-id" vers une machine où ssh tourne ailleurs que sur le port 22

ssh-copy-id est un script qui permet de copier sa clé publique sur une machine distante, et ainsi pouvoir se connecter à cette machine en ssh avec sa clé et non le mot de passe (et ainsi ne plus avoir besoin de s'identifier à chaque fois, grâce à ssh-add ou pam-ssh)

En tant que script, il permet d'éviter la copie à la main du fichier nécessaire.

Mais en tant que script, il n'est pas prévu énormément d'option, et notamment pas la possibilité de spécifier le port sur lequel tourne ssh sur la machine distante.

En jetant un oeil au script j'ai néanmoins trouver comment faire :

ssh-copy-id -i CLE_PUBLIQUE "-p PORT SERVEUR"

Remplacer

  • CLE_publique par le fichier de votre clé publique, par exemple ~/.ssh/id_rsa.pub
  • PORT par le port sur lequel ssh tourne sur la machine distante
  • SERVEUR l'ip ou le nom de la machine distante

Dans l'idéal on n'aurait pas à saisir l'option -i (fichier de la clé publique) mais c'est impératif si on veut pouvoir utiliser la bidouille "-p PORT SERVEUR"

Connexion linux/ubuntu avec passphrase ssh (pam-ssh)

Un petit billet pour expliquer comment se logguer dans sa session ubuntu avec sa passphrase ssh au lieu de son mot de passe classique.

L'avantage principal est notamment de valier votre passphrase ssh et ainsi pouvoir vous logguer sur tout compte ssh autorisé sans saisir votre passphrase à nouveau, ni lancer un ssh-add.

Dans le meilleur des cas vous économisez une saisie de mot de passe : on le fait au début une fois pour toute.

Voici les étapes à suivre :

1) Installer pam-ssh :

sudo aptitude install libpam-ssh

2) Créer une clé ssh si vous n'en avez pas déjà une (je pense que si vous lisez ce topic, vous l'avez déjà)

ssh-keygen

3) Modifier la séquence de validation du login.

Ci-dessous, remplacez $EDITOR par votre éditeur texte favori, ou faîtes un

export EDITOR=votre_editeur_favori

Il faut donc modifier deux fichiers lié à pam :

sudo $EDITOR /etc/pam.d/common-auth

Avant la première ligne commençant par "auth", ajouter

@include pam-ssh-auth

Puis :

sudo $EDITOR /etc/pam.d/common-password

Avant la première ligne commençant par "password", ajouter

@include pam-ssh-session

Vous pourrez toujours vous logguer avec votre mot de passe, dans quel cas il vous faudra saisir ultérieurement votre passphrase ssh en cas de besoin.

Note : si vous vérouillez votre session, pour revenir, tapez également votre clé ssh.