¿Cómo puedo solucionar los problemas de conexión a mi instancia de Linux EC2 mediante una conexión de SFTP?

4 minutos de lectura
0

No puedo conectarme a mi instancia de Linux de Amazon Elastic Compute Cloud (Amazon EC2) mediante una conexión de protocolo seguro de transferencia de archivos (SFTP) o se muestra el error «remote readdir Permission denied».

Solución

Hay varios motivos por los que la conexión a la instancia de EC2 a través de una conexión SFTP puede fallar. Para solucionar los problemas de conectividad, siga estos pasos.

Comprobación de si la instancia cumple los requisitos previos de conexión SSH

La conexión SFTP funciona superpuesta a SSH. Compruebe si la instancia cumple todos los requisitos previos de la conexión SSH. Para ver una lista de los requisitos previos, consulte Conéctese a la instancia de Linux desde Linux o macOS mediante SSH.

Inicio de sesión en la instancia con los mensajes detallados activados para identificar el error

Es posible que se muestre alguno de los siguientes errores de conexión habituales:

  • Tiempo de espera de conexión agotado o Conexión rechazada
  • Permiso denegado o Error de autenticación
  • Server refused our key

Para obtener más información sobre los mensajes detallados y cómo solucionar los errores de SSH, consulte ¿Cómo puedo solucionar los problemas de conexión a mi instancia Linux de Amazon EC2 mediante SSH?

Si ha activado la consola serie de EC2, puede utilizarla para solucionar problemas con los tipos de instancias basadas en Nitro compatibles. La consola serie le ayuda a solucionar problemas de arranque, configuración de red y configuración de SSH. La consola serie se conecta a su instancia sin necesidad de que haya una conexión de red operativa. Puede acceder a la consola serie mediante la consola de Amazon EC2 o la Interfaz de la línea de comandos de AWS (AWS CLI).

Antes de utilizar la consola serie, concédale acceso en el nivel de cuenta. A continuación, cree políticas de AWS Identity and Access Management (IAM) que concedan acceso a sus usuarios de IAM. Además, cada instancia que utilice la consola serie debe incluir al menos un usuario con contraseña. Para obtener más información, consulte Configurar el acceso a la consola serie de EC2.

Nota: Si se muestran errores al ejecutar los comandos de AWS CLI, asegúrese de que está utilizando la versión más reciente de AWS CLI.

Revisión de los registros de autenticación y del sistema para ver si hay errores

Registro de autenticación de Amazon Linux, Amazon Linux2, RHEL y Fedora

$ sudo less /var/log/secure

Registros genéricos del sistema de Amazon Linux, Amazon Linux2, RHEL y Fedora

$ sudo less /var/log/messages

Registro de autenticación de Debian y Ubuntu

$ sudo less /var/log/auth.log

Registros genéricos del sistema de Debian y Ubuntu

$ sudo less /var/log/syslog

Amazon Linux 2023

Compruebe los registros de sshd:

journalctl -u sshd

Compruebe los registros genéricos del sistema:

journalctl -a

Comprobación de si el archivo de configuración de SSHD tiene configurado el subsistema para SFTP

Compruebe si el archivo de configuración de SSHD tiene configurado el subsistema para SFTP y si existe el archivo de objetos compartidos para sftp-server en el directorio correspondiente. Si la conexión SFTP se cierra debido a la falta de un subsistema SFTP, es posible que el registro muestre un error subsystem request failed on channel 0.

Distribuciones basadas en RHEL y Fedora

$ sudo grep Subsystem /etc/ssh/sshd_config
Subsystem sftp    /usr/libexec/openssh/sftp-server
$ sudo ls -l /usr/libexec/openssh/sftp-server
-rwxr-xr-x. 1 root root 100784 Jun 26  2019 /usr/libexec/openssh/sftp-server

Distribuciones basadas en Debian y Ubuntu

$ sudo grep Subsystem /etc/ssh/sshd_config
Subsystem    sftp    /usr/lib/openssh/sftp-server
$ sudo ls -l /usr/lib/openssh/sftp-server
-rwxr-xr-x 1 root root 105608 Mar  4  2019 /usr/lib/openssh/sftp-server

Para obtener más información, consulte la sección Subsystem en sshd\ _config en la página principal de Linux.

Solución del error «remote readdir Permission denied»

El error remote readdir Permission denied indica que el usuario no tiene los permisos correctos para conectarse a SFTP. El usuario debe tener, como mínimo, permisos de lectura y ejecución para cambiar a un directorio de destino.

Compruebe si el usuario tiene permiso para acceder al directorio de destino:

ls -ldZ /directory

Compruebe los permisos de la lista de control de acceso (ACL) que restringen el acceso de los usuarios:

getfacl /directory

Compruebe si ha activado SELinux:

getenforce

Si SELinux está activado, revise /var/log/audit/audit.log o /var/log/audit.log para ver si hay errores de permiso denegado según el contexto de SELinux.

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 7 meses