![No se puede conectar al servidor como root a través de ssh](https://rvso.com/image/1692519/No%20se%20puede%20conectar%20al%20servidor%20como%20root%20a%20trav%C3%A9s%20de%20ssh.png)
Quiero usar el explorador remoto en VS Code en Windows para acceder a un servidor desde Ubuntu. Ingresar una contraseña todo el tiempo es molesto, así que intenté generar una clave ssh usando ssh-keygen. La clave funciona bien para un usuario normal, pero no puedo iniciar sesión como root.
El error de cmd (ssh root@<server_ip>):
root@<server_ip>: Permission denied (publickey,password).
El error en /var/log/auth.log
:
sshd[1012327]: Connection reset by authenticating user root <client_ip> port 59021 [preauth]
Todas las soluciones que he visto mencionan sshd_config, pero el inicio de sesión de root está habilitado. sshd_config:
# Authentication:
#LoginGraceTime 2m
PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10
PubkeyAuthentication yes
# Expect .ssh/authorized_keys2 to be disregarded by default in future.
#AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
#AuthorizedPrincipalsFile none
#AuthorizedKeysCommand none
#AuthorizedKeysCommandUser nobody
He agregado la clave pública al /home/user/.ssh/authorized_keys
archivo. Me parece que esta clave es solo para el usuario, pero por las guías parece que puedo usarla para root también.
Entonces, ¿por qué no puedo conectarme como root?
Respuesta1
Me parece que esta clave es solo para el usuario, pero por las guías parece que puedo usarla para root también.
Los guías te han equivocado.
Cada usuario tiene su propio directorio personal y, por tanto, el suyo propio authorized_keys
. El directorio de inicio de Root suele ser /root/
. Por lo tanto, el archivo relevante para iniciar sesión como root es /root/.ssh/authorized_keys
. No tiene nada que ver con /home/user/.ssh/authorized_keys
.
Piénsalo. /home/user/.ssh/authorized_keys
pertenece al usuario user
que es un usuario habitual y puedeo no puedetener acceso sudo. El usuario puede registrar cualquier clave allí. Si root usara el mismo archivo, entonces el usuario podría iniciar sesión como root simplemente autorizando alguna clave.