nicocolt Posted June 2, 2008 Share Posted June 2, 2008 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 Link to comment Share on other sites More sharing options...
theocrite Posted June 2, 2008 Share Posted June 2, 2008 Tu veux te connecter sur une machine sans disposer de compte ? Ça va être dur (sauf si c'est une debian avec le openssh vulnérable). Link to comment Share on other sites More sharing options...
tyrann27 Posted June 2, 2008 Share Posted June 2, 2008 Théo tout de suite le petit pic 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 Link to comment Share on other sites More sharing options...
fabien29200 Posted June 2, 2008 Share Posted June 2, 2008 Par contre, il faudra que tu choisisses avec quel compte il se connecte. Link to comment Share on other sites More sharing options...
nicocolt Posted June 2, 2008 Author Share Posted June 2, 2008 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 Link to comment Share on other sites More sharing options...
Mephisto Posted June 2, 2008 Share Posted June 2, 2008 oui, l'user generant ses clefs sur le serveur sera celui loggue par toutes personne utilisant ce qui a ete genere Link to comment Share on other sites More sharing options...
nicocolt Posted June 2, 2008 Author Share Posted June 2, 2008 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 Link to comment Share on other sites More sharing options...
Mephisto Posted June 2, 2008 Share Posted June 2, 2008 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 Link to comment Share on other sites More sharing options...
nicocolt Posted June 2, 2008 Author Share Posted June 2, 2008 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 Link to comment Share on other sites More sharing options...
Mephisto Posted June 2, 2008 Share Posted June 2, 2008 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 Link to comment Share on other sites More sharing options...
Mephisto Posted June 2, 2008 Share Posted June 2, 2008 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) Link to comment Share on other sites More sharing options...
nicocolt Posted June 2, 2008 Author Share Posted June 2, 2008 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 Link to comment Share on other sites More sharing options...
Mephisto Posted June 2, 2008 Share Posted June 2, 2008 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 Link to comment Share on other sites More sharing options...
tyrann27 Posted June 2, 2008 Share Posted June 2, 2008 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 Link to comment Share on other sites More sharing options...
nicocolt Posted June 2, 2008 Author Share Posted June 2, 2008 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 Link to comment Share on other sites More sharing options...
lorinc Posted June 2, 2008 Share Posted June 2, 2008 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. Link to comment Share on other sites More sharing options...
Mephisto Posted June 2, 2008 Share Posted June 2, 2008 en effet, je suis alle un peu vite en le faisant sur toutes les machines en meme temps, en reprennant de zero ca fonctionne Link to comment Share on other sites More sharing options...
tyrann27 Posted June 3, 2008 Share Posted June 3, 2008 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... Link to comment Share on other sites More sharing options...
nicocolt Posted June 3, 2008 Author Share Posted June 3, 2008 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. 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 Link to comment Share on other sites More sharing options...
lorinc Posted June 3, 2008 Share Posted June 3, 2008 non non, absolument pas. Link to comment Share on other sites More sharing options...
Compte_supprime_74291 Posted June 3, 2008 Share Posted June 3, 2008 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... Link to comment Share on other sites More sharing options...
nicocolt Posted June 3, 2008 Author Share Posted June 3, 2008 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 Link to comment Share on other sites More sharing options...
nicocolt Posted June 3, 2008 Author Share Posted June 3, 2008 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 Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.