Quando eu configurei o meu Debian 6, fiquei pensando: quais usuários além do root cuja senha eu sei pode fazer login no meu sistema via SSH?
Quando instalo o Apache 2, um usuário chamado www-data é criado. Esse usuário tem o direito de fazer login no meu sistema via SSH? Mas se houvesse alguma senha padrão para www-data, todos poderiam entrar, parece improvável para mim.
Onde tenho uma lista em que usuários têm permissão para fazer login no meu sistema via SSH? Não foi possível encontrar nada nos arquivos de configuração do ssh.
sshd_config
arquivo enviado ". Alguns SOs são enviados com login raiz sobre SSH não permitido, por exemplo.Por padrão,
SSH server
nem está instalado. Você precisaria instalar oopenssh-server
pacote antes que alguém pudesse fazer o SSH.Depois disso, qualquer usuário precisa passar em duas verificações:
Autenticação SSH significa que o usuário deve ter uma senha válida
/etc/shadow
ou uma chave pública SSH válida com as permissões corretas no usuário de destino~/.ssh/authorized_keys
.As senhas válidas são descritas mais adiante na
crypt(3)
página de manual, mas basicamente se o segundo campo do usuário/etc/shadow
for qualquer coisa que comece com$NUMBER$
, provavelmente é válido e se é*
ou!
é inválido.As verificações de conta PAM basicamente significam que a conta não expirou. Você pode verificar isso usando
chage -l USERNAME
.Então, para responder às suas perguntas, que eu saiba:
www-data
possui uma senha com hash*
e não há~www-data/.ssh/authorized_keys
arquivogrep -v '^[^:]*:[!*]:' /etc/shadow
fonte