SSH avec clé authentification

Bonjour
Aujourd’hui je tente la connection SSH avec Clé d’authentification

1°) j’ai généré mes clés sous windows (publique et privé) la publique étant en .pub

2°) j’ai copié la clé dans .ssh/authorized_keys

Mais il ne se passe rien il me demande toujours le mot de passe

Au cas où :

  • le serveur SSH a-t-il été redémarré ?

  • vérifier les permissions sur le /home, le dossier .ssh et les fichiers sous-jacents du serveur. Les permissions pour ces 2 derniers doivent être strictement limitées au propriétaire.

1 J'aime

pour le faire regulierement :

  • creation du dossier : mkdir /home/user/.ssh
  • creation du fichier : nano /home/user/.ssh/authorized_keys
  • copie de la clef publique, enregistrement (puttygen est top pour ca)
  • chown -R user:user /home/user/.shh
  • chmod -R 700 /home/user/.ssh

Non, malheureux ! Ne pas utiliser mkdir pour ce répertoire, vous seriez bon pour tourner en rond pour établir les bonnes permissions.

Je conseille d’utiliser un effet de bord de la commande ssh qui met éventuellement à jour un fichier known_hosts dans ce répertoire.

SVP enlevez le -R (récursif).
Dans ce répertoire .ssh les fichiers known_hosts et *.pub peuvent être en 0644/-rw-r--r-- et les clés privées doivent être en 0600/-rw-------
Le plus simple est de créer ses clés sous Linux, les droits sont corrects dés le départ.

Cordialement,
Regards,
Mit freundlichen Grüßen,
مع تحياتي الخالصة


F. Petitjean
Ingénieur civil du Génie Maritime.

« Celui qui, parti de rien, n’est arrivé nulle part n’a de merci à dire à personne !! »
Pierre Dac

Exact, je plussois et demande pardon pour avoir ecris des betises ^^

J’ai même cherché dans gg :frowning: c’est quoi ?

Super cela marche je n’avais pas fait chown -R user:user /home/user/.ssh
Ce n’était pas indiqué dans les tuto que j’ai lu

Je suppose que vous comprenez la notion d’effet de bord. La commande ssh a pour effet principal de permettre une connexion sécurisée vers un serveur distant. Pour ce faire, il y a dans la négociation une vérification qu’on s’adresse bien au bon serveur, à la bonne machine. Une clé publique du serveur distant est recherchée à un endroit convenu ( ~/.ssh/known_hosts ) et si besoin est stockée dans ce fichier.
Or, si le répertoire ~/.ssh n’existe pas au moment de la tentative de connexion, le fichier known_hosts ne sera pas trouvé, et donc si l’utilisateur confirme qu’il fait confiance au serveur distant (au vu de l’empreinte donnée) que croyez-vous que va faire la commande ssh? Faudra bien créer le répertoire .ssh et y écrire le fichier known_hosts . Autrement dit, la création éventuelle du répertoire .ssh est un sous-produit, un dommage collatéral, un effet de bord de la commande ssh dans ce cas particulier.
Je suis déçu que vous n’ayez pas compris du premier coup car j’avais précisé

D’autre part, comme ce genre de logiciel n’est pas codé avec les pieds, la création du répertoire et du fichier est faite avec les droits adéquats.

Cordialement,
Regards,
Mit freundlichen Grüßen,
مع تحياتي الخالصة


F. Petitjean
Ingénieur civil du Génie Maritime.

« La vraie science est une ignorance qui se sait. »
– Michel Eyquem de Montaigne

« Avant donc que d’écrire, apprenez à penser »
Boileau De L’Art poétique (Chant I)

Je ne suis pas informaticien, je suis urbaniste donc je n’ai aucune notions… ni amis informaticien… donc tout ce que j’apprends c’est seul et sur le forum… cela ne fait qu’une semaine que je me suis penché sur debian (j’ai juste des notions en php)

Je n’ai pas de fichier known_hostsj’ai juste copié ma clé dans le dossier .ssh que j’ai créé

Merci pour les conseils car c’est grace à vous que j’apprends…

Même si littlejohn est parfois un peu sec avec moi :wink: mais comme je vous disais je découvre et je pars de loin (0 notions et 0 échanges avec de vrais personnes, sauf sur le forum).

Moi je trouve qu’en une semaine j’ai bien avancé -> installation de debian, familiarisation avec les lignes de commande, connexion ftp, connexion ssh sans code, installation de ngnix avec virtualhost pour 2 sites, modification du port ssh (pour moi un port c’est le truc au bord de la mer), installation du groupe sudo et désactivation de la connexion par root…