Come creare un utente SFTP in Ubuntu 22.04

21 giu 2022 3 min di lettura
Come creare un utente SFTP in Ubuntu 22.04
Indice dei contenuti

Introduzione

SFTP è un protocollo che consente il trasferimento sicuro di file su una rete. Viene spesso utilizzato da aziende e privati ​​per trasferire dati sensibili. SFTP è simile a FTP ma utilizza un protocollo diverso per la comunicazione. SFTP è più sicuro di FTP e viene spesso utilizzato insieme a SSH (Secure Shell) per fornire un livello di sicurezza ancora più elevato.

In questo tutorial, ti aiuteremo a configurare un server SFTP e creare un utente solo SFTP su sistemi Ubuntu 22.04. Quell'account può connettersi tramite SFTP ma non è in grado di connettersi tramite SSH. Inoltre, questo limiterà (chroot) l'utente SFTP solo a una directory specifica.

Prerequisiti

  • Un sistema Ubuntu 22.04 LTS in esecuzione con accesso alla shell
  • Richiede un account con privilegi sudo

Creare un utente SFTP

Prima di tutto, crea un nuovo account nel tuo sistema da usare come utente sftp.

Il comando seguente creerà un nuovo account chiamato sftpuser senza accesso alla shell. Puoi modificare il nome utente di tua scelta:

sudo adduser --shell /bin/false sftpuser 

Configurare la directory SFTP

Ora, crea la struttura della directory in modo che sia accessibile dall'utente sftp:

sudo mkdir -p /var/sftp/files 

Qui consentiremo agli utenti di accedere solo alla directory "file".

Ora, cambia la proprietà della directory dei file in sftpuser. In modo che sftpuser possa leggere e scrivere solo su questa directory:

sudo chown sftpuser:sftpuser /var/sftp/files 

E imposta il proprietario e il proprietario del gruppo di /var/sftp su root. L'utente root ha accesso in lettura/scrittura su questo accesso. I membri del gruppo e altri account hanno solo autorizzazioni di lettura ed esecuzione:

sudo chown root:root /var/sftp 
sudo chmod 755 /var/sftp 

Aggiornare il file di configurazione SSH

Ora modifica il file di configurazione SSH in un editor di testo:

sudo vim /etc/ssh/sshd_config 

Aggiungi le seguenti impostazioni alla fine del file:

Match User sftpuser
	ForceCommand internal-sftp
	PasswordAuthentication yes
	ChrootDirectory /var/sftp
	PermitTunnel no
	AllowAgentForwarding no
	AllowTcpForwarding no
	X11Forwarding no

Assicurati di aggiungere la configurazione dopo la riga Subsystem.

Salva il file di configurazione e chiudilo.

Ora convalida il file di configurazione:

sudo sshd -t 

Se la convalida ha esito positivo, non verrà visualizzato alcun output. Nel caso in cui venga visualizzato un errore nell'output, assicurati di risolverlo prima di eseguire i comandi successivi.

Riavvia il servizio SSH per applicare le modifiche.

sudo systemctl restart ssh 

Tutto fatto. L'utente solo SFTP è stato creato correttamente sul tuo sistema Ubuntu. Ora prova ad accedere al sistema remoto con le credenziali del nuovo utente e controlla se tutto funziona correttamente.

Connettersi all'utente SFTP

È possibile connettersi a un server SFTP remoto utilizzando una riga di comando o applicazioni grafiche come Filezilla o WinSCP. In questo tutorial, ti mostrerò entrambi i modi per connettere sftp solo a un account sul sistema Ubuntu.

Gli utenti Linux possono utilizzare l'utilità della riga di comando sftp per connettersi a un'istanza sftp remota:

sftp [email protected] 

Puoi anche connetterti a un server SFTP remoto utilizzando applicazioni di interfaccia grafica come FileZilla. Questo è disponibile sia per gli utenti Linux che Windows. Apri l'applicazione Filezilla e inserisci i dettagli sftp:

  • Host: sftp://system-ip-host
  • Username: utilizza l'utente SFTP creato nel passaggio 1.
  • Password: utilizzare la password utente SFTP creata nel passaggio 1.
  • Port: usa la porta del server SSH o tieni vuota per la porta predefinita.

Fare clic sul pulsante Connessione rapida.

Verifica nessun accesso alla shell.

Poiché questo account è configurato per la sola connessione SFTP. Pertanto, se un utente ha tentato di connettersi tramite SSH verrà disconnesso immediatamente dopo l'autenticazione riuscita. L'utente riceverà il seguente messaggio:

ssh [email protected]  
[email protected]'s password:
This service allows sftp connections only.
Connection to sftp.noviello.it closed.

Conclusione

In conclusione, configurare un server SFTP è un ottimo modo per trasferire in modo sicuro file tra computer. Seguendo i passaggi in questo articolo, puoi configurare il tuo server SFTP in pochissimo tempo sui sistemi Ubuntu. Se hai domande, sentiti libero di lasciare un commento qui sotto e saremo felici di aiutarti.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.