No se puede SSH Permiso denegado clave pública

No se puede SSH Permiso denegado clave pública

Voy a intentar resumir esto lo mejor que pueda y con el mayor detalle posible. Anoche implementé mi primer sitio Django en un servidor Ubuntu (23.04) en Linode después de seguir este Corey Schafer Python Django.tutorial. Todo salió bien y configuré SSH como se muestra en el tutorial en el video, aproximadamente entre 23 y 25 minutos sin problemas. Verifiqué que todo estaba funcionando en un momento. Salí del servidor y verifiqué que podía volver a ingresar a través de SSH sin ningún problema. Continuando, pasé una o dos horas más y configuré un montón de otras cosas y me aseguré de que el sitio estuviera activo antes de irme a la cama y salir del servidor. Hoy vuelvo a conectarme al servidor y me aparece un mensaje.Permission denied (publickey).

Sabiendo que agregué un firewall después de todo esto, pensé genial, probablemente me bloqueé las conexiones ssh o algo así. Sin embargo, después de buscar en Google, encontré este modificador ssh -vT user@IPy rápidamente vi que, efectivamente, parece estar intentando conectarse a través de ssh y se establece una conexión, pero simplemente falla por razones que no entiendo del todo.

Luego intenté iniciar sesión como usuario root a través de Linodes Weblish y pude ingresar exitosamente e intenté verificar un par de cosas.

• Primero verifiqué que hay una carpeta en la ubicación /home/user/.sshque contiene un archivo con la clave.

• En segundo lugar, verifiqué los permisos revisando el video de la carpeta ~/.ssh/ y el contenido y ejecuté los siguientes dos comandos nuevamente. sudo chmod 700 ~/.ssh/ysudo chmod 600 ~/.ssh/*

El resultado es el siguiente para la carpeta ssh en mi directorio de inicio.

lewpiper@django-server:~$ la -la
total 40
drwxrwxrwx 6 lewpiper lewpiper 4096 Jun 14 06:37 .
drwxr-xr-x 3 root     root     4096 Jun 14 05:22 ..
-rw------- 1 lewpiper lewpiper  100 Jun 14 05:34 .bash_history
-rw-r--r-- 1 lewpiper lewpiper  220 Jun 14 05:22 .bash_logout
-rw-r--r-- 1 lewpiper lewpiper 3771 Jun 14 05:22 .bashrc
drwx------ 4 lewpiper lewpiper 4096 Jun 14 06:09 .cache
drwxrwxr-x 3 lewpiper lewpiper 4096 Jun 14 06:37 .local
drwxr-xr-x 8 lewpiper www-data 4096 Jun 14 06:36 Portfolio
-rw-r--r-- 1 lewpiper lewpiper  807 Jun 14 05:22 .profile
drwx------ 2 lewpiper lewpiper 4096 Jun 15 06:03 .ssh
-rw-r--r-- 1 lewpiper lewpiper    0 Jun 14 05:33 .sudo_as_admin_successful

Los siguientes son los permisos para el archivo dentro de la carpeta ssh en el directorio de inicio.

lewpiper@django-server:~/.ssh$ ls -la
total 12
drwx------ 2 lewpiper lewpiper 4096 Jun 15 06:03 .
drwxrwxrwx 6 lewpiper lewpiper 4096 Jun 14 06:37 ..
-rw------- 1 lewpiper lewpiper  749 Jun 14 05:32 authorized_keys

• En tercer lugar, configuro un firewall en el servidor y los tipos de conexión actuales permitidos son los siguientes.

lewpiper@django-server:~$ sudo ufw status
Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere                  
80/tcp                     ALLOW       Anywhere                  
22/tcp (v6)                ALLOW       Anywhere (v6)             
80/tcp (v6)                ALLOW       Anywhere (v6)  

• Finalmente fui al /etc/ssh/sshd_configarchivo y por ahora habilité la autenticación de contraseña nuevamente hasta que pueda llegar al fondo del problema de ssh. Por ahora puedo iniciar sesión sin tener que utilizar las ofertas web de Linode. Sin embargo, después de hacer esto, intenté reiniciar el servicio ssh en el servidor usando el siguiente comando, sudo systemctl restart sshdcomo dice el tutorial que debes hacer al editar este archivo. En lugar de eso, recibí un error. Failed to restart sshd.service: Unit sshd.service not found.Recuerdo haber recibido este mensaje anoche también cuando estaba configurando el servidor y una búsqueda rápida en Google mostró que el nombre del servicio había cambiado, así que lo intenté sudo systemctl restart sshy pareció funcionar anoche, pero Me pregunto si me equivoqué en esto.

A continuación se muestra el archivo sshd_config tal como lo tengo ahora, pero tenga en cuenta que cambié la autenticación de contraseña a sí para poder iniciar sesión sin tener que usar la clave rsa generada, que es mi problema.

LoginGraceTime 2m
PermitRootLogin no
#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

# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
#HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# HostbasedAuthentication
#IgnoreUserKnownHosts no
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes

# To disable tunneled clear text passwords, change to no here!
PasswordAuthentication yes
#PermitEmptyPasswords no

# Change to yes to enable challenge-response passwords (beware issues with
# some PAM modules and threads)
KbdInteractiveAuthentication no

# Kerberos options
#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes
#KerberosGetAFSToken no

# GSSAPI options
#GSSAPIAuthentication no
#GSSAPICleanupCredentials yes
#GSSAPIStrictAcceptorCheck yes
#GSSAPIKeyExchange no

# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the KbdInteractiveAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via KbdInteractiveAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and KbdInteractiveAuthentication to 'no'.
UsePAM yes

#AllowAgentForwarding yes
#AllowTcpForwarding yes
#GatewayPorts no
X11Forwarding yes
#X11DisplayOffset 10
#X11UseLocalhost yes
#PermitTTY yes
PrintMotd no
#PrintLastLog yes
#TCPKeepAlive yes
#PermitUserEnvironment no
#Compression delayed
#ClientAliveInterval 0
#ClientAliveCountMax 3
#UseDNS no
#PidFile /run/sshd.pid
#MaxStartups 10:30:100
#PermitTunnel no
#ChrootDirectory none
#VersionAddendum none

# no default banner path
#Banner none

# Allow client to pass locale environment variables
AcceptEnv LANG LC_*

# override default of no subsystems
Subsystem       sftp    /usr/lib/openssh/sftp-server

# Example of overriding settings on a per-user basis
#Match User anoncvs
#       X11Forwarding no
#       AllowTcpForwarding no
#       PermitTTY no
#       ForceCommand cvs server

Preguntas: Entonces mi pregunta desde aquí tiene dos partes. ¿Me perdí algo que pudiera hacer para solucionar mejor el motivo por el cual sucede esto o podría intentarlo? Dos, si no hay otra solución de problemas recomendada, ¿debería intentar eliminar mi archivo de claves_autorizadas en el servidor y copiarlo de forma segura en el servidor? Tenga en cuenta que ni siquiera estoy seguro de si eso funcionaría porque no estoy convencido de que ese sea el problema. Mi corazonada es que puede haber algo que me esté perdiendo o que haya más en los Failed to restart sshd.service: Unit sshd.service not found.mensajes que mencioné anteriormente. ¿También se piensa en reiniciar el servidor? Suena extraño, pero tal vez algo como el firewall o algo así se recarga y todo queda bien entonces.

información relacionada