Verifique se sua chave SSH pública está instalada no arquivo /home/non-root/.ssh/authorized_keys do usuário non-root . A mensagem Server refused our key sugere que não está ou não está instalada corretamente.
Se você quiser usar a mesma chave SSH para root e seus non-root usuários, pode ser tão simples quanto copiar o arquivo /root/.ssh/authorized_keys em /home/non-root/.ssh/authorized_keys .
Além disso, a mensagem Disconnected: No supported authentication methods available (server sent: publickey) parece sugerir que esse servidor SSH está configurado apenas para permitir autenticação com chaves SSH. Se você quiser permitir a autenticação baseada em senha também, adicione PasswordAuthentication yes ao seu arquivo /etc/ssh/sshd_config e reinicie o sshd .
Como por não ser solicitado root password ao efetuar login como root , por padrão, o servidor SSH é configurado para preferir autenticação de chave SSH em senhas, portanto, se isso for bem-sucedido, não será solicitada a senha.
Wiki do ArchLinux tem mais informações sobre o uso de chaves SSH que podem ser úteis também.