15 votes

Désactiver l'authentification par mot de passe ssh sur High Sierra

Je veux désactiver l'authentification par mot de passe - c'est-à-dire uniquement par clé - sur SSH. Je l'ai fait de nombreuses fois sur des variantes de Linux, et une recherche ici suggère que c'est la même chose sur Mac :

/etc/ssh/sshd_config

Puis ajouter/modifier :

PasswordAuthentication no

Cependant, cela ne semble avoir aucun effet, c'est-à-dire que je peux toujours me connecter avec un mot de passe. Existe-t-il un autre moyen de faire cela dans High Sierra ?

1 votes

Vous devez modifier le fichier ssh.plist. Pour cela, il faut désactiver SIP. L'éditer, le recharger via launchctl, puis réactiver SIP.

2 votes

En particulier, UsePAM doit être réglé sur non. Les paramètres du sshd_config de 4yo suivant devraient toujours fonctionner dans la 10.13 : Configuration SSH sans mot de passe

1 votes

@Allan Je peux confirmer que vous ne le faites pas. J'ai réussi à désactiver l'authentification par mot de passe dans High Sierra (10.13.5) en modifiant les paramètres suivants uniquement /etc/ssh/sshd_config (J'ai réglé le PermitRootLogin , PasswordAuthentication , ChallengeResponseAuthentication et UsePAM options toutes à no ) ; SIP n'a jamais été désactivé sur ce Mac particulier.

18voto

ssedano Points 4086

Pour empêcher l'authentification sans clé publique, cherchez chacun de ces éléments dans /etc/ssh/sshd_config , décommentez-les, et mettez-les à 'non' :

PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no

Pour redémarrer sshd (ce qui est nécessaire pour qu'il relise le fichier de configuration), utilisez

sudo launchctl stop com.openssh.sshd
sudo launchctl start com.openssh.sshd

PS : S'il vous plaît être conscient que MacOS a tendance à écraser /etc/ssh/sshd_config à chaque mise à jour mineure. En commençant par Monterey, vous pouvez mettre vos définitions dans /etc/ssh/sshd_config.d/000-local.conf pour éviter cela.

2 votes

Fonctionne aussi sur Big Sur 11.6 Merci.

0 votes

Dans ma réponse initiale, il suffisait de régler PasswordAuthentication et UsePAM sur non. Est-il vraiment nécessaire de définir également ChallengeResponseAuthentication sur non ? Qu'est-ce qui a changé ?

1 votes

@coolaj86 Qu'est-ce que ChallengeResponseAuthentication ajouter ?

5voto

Igor Voltaic Points 252

Comme il a été dit dans le commentaire de klanomath, désactiver uniquement ces lignes ne fonctionnera pas.

PermitRootLogin no
PasswordAuthentication no
PermitEmptyPasswords no
ChallengeResponseAuthentication no

Pour désactiver la connexion par mot de passe, vous devez également modifier la ligne UsePAM.

UsePAM no

3voto

Matthew Points 141

Commentaire de klanomath

En particulier, UsePAM doit être réglé sur non. Les paramètres du sshd_config de 4yo suivant devraient toujours fonctionner dans la 10.13 : Configuration SSH sans mot de passe - klanomath Il y a 2 heures

Cela semble fonctionner. Je n'ai jamais eu à le faire sur les systèmes Linux. Merci beaucoup !

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