Tenho algumas dúvidas sobre certas configurações de servidor ssh /etc/ssh/sshd_config
. Eu quero o próximo comportamento:
- A autenticação de chave pública é a única maneira de se autenticar como raiz (sem autenticação por senha ou outra)
- Usuários normais podem usar ambos (autenticação por senha e chave pública)
Se eu definir o PasswordAuthentication no
meu primeiro ponto está satisfeito, mas não o segundo. Existe uma maneira de definir PasswordAuthentication no
apenas para root?
ssh
authentication
mavillan
fonte
fonte
service ssh restart
no servidor e, em seguida, no cliente, tentei conectar-me sem a minha chavessh -o PreferredAuthentications=password -o PubkeyAuthentication=no root@host
e, de fato, não consegui entrar com a senha, mas com a chave para o usuário root.ssh -o PreferredAuthentications=password root@host
não é particularmente seguro imhoVocê pode usar
Match
blocos para configurar algumas opções por autenticação de usuário ou grupo ou por endereço IP ou nome do host da origem da conexão.fonte
Eu tenho uma abordagem ainda mais restritiva para conceder privilégios de root no meu servidor, o que pode ser interessante para os paranóicos como eu. Cuidado com o que faz e em que ordem; caso contrário, você pode acabar com um sistema no qual não pode obter acesso root.
sugroup
, cujos membros poderão se tornar raiz e permitir apenas a autenticação de chave para esse grupo, colocando as seguintes linhas no final do sshd_confid:Match Group sugroup
PasswordAuthentication no
auth required pam_wheel.so group=sugroup
no/etc/pam.d/su
. Pode já estar lá e você só precisa descomentá-lo. Isso nega acesso root a todos os usuários que não são membros do sugroupPermitRootLogin no
in/etc/ssh/sshd_config
.Usando esta configuração, é necessário usar uma autenticação de chave e uma senha para se tornar root. Eu configurei meu servidor assim, pois prefiro não ter acesso root direto via ssh, independentemente do método de autenticação.
fonte