Instalei o Google-Authenticator em uma máquina CentOS 6.5 e configurei determinados usuários para fornecer OTP.
Durante a edição /etc/ssh/sshd_config
, vi uma diretiva " PermitRootLogin
" comentada por padrão.
Eu gostaria de definir " PermitRootLogin no
" mas ainda poder ssh na máquina como root somente da rede local.
Isso é possível?
sudo - su
no root ou fazer qualquer coisa que os usuários não precisem (em sudoers, você usa a lista branca para comandos). Se você precisa de root, deve estar fisicamente no console - ou seja. Raiz sobre SSH nunca deve ser permitida ... chaves ou não.Respostas:
Use o
Match
parâmetro de configuração em/etc/ssh/sshd_config
:Vejo
man sshd_config
fonte
~root/.ssh/authorized_keys
. Prefixe a chave comfrom="192.168.0.0/24 "
.AllowUser root
O
Match address
método 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 logins ao usuárioitai
(de qualquer lugar) eroot
(de uma rede específica), use:Isso impede que todos os outros usuários (como
apache
) façam login através do SSH.Veja também a
AllowUsers
palavra - chave no manual sshd_config (5) .fonte
AllowGroups
e adicionando todos os usuários que devem poder fazer login usando SSH em um grupo específico. Acho que é uma questão de gosto, mas isso parece menos edição do sshd_config (que se traduz em menos risco de bagunçar e bloquear todo mundo).AllowUsers itai [email protected].*
eAllowGroups ssh-users
e você não vai acidentalmente causar um bloqueio no caso do estagiário apaga acidentalmente o grupo :)