30 votes

Activer la connexion ssh-key-only à mon Mac pour 1 utilisateur

J'ai un Macbook Air auquel je voudrais permettre un accès SSH à distance sans mot de passe. J'ai créé un utilisateur appelé remotepair auquel je me suis connecté et avec lequel j'ai vérifié que je pouvais utiliser le Mac. J'ai également ajouté cet utilisateur à la liste des utilisateurs autorisés du service "Supprimer la connexion" et activé le service. Tout cela a été fait dans le panneau de configuration "Partage".

J'ai obtenu la clé publique d'un autre ordinateur et l'ai ajoutée au fichier /Users/remotepair/.ssh/authorized_keys . Lorsque l'autre ordinateur fait ssh remotepair@<my ip> Je reçois toujours une demande de mot de passe.

Comment désactiver cette demande de mot de passe ?

1 votes

Je vous recommande d'ajouter "SSH Key-only authentication" à l'intitulé de votre question - la façon dont elle se lit maintenant ressemble à une connexion ordinaire par fenêtre de l'interface graphique.

32voto

Caesium Points 847

Pour désactiver l'authentification par mot de passe, vous devez modifier les paramètres suivants /etc/ssh/sshd_config . Sur Terminal :

sudo vim /etc/ssh/sshd_config

(ou remplacer par votre éditeur préféré)

Cherchez la ligne :

#ChallengeResponseAuthentication yes

Et changez-le en :

ChallengeResponseAuthentication no

C'est-à-dire qu'il faut retirer le # au début, et changer yes à no .

Toutes les connexions ssh suivantes seront maintenant EXIGER d'utiliser une clé ssh et ne vous demandera pas de mot de passe. Assurez-vous que votre clé ssh fonctionne avant de faire cela si vous n'avez pas d'accès local ! Il n'est pas nécessaire de redémarrer le démon ssh ou quoi que ce soit d'autre car il est lancé à la demande pour chaque nouvelle connexion entrante. Notez que vous pouvez également voir un PasswordAuthentication mais la valeur par défaut est no déjà.

Si vos clés ssh ne fonctionnent pas, c'est un autre problème, mais cela répond à la question telle qu'elle est posée maintenant :)

0 votes

Je dois également ajouter l'utilisateur au paramètre AllowUser. Je ne peux que supposer que la configuration de l'interface graphique n'a pas également modifié cette ligne de texte.

8 votes

Notez que dans les versions ultérieures de Mac OS X (certainement dans El Capitan), sshd_config a été déplacé vers /etc/ssh/ .

3 votes

Remarque : à partir de MacOS Sierra (v10.12.x), la valeur par défaut de l'option PasswordAuthentication est devenu yes alors assurez-vous de le changer en no .

4voto

Ivan G. Points 151

Pour mettre à jour la réponse pour MacOS Sierra (10.12.6 spécifiquement), il semble que le fichier de configuration soit maintenant /etc/ssh/sshd_config

2 lignes doivent être décommentées+modifiées pour désactiver complètement l'authentification par mot de passe : (Il s'agit des lignes 57 à 62, incluses, dans le fichier de configuration par défaut de l'application sshd_config fichier)

# To disable tunneled clear text passwords, change to no here!
PasswordAuthentication no
#PermitEmptyPasswords no

# Change to no to disable s/key passwords
ChallengeResponseAuthentication no

Comme mentionné précédemment, vous pouvez activer/désactiver l'accès ssh à partir de l'interface graphique System Preferences.app, et aucun redémarrage du démon n'est nécessaire entre les modifications de la configuration.

2voto

vilmoskörte Points 867

Vous devez vérifier les permissions des répertoires concernés : /Users/remotepair/ y /Users/remotepair/.ssh ils ne doivent pas permettre l'accès en écriture à d'"autres" utilisateurs. Mon .ssh a des droits d'accès uniquement pour le propriétaire.

De plus, sur le système distant, faites un ssh -v remotepair@yoursystem pour voir quelles méthodes d'autorisation sont autorisées et tentées. Recherche de Authentications that can continue: publickey,password,keyboard-interactive . Vous devez peut-être activer RSAAuthentication sur votre système.

2voto

lava37 Points 71

Sur un système de test ici, la désactivation de l'invite SSH a nécessité l'ajout des deux lignes suivantes dans le fichier /etc/sshd_config :

PasswordAuthentication no
ChallengeResponseAuthentication no

Les commentaires dans sshd_config conseille également d'ajouter la ligne suivante :

UsePAM no

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X