Jump to content

[Résolu] Problème ssh

Featured Replies

Posted

Bonjour,

J'ai un petit soucis avec SSH. Je voudrai pouvoir me connecter à une machine distante sans avoir à saisir le mot de passe.

L'astuce, c'est que le user sur la machine cliente n'a pas de compte sur la machine disposant du serveur SSH. Les deux machines sont sous Linux.

Est-ce possible de réaliser cela ?

Amicalement,

Nico

Edited by nicocolt

:|

Théo tout de suite le petit pic :p

Nan en fait ce que tu peux faire c'est générer une clef ssh avec ssh-keygen et l'exporter sur l'autre machine.

Regarde sur la doc ubuntu, il y a un truc expliqué là dessus et ça fonctionne vachement bien :pleure:

  • Author

Ben avec le keygen, il faut avoir un compte portant le même identifiant sur la machine serveur, non ?

Moi sur la machine A je suis le user toto, et je veux me connecter sur la machine B avec le user titi sans avoir à y saisir le mot de passe.

Amicalement,

Nico

  • Author
oui, l'user generant ses clefs sur le serveur sera celui loggue par toutes personne utilisant ce qui a ete genere

Aïe j'ai pas tout compris là... :|

Amicalement,

Nico

ben, sur le pc faisant office de serveur, tu fais un ssh-keygen, et quiconque ayant cette clef pourra acceder au serveur ssh concerne sans rentrer de mot de basse

  • Author

Ok donc en gros je fous le clef publique générée sur le compte du serveur sur le compte du client ? ou pas besoin ?

Amicalement,

Nico

je n'ai fait ca que sur un reseau nfs et c'est comme ca que ca fonctionnait

je vais tenter ici pour verifier quand j'aurais un peu de temps, pour confirmer

j'ai verifie, ca marche:

ssh-keygen -t dsa (par contre, il ne faut pas mettre de passphrase, valide tout en laissant les valeurs par defaut)

cat .ssh/id_dsa.pub | ssh toto@clienthost "cat - >>.ssh/authorized_keys"

pareil pour rsa

et ca tourne

et la, en principe, ca marche (j'ai fait d'aurtes trucs, mais je pense avoir garde le sctrict necessaire)

  • Author

Donc de cette manière, le client toto est capable de se connecter sur titi qui est sur le serveur, sans avoir à saisir le mot de passe ?

Amicalement,

Nico

dans ce cas, il n'a rien a saisir (a moisn que t'ais specifie une passphrase, auquel cas, il faudra rentrer cette passphrase)

edit: il faut restart le daemon ssh sur le serveur

En fait quand tu es sur le serveur, tu te loggues avec un user. En l'occurence, c'est titi si j'ai bien compris.

De là, tu ssh-keygen une clef qui te permettras de te logger sur ce serveur en tant que titi, et ce à partir de n'importe quelle machine et n'importe quel user qui aura cette clef !

Grosso merdo, cela reviendrait à faire un ssh titi@serveur sans mot de passe. Et c'est bien ce dont tu as besoin :transpi:

  • Author

En effet, cela semble correspondre à ce que je recherche, j'essaye cela demain et je mettrai le post à jour pour communiquer le résultat.

Amicalement,

Nico

whaou, j'ai l'impression que tout le monde s'embrouille un peu avec les tito, toto et autre.

Le schéma est le suivant :

toto génère une paire de clefs sur la machine A

toto envoie sa clef publique à titi sur la machine B

titi colle la clef publique de toto dans .ssh/authorized_keys de la machine B

du coup, toto peux se loguer depuis A avec le compte de titi sur B sans avoir à taper de mot de passe. :transpi:

en effet, je suis alle un peu vite en le faisant sur toutes les machines en meme temps, en reprennant de zero ca fonctionne

RjùpsqjnviuzhqMGNKLÙH ;)

Humhum c'est exact...

La génération de clef se fait sur le client et on le copie dans authorized_keys (au passage lorinc tu as oublié le "t" ) du user avec lequel on veut se logguer et qui a le droit de se logguer en ssh bien sur...

  • Author
whaou, j'ai l'impression que tout le monde s'embrouille un peu avec les tito, toto et autre.

Le schéma est le suivant :

toto génère une paire de clefs sur la machine A

toto envoie sa clef publique à titi sur la machine B

titi colle la clef publique de toto dans .ssh/auhorized_keys de la machine B

du coup, toto peux se loguer depuis A avec le compte de titi sur B sans avoir à taper de mot de passe. :p

Ah mince, je pensais que ça ne fonctionnait pas de cette manière, et qu'il fallait absolument que toto ait un compte, nommé également toto sur la machine B. Je crois que je suis perdu ;)

Amicalement,

Nico

Je crois que je suis perdu ;)

Pourquoi ? C'est pareil que ce que tu pensais, sauf que du moment où tu as la clé privée, correspondant à la clé publique posée dans le compte d'un utilisateur A, peu importe que, sur ta machine client, tu sois B, C ou D... ou même A...

  • Author

De quelle manière je copie la clef publique sur la machine distante ? Via scp, puis je fais cat id_dsa.pub >> ~/.ssh/authorized_keys ou keys2 ?

Amicalement,

Nico

  • Author

Voilà c'est bon ça fonctionne, j'ai copié la clef par la commande ssh-copy-id -i ~/.ssh/id_dsa.pub titi@B

Merci à vous tous pour votre aide !

amicalement,

Nico

Archived

This topic is now archived and is closed to further replies.