IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Sécurité Discussion :

ssh sans mot de passe ne fonctionne pas sous linux debian


Sujet :

Sécurité

  1. #1
    Membre éclairé

    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Février 2012
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 231
    Par défaut ssh sans mot de passe ne fonctionne pas sous linux debian
    Bonjour à tous,

    Je suis avec debian/gnome.

    Pour des raisons de plaisir, je voulais envoyer un fichier depuis un raspberry vers mon PC (debian/gnome).
    La connection ssh fonctionne très bien dans les deux sens, depui le PC vers raspi, et depuis raspi vers le PC.

    L'envoi de fichiers via SCP fonctionne aussi.....

    Comme je voudrais envoyer tous les jours un fichier generer sur raspi vers mon PC, j'ai voulu essayer de cree une connection ssh sans mot de passe , donc avec des clès privée/publique.

    La reation de cle via ssh-keygen, OK (sur le raspi)
    la copie de de la cle avec ssh-copy-id, semble fonctionner, sur le PC je retouve les fichier dans mon repertoire .ssh.

    Cependant lorsque je veux me connecter ou copier un fichier depuis mon raspi vers le PC, la connection demande un mot de passe (le mot de passe de mon user sur le PC (comme si je n'avais rien fait).

    J'ai un second raspi sur le même reseau local, et donc j'ai refait la manip entre les deux raspi.
    Et là, pas de problème, une fois les clès copiées, la connection et les copie scp se font sans demander de mot de passe.

    quelqu'un a t-il une idée pour verifier la config ou la procédure pour obtenir cette communication sans mot de passe ??

    Un grand merci

    michel

  2. #2
    Membre émérite
    Homme Profil pro
    Architecte cybersécurité
    Inscrit en
    Avril 2014
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte cybersécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 563
    Par défaut
    Hello,

    Fais voir ton fichier /etc/ssh/sshd_config stp.

  3. #3
    Membre éclairé

    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Février 2012
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 231
    Par défaut Mon sshd_config
    Et voila,

    Merci
    Fichiers attachés Fichiers attachés

  4. #4
    Membre émérite
    Homme Profil pro
    Architecte cybersécurité
    Inscrit en
    Avril 2014
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte cybersécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 563
    Par défaut
    Hello,

    Disons qu'il y a plusieurs manières de faire.

    Mets ça à la fin de ton sshd_config:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Match user <ton_nom_utilisateur>
         AuthenticationMethods publickey
    Puis exécute la commande sshd -t pour être sur qu'il n'y a aucune erreur de syntaxe et systemctl reload sshd pour prendre en compte les changements.

    Vérifie au passage que ta clef publique est bien renseignée dans .ssh/authorized_keys.

    C'est une des manières de faire, il y en a d'autres.

  5. #5
    Membre éclairé

    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Février 2012
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 231
    Par défaut
    Bonjour tabouret,

    Merci pour les infos.

    J'ai donc ajouter les lignes à mon fichier sshd_config comme tu l'a dit.
    J'ai bien remplacer le <ton_nom_utilisateur> par "michel" (sans les gillemet) qui est mon nom user sur la session linux.
    et j'obtient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    pi@meteopi:~ $ ssh michel@xxx.xxx.x.x
    Permission denied (publickey).
    pi@meteopi:~ $
    J'ai remplacer mon IP par des X car je suis un peu paranoiaque....
    Dans le fichier /.ssh/authorized_keys, j'ai bien une ligne de caractère qui termine par pi@meteopi
    en sachant que meteopi est un alias pour l'adresse ip fixe de raspi.
    la commande sudo sshd -t ne donne rien
    je reload sshd.
    Et jai même redemmarré le PC.
    Rien n'y fait.

    pour test (et parce que je ne comprend pas grand choses..., j'ai remplacé "michel" par "pi" qui est le user de la session du raspi.
    Et là, je retrouve de nouveau la demande du mot de passe lors de la connexion en ssh du raspi vers le PC

    Bon, je vais essayer de connecter le PC au raspi sans mot de passe.....pour voir....

    A suivre


    Michel

  6. #6
    Membre émérite
    Homme Profil pro
    Architecte cybersécurité
    Inscrit en
    Avril 2014
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte cybersécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 563
    Par défaut
    Sur ton hôte "meteopi", tu as bien un dossier /home/michel/.ssh avec un nom de clef spécifié dans ton ssh_config?

    Ou sinon te prends pas la tête fais plutôt ça:

    ssh -i <spécifie_ta_clef_privée_ici> michel@X.X.X.X

    Si ça ne marche pas, check /var/log/auth.log sur ton serveur.

  7. #7
    Membre éclairé

    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Février 2012
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 231
    Par défaut
    Je vais regarder cela,

    Mais le user "michel" est sur le PC et non sur le meteopi qui lui n'a qu'un user, "pi".

    Pour info, depuis le PC avec le user michel, j'ai créé des clés prive/public, je les ai copiée sur meteopi, et je peux me connecter sans mot de passe depuis le PC linux vers le raspi meteopi.
    comme le raspi meteopi est connecté en wifi, j'ai recommencer la procédure de generation de clés et de copie vers le PC linux, mais rien n'y fait.
    la commande ssh michel@........... depuis le raspi meteopi vers le pc linux me demande un mot de passe.

    Une remarque aussi, je n'ai pas de "serveur" à proprement dit, j'ai un PC sous debian avec le user "michel" et un raspberry sous raspbian avec le user "pi".

    michel

  8. #8
    Membre émérite
    Homme Profil pro
    Architecte cybersécurité
    Inscrit en
    Avril 2014
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte cybersécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 563
    Par défaut
    D'accord.

    La configuration sshd_config plus haut (Match user...) doit être évidemment faite sur le PC Debian donc.

    Le fichier authorizedKeysFile de ton PC Debian doit contenir ta clef publique.

    et ssh -i <ta clef privée> michel@X.X.X.X doit être effectué sur ton raspberry.

    Si malgré cela ça ne marche pas, check tes logs /var/log/auth.log sur ta Debian.

  9. #9
    Membre éclairé

    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Février 2012
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 231
    Par défaut
    Citation Envoyé par tabouret Voir le message
    Sur ton hôte "meteopi", tu as bien un dossier /home/michel/.ssh avec un nom de clef spécifié dans ton ssh_config?
    Non sur meteopi je n'ai que deux user, "pi" et "wiringpi"


    ssh -i <spécifie_ta_clef_privée_ici> michel@X.X.X.X
    J'ai essayé, mais le resultat est le meme, on me demande un mot de passe

    Si ça ne marche pas, check /var/log/auth.log sur ton serveur.
    Sur meteipi, je demande une session ssh,
    la réponse est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    pi@meteopi:~/.ssh $ ssh michel@192.168.1.4
    Permission denied (publickey).
    pi@meteopi:~/.ssh $
    le fichier auth.log contient (les dernières lignes)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Nov 30 13:21:30 I7 sshd[5897]: Authentication refused: bad ownership or modes for directory /home/michel/.ssh
    Nov 30 13:21:30 I7 sshd[5897]: Connection closed by authenticating user michel 192.168.1.62 port 40734 [preauth]
    Nov 30 13:21:35 I7 sudo:   michel : TTY=pts/0 ; PWD=/var/log ; USER=root ; COMMAND=/usr/bin/cat auth.log
    Nov 30 13:21:35 I7 sudo: pam_unix(sudo:session): session opened for user root by (uid=0)
     
    michel@I7:/var/log$
    michel

  10. #10
    Membre émérite
    Homme Profil pro
    Architecte cybersécurité
    Inscrit en
    Avril 2014
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte cybersécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 563
    Par défaut
    Strict mode enabled dans ta configuration (comportement normal).

    Mets ton dossier /home/michel/.ssh en 700 (commande chmod)
    Mets ta/tes clef(s) dans ton dossier .ssh en 400 (commande chmod)

  11. #11
    Membre éclairé

    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Février 2012
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 231
    Par défaut
    Citation Envoyé par tabouret Voir le message
    Strict mode enabled dans ta configuration (comportement normal).

    Mets ton dossier /home/michel/.ssh en 700 (commande chmod)
    Mets ta/tes clef(s) dans ton dossier .ssh en 400 (commande chmod)
    C'est fait,
    .ssh est DRWX-----------
    et les clés *.pub sont -r------------

    Mais toujours pas de permission pour ma connection.

    je redemarre mon PC pour voir

    Parfois cela aide............... sinon cela ne fait pas de mal


    Merci

  12. #12
    Membre émérite
    Homme Profil pro
    Architecte cybersécurité
    Inscrit en
    Avril 2014
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte cybersécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 563
    Par défaut
    Un redémarrage sous Linux ne sert strictement à rien (enfin je dis ça je dis rien :p)

    Les clefs .pub n'ont pas besoin d'être en 400 mais les clefs privées si.

    Que donne ton /var/log/auth.log?

    Très étonné qu'on te demande un mot de passe si tu as bien mis AuthenticationMethods au niveau serveur et que tu as spécifié -i au niveau ssh.

  13. #13
    Membre éclairé

    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Février 2012
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 231
    Par défaut
    Citation Envoyé par tabouret Voir le message
    Un redémarrage sous Linux ne sert strictement à rien (enfin je dis ça je dis rien :p)
    Non mais cela fait du bien et cela occupe.... et parfois suite a des modif de configuration.....

    Les clefs .pub n'ont pas besoin d'être en 400 mais les clefs privées si.
    Que donne ton /var/log/auth.log?
    Très étonné qu'on te demande un mot de passe si tu as bien mis AuthenticationMethods au niveau serveur et que tu as spécifié -i au niveau ssh.
    ben voila les dernières lignes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Nov 30 21:24:45 I7 sshd[4406]: Authentication refused: bad ownership or modes for directory /home/michel
    Nov 30 21:24:45 I7 sshd[4406]: Connection closed by authenticating user michel 192.168.1.62 port 40748 [preauth]
    Nov 30 21:25:25 I7 sudo:   michel : TTY=pts/1 ; PWD=/var/log ; USER=root ; COMMAND=/usr/bin/cat auth.log
    Nov 30 21:25:25 I7 sudo: pam_unix(sudo:session): session opened for user root by (uid=0)
    michel@I7:/var/log$

    michel

  14. #14
    Membre émérite
    Homme Profil pro
    Architecte cybersécurité
    Inscrit en
    Avril 2014
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte cybersécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 563
    Par défaut
    Ha ouais je vois toute ta chaîne de dossier était erronée.

    Change les permissions/propriétaire de /home et /home/michel stp.

    Ca marchera cette fois

  15. #15
    Membre éclairé

    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Février 2012
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 231
    Par défaut
    Citation Envoyé par tabouret Voir le message
    Ha ouais je vois toute ta chaîne de dossier était erronée.

    Change les permissions/propriétaire de /home et /home/michel stp.

    Ca marchera cette fois
    les permission actuelles sont :ls

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    drwxr-xr-x   6 michel sudo  4096 jun 11 08:53 home
    drwxrwxrwx 91 michel sudo   4096 déc  1  2021 michel
    Que dois-je modifier ? le groupe ? car d'après moi tous le monde peut lire ces repertoire non?


    michel

  16. #16
    Membre émérite
    Homme Profil pro
    Architecte cybersécurité
    Inscrit en
    Avril 2014
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte cybersécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 563
    Par défaut
    Hello,

    On ne met jamais un répertoire en permissions 777 (sauf /tmp, et certains cas particuliers).

    chmod 755 /home/michel

    Et dis moi si c'est OK.

  17. #17
    Membre éclairé

    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Février 2012
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 231
    Par défaut La solution
    Citation Envoyé par tabouret Voir le message
    Hello,

    On ne met jamais un répertoire en permissions 777 (sauf /tmp, et certains cas particuliers).

    chmod 755 /home/michel

    Et dis moi si c'est OK.
    J'ai donc mis mon repertoire /home/michel en 755.
    Et Hop cela fonctionne....

    Mais il n'empeche, pourquoi si je diminue les droits des autres 755 au lieu de 777 je peux en faire plus...

    De plus je n'ai pas placer ces repertoires en en 777, surtout le /home/michel a été crée par l'installation de linux sur mon PC.
    Je vais encore faire des test......
    Et surtout verifier mes Raspi.

    C'est ce qui est bien sous linux, c'est que quand on commence, on n'arrête pas de devenir plus malin (ou moins bête, c'est selon).....

    Un tout grand merci à toi pour le temps consacré à mon problème.

    Je marque comme résolu.
    Mais si tu as des conseils, surtout n'hésite pas

    Merci

    Michel

  18. #18
    Membre émérite
    Homme Profil pro
    Architecte cybersécurité
    Inscrit en
    Avril 2014
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte cybersécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 563
    Par défaut
    Avec plaisir.

    Par défaut, sshd_config met à "yes" la directive "StrictModes".
    C'est cette directive qui check les permissions de ton home directory avant d'établir une connexion SSH.

    Petits conseils mais pas obligatoire dans ton cas
    Je te conseille de ne jamais envoyer une clef privée sur le réseau (donc ne pas copier ta clef privée depuis ton poste Debian sur ton raspberry pour ssh avec).
    Toute clef privée envoyée par scp doit être considérée comme compromise.
    De plus si ton raspberry se fait compromettre, il possède désormais ta clef privée.

    Idéalement, envoie tes clefs publiques sur le réseau sans problème pour remplir authorized_keys.
    Utilise un agent de clefs SSH sur ta Debian:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ssh-agent
    ssh-add <chemin_vers_ta_clef_privée>
    #Ci-dessous permet de montrer que ta clef a bien été chargée en mémoire
    ssh-add -l
    Puis toujours depuis ta debian:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ssh -i <chemin_vers_ta_clef_privée> -A michel@raspberry1
    #le -A permet de forwarder l'agent, à condition que la configuration SSH du serveur le permette.
    Ensuite ta clef privée sera utilisable sur raspberry1

    Mais ce n'est pas obligatoire c'est juste un conseil de sécurité.

    Le reste de ta conf a l'air correct pour une utilisation personnelle.

  19. #19
    Membre éclairé

    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Février 2012
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 231
    Par défaut
    Ok Tabouret

    Je note tes remarques.

    J'avais en effet bien lu sur le net de ne jamais envoyer de clé privée, mais uniquement les clés publique.

    Le reseau est "local" donc derrière mon routeur (proximus).

    Le wifi est "securisé" avec des mot de passe un peu compliqués.

    En même temps je n'ai pas de secret d'entreprise sur mon PC et mes mot de passe sont dans des coffre-fort electronique.

    Encore un grand merci pour ton aide...

    Je vais encore chercher pourquoi debian installe des utilisateurs (leur repertoire) en mode 777.
    Rasbian, lui cree les repertoire utilisateurs en 755.

    Merci


    michel

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 02/06/2015, 17h05
  2. Connexion SSH sans Mot de passe
    Par badeddin dans le forum Réseau
    Réponses: 4
    Dernier message: 27/03/2012, 07h41
  3. connexion ssh sans mot de passe
    Par copro dans le forum Administration système
    Réponses: 4
    Dernier message: 15/06/2011, 17h23
  4. jsch : ssh sans mot de passe
    Par zc1294 dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 17/07/2009, 14h54
  5. Réponses: 15
    Dernier message: 01/05/2007, 00h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo