web-dev-qa-db-fra.com

Comment autoriser ssh à rooter l'utilisateur uniquement à partir du réseau local?

J'ai installé Google-Authenticator sur une machine CentOS 6.5 et configuré certains utilisateurs pour fournir OTP.

Lors de l'édition /etc/ssh/sshd_config J'ai vu une directive "PermitRootLogin" qui est commentée par défaut.

Je souhaite définir "PermitRootLogin no "mais pour pouvoir toujours ssh sur la machine en tant que root uniquement à partir du réseau local.

Est-ce possible?

39
Itai Ganot

Utilisez le paramètre de configuration Match dans /etc/ssh/sshd_config:

# general config
PermitRootLogin no 

# the following overrides the general config when conditions are met. 
Match Address  192.168.0.*
    PermitRootLogin yes

Voir man sshd_config

56
Sven

Le Match address a déjà été mentionnée, mais vous pouvez également restreindre les utilisateurs (ou groupes) autorisés à se connecter à un système. Par exemple, pour limiter les connexions à l'utilisateur itai (de n'importe où) et root (à partir d'un réseau spécifique), utilisez:

AllowUsers itai [email protected].*

Cela empêche tous les autres utilisateurs (comme Apache) de se connecter via SSH.

Voir aussi le mot clé AllowUsers dans le manuel sshd_config (5) .

14
Lekensteyn