Come posso risolvere i problemi di connessione alla mia istanza Linux EC2 utilizzando una connessione SFTP?

4 minuti di lettura
0

Non riesco a connettermi alla mia istanza Linux Amazon Elastic Compute Cloud (Amazon EC2) utilizzando una connessione Secure File Transfer Protocol (SFTP). Oppure, ricevo il messaggio di errore "Autorizzazione remota di readdir negata".

Risoluzione

Sono diversi i motivi per cui potresti non riuscire a connetterti all'istanza di EC2 tramite una connessione SFTP. Per risolvere i problemi di connessione, completa i seguenti passaggi.

Verifica che l'istanza soddisfi i prerequisiti della connessione SSH

SFTP funziona tramite SSH. Verifica che l'istanza soddisfi tutti i prerequisiti di connessione SSH. Per un elenco dei prerequisiti, consulta Connettiti alla tua istanza Linux da Linux o macOS utilizzando SSH.

Accedi all'istanza con la messaggistica dettagliata attiva per identificare l'errore

Potresti ricevere uno dei seguenti messaggi di errore di connessione più comuni:

  • Connessione scaduta o Connessione rifiutata
  • Autorizzazione negata o Autenticazione non riuscita
  • Il server ha rifiutato la nostra chiave

Per ulteriori informazioni sulla messaggistica dettagliata e su come risolvere gli errori SSH, consulta In che modo posso risolvere i problemi di connessione alla mia istanza Linux Amazon EC2 tramite SSH?

Se hai attivato la Console seriale EC2, puoi utilizzarla per risolvere i problemi relativi ai tipi di istanze basati su Nitro supportati. La console seriale consente di risolvere problemi di avvio, configurazione di rete e configurazione SSH. La console seriale si connette all'istanza senza richiedere una connessione di rete funzionante. Puoi accedere alla console seriale utilizzando la console Amazon EC2 o l'interfaccia della linea di comando AWS (AWS CLI).

Prima di utilizzare la console seriale, concedi l’accesso a livello di account. Quindi, crea delle policy AWS Identity and Access Management (IAM) che concedano l'accesso ai tuoi utenti IAM. Ogni istanza che utilizza la console seriale deve inoltre includere almeno un utente basato su password. Per ulteriori informazioni, consulta Configurazione dell'accesso alla console seriale EC2.

Nota: se ricevi messaggi di errore durante l'esecuzione dei comandi AWS CLI, assicurati di utilizzare la versione più recente di AWS CLI.

Controlla i log di autenticazione e di sistema per verificare la presenza di errori

Log di autenticazione di Amazon Linux, Amazon Linux2, RHEL e Fedora

$ sudo less /var/log/secure

Log di sistema generici di Amazon Linux, Amazon Linux2, RHEL e Fedora

$ sudo less /var/log/messages

Log di autenticazione Debian e Ubuntu

$ sudo less /var/log/auth.log

Log di sistema generici Debian e Ubuntu

$ sudo less /var/log/syslog

Amazon Linus 2023

Controlla i log sshd:

journalctl -u sshd

Controlla i log di sistema generici:

journalctl -a

Verifica che nel file di configurazione SSHD sia configurato il sottosistema per SFTP

Verifica che il file di configurazione SSHD abbia il sottosistema per SFTP configurato e che il file oggetto condiviso per sftp-server esista nella rispettiva directory. Se la connessione SFTP si chiude a causa di un sottosistema SFTP mancante, il log potrebbe mostrare l'errore richiesta del sottosistema non riuscita sul canale 0.

Distribuzioni basate su RHEL e 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

Distribuzioni basate su Debian e 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

Per ulteriori informazioni, consulta la sezione Sottosistema in sshd_config nella pagina del manuale di Linux.

Risoluzione dell'errore Autorizzazione remota di readdir negata

L'errore Autorizzazione remota di readdir negata indica che l'utente non dispone delle autorizzazioni corrette per connettersi a SFTP. L'utente deve disporre almeno dell'autorizzazione in lettura ed esecuzione per passare a una directory di destinazione.

Verifica che l'utente disponga dell’autorizzazione ad accedere alla directory di destinazione:

ls -ldZ /directory

Verifica le autorizzazioni della lista di controllo degli accessi (ACL) che limitano l'accesso degli utenti:

getfacl /directory

Verifica di aver attivato SELinux:

getenforce

Se SELinux è attivato, esamina /var/log/audit/audit.log o /var/log/audit.log per verificare la presenza di eventuali errori di autorizzazione negata in base al contesto SELinux.

AWS UFFICIALE
AWS UFFICIALEAggiornata 6 mesi fa