Question Comment puis-je autoriser l'authentification par mot de passe SSH à partir de certaines adresses IP uniquement?


J'aimerais autoriser l'authentification par mot de passe SSH à partir d'un certain sous-réseau uniquement. Je vois l'option de le refuser globalement /etc/ssh/sshd_config:

# Change to no to disable tunnelled clear text passwords
#PasswordAuthentication yes

Existe-t-il un moyen d'appliquer cette configuration à une plage d'adresses IP sélectionnée?


87
2018-02-05 17:25


origine




Réponses:


Utiliser un Match bloc à la fin de /etc/ssh/sshd_config:

# Global settings
…
PasswordAuthentication no
…

# Settings that override the global settings for matching IP addresses only
Match address 192.0.2.0/24
    PasswordAuthentication yes

Dites ensuite au service sshd de recharger sa configuration:

service ssh reload

126
2018-02-05 17:42



J'ai essayé ceci (avec 192.168.0.0/16 à la place) et quand j'ai redémarré le service ssh, j'ai été bloqué. SSH a refusé toute connexion. Une idée pourquoi cela pourrait être? - Michael Waterfall
@MichaelWaterfall Il est impossible de dire avec si peu d'informations. Assurez-vous de garder un shell en cours d'exécution jusqu'à ce que vous ayez validé la nouvelle configuration. Le redémarrage du service ssh n'affecte pas les connexions actives. - Gilles
Le problème probable est que vous placez le bloc Match quelque part au milieu de votre sshd_config. Les lignes de correspondance affectent toutes les lignes suivantes jusqu'à la ligne suivante, elles doivent donc se trouver à la fin du fichier. - Ken Simon
Malgré l'indentation dans la réponse, sshd_config n'est pas Python ;) - Nick T
@frepie le Match le bloc s'étend jusqu'au prochain Match directive ou jusqu'à la fin du fichier. C'est pourquoi vous devez le mettre à la fin. - Gilles


vous pouvez ajouter:

AllowUsers user1@192.168.*.*, user2@192.168.*.*

Cela modifie le comportement par défaut, refuse vraiment tous les autres utilisateurs de tous les hôtes. Bloc de correspondance disponible sur OpenSsh version 5.1 et ci-dessus.


6
2017-10-21 08:51



appel j'autorise un groupe au lieu d'un seul utilisateur - Lamar
@Lamar De man sshd_config, ça ressemble à AllowGroups fonctionne de la même manière que AllowUsers, mais AllowUsers semble avoir préséance sur AllowGroups. - conradkdotcom