Parece que você não sabe sua senha de root, se mesmo su
recusar sua senha.
Portanto, o que você deve fazer é redefinir sua senha de root. Tendo sudo su
, execute passwd
, digite sua nova senha duas vezes quando solicitado, ...
Agora, você não precisa necessariamente saber sua senha de root. Se você já estiver usando algum registro de chave RSA no seu VPS, poderá autorizar essa chave se conectando como root.
E mesmo assim: você não precisa necessariamente fazer login como root. Se você puder sudo de um usuário de gerenciamento, por que você quer que sua conta root seja autorizada a efetuar login em seu servidor SSH?
Supondo que você queira apenas fazer login usando chaves SSH, altere seu sshd_config
:
PermitRootLogin without-password
PasswordAuthentication no
Supondo que você prefira impedir que o root use o SSH, basta usar:
PermitRootLogin no
PasswordAuthentication no
Se, e somente se, você tiver certeza de que deseja que a autenticação de senha do root seja permitida em SSH, sabendo da sua su
senha, você pode considerar:
PermitRootLogin yes
PasswordAuthentication yes
Se você quiser ter certeza de que a autenticação de senha do root está desativada em todo o sistema, você pode executar (como root):
passwd -d
A partir da sua última edição, em relação a sudo su
com This account is currently not available.
: isso indicaria que o shell de sua conta raiz foi alterado para algo como nologin
.
Tente isto: sudo su -s /bin/bash
.
Supondo que ele tenha aberto um shell de root, você pode querer alterar seu shell de root usando chsh
.