Como permitir que o ssh faça root apenas na rede local?

34

Instalei o Google-Authenticator em uma máquina do CentOS 6.5 e configurei certos usuários para fornecer o OTP.

Enquanto editava /etc/ssh/sshd_config , vi uma diretiva " PermitRootLogin " comentada por padrão.

Eu gostaria de definir " PermitRootLogin no ", mas ainda ser capaz de ssh para a máquina como root somente da rede local.

Isso é possível?

    
por Itai Ganot 17.07.2016 / 14:07

2 respostas

54

Use o parâmetro Match config em /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

Veja man sshd_config

    
por 17.07.2016 / 14:47
14

O método Match address já foi mencionado, mas você também pode restringir os usuários (ou grupos) com permissão para efetuar login em um sistema. Por exemplo, para limitar os logins para o usuário itai (de qualquer lugar) e root (de uma rede específica), use:

AllowUsers itai [email protected].*

Isso impede que todos os outros usuários (como apache ) efetuem login por meio do SSH.

Veja também a palavra-chave AllowUsers no manual sshd_config (5) .

    
por 17.07.2016 / 19:51