web-dev-qa-db-fra.com

Quelqu'un peut-il expliquer 'PasswordAuthentication' dans le fichier / etc / ssh / sshd_config?

Sur cette page , l'explication donnée est la suivante:

L'option PasswordAuthentication spécifie si nous devons utiliser une authentification basée sur un mot de passe. Pour une sécurité renforcée, cette option doit toujours être définie sur oui.

Mais il ne fournit aucun scénario de cas d'utilisation précisant le moment où un oui ou un non serait approprié. Quelqu'un peut-il s'il vous plaît élaborer davantage?

26
Zeta2

Votre lien pointe vers la documentation périmée depuis 10 ans.

SSH prend en charge plusieurs manières d’authentifier les utilisateurs. La plus courante consiste à demander un identifiant et un mot de passe, mais vous pouvez également authentifier un identifiant et une clé publique. Si vous définissez PasswordAuthentication sur no, vous ne pourrez plus utiliser un identifiant et un mot de passe pour vous authentifier. Vous devrez utiliser un identifiant et une clé publique (if PubkeyAuthentication est mis à oui)

21
radius

Veuillez noter que le paramètre PasswordAuthentication ne contrôle pas TOUTES les authentifications basées sur des mots de passe. ChallengeResponseAuthentication demande également généralement des mots de passe.

PasswordAuthentication contrôle la prise en charge du schéma d'authentification 'mot de passe' défini dans RFC-4252 (section 8). ChallengeResponseAuthentication contrôle la prise en charge du schéma d'authentification 'clavier interactif' défini dans la RFC-4256. Le schéma d'authentification "interactif au clavier" pourrait, en théorie, poser à un utilisateur un nombre quelconque de questions à facettes multiples. En pratique, il ne demande souvent que le mot de passe de l'utilisateur.

Si vous souhaitez désactiver complètement l'authentification par mot de passe, définissez BOTH PasswordAuthentication et ChallengeResponseAuthentication sur 'no'. Si vous êtes du genre ceinture et bretelles, envisagez également de définir UsePAM sur "non".

L'authentification basée sur une clé publique/privée (activée par le paramètre PubkeyAuthentication) est un type d'authentification distinct qui n'implique évidemment pas l'envoi de mots de passe d'utilisateur au serveur.

Certains diront que l'utilisation de ChallengeResponseAuthentication est plus sécurisée que PasswordAuthentication car il est plus difficile à automatiser. Ils recommandent donc de laisser PasswordAuthentication désactivé et de laisser ChallengeResponseAuthentication activé. Cette configuration encourage également (mais n'empêche pas nécessairement) l'utilisation de l'authentification Publickey pour toutes les connexions système automatisées. Mais, étant donné que SSH est un protocole réseau, le serveur n’a aucun moyen de garantir que les réponses à ChallengeResponseAuthentication (autrement dit 'clavier-interactif') sont effectivement fournies par un utilisateur assis devant un clavier aussi longtemps que le ou les défis sont toujours résolus. et consiste uniquement à demander à un utilisateur son mot de passe.

50
Izzy

PasswordAuthentication est l'implémentation la plus simple, car il n'y a rien à faire. La contrepartie est que vous envoyez votre mot de passe, via une connexion cryptée, au serveur. Cela peut être un problème de sécurité si le serveur a été compromis, car le mot de passe pourrait alors être capturé.
Avec la clé publique, votre mot de passe n'est pas transmis au serveur, il est plus sécurisé mais nécessite davantage de configuration.

3
kaklon

Vous pouvez le définir sur no lorsque vous utilisez les touches , ou pour forcer leur utilisation.

0