SFTP sta per Secure File Transfer Protocol che abbiamo utilizzato per il trasferimento sicuro dei dati da e verso il tuo sistema locale. Funziona su protocollo SSH e quindi è considerato più sicuro del semplice FTP (File Transfer Protocol). Il trasferimento dei dati è un'attività di routine di ogni amministratore di sistema e altri sviluppatori che devono apportare modifiche al proprio codice.
Quindi, nell'articolo di oggi, mostreremo i passaggi dettagliati per configurare il server SFTP e creare utenti con le autorizzazioni di directory specificate.
Per la dimostrazione, stiamo utilizzando Ubuntu 20.04 LTS per la configurazione SFTP, ma è possibile eseguire passaggi simili nel caso in cui utilizzi il sistema operativo RHEL/CentOS.
Prerequisiti:
Partendo dai prerequisiti, dobbiamo assicurarci di avere i privilegi sudo o utente root sul server in cui dobbiamo creare Utenti SFTP.
Iniziamo accedendo al sistema usando ssh per il quale puoi usare il terminale Putty o Shell del tuo desktop Linux.
# ssh -i key.pem [email protected]_server_ip
# sudo -i
Puoi anche accedere direttamente al tuo sistema, ma assicurati di utilizzare il tuo nome utente e le tue credenziali.
Fase 1:creazione di un nuovo utente solo SFTP
La creazione di un nuovo utente per SFTP è simile a quella per l'aggiunta di qualsiasi altro utente generico. Ma per limitarne l'utilizzo solo per scopi SFTP, lo assegneremo a nessuna shell di accesso.
Esegui il comando seguente per creare un utente SFTP specificando la sua home directory personalizzata.
# useradd -m -d /home/example.com sftp_user
Imposta la password dell'utente appena creato usando il comando "passwd" come di seguito.
# passwd sftp_user
Assicurati di impostare una password complessa per la sua sicurezza. Quindi assegnagli una shell nologin modificando il file 'passwd' come di seguito.
# vim /etc/passwd
sftp_user:x:1001:1001::/home/example.com:/usr/sbin/nologin
Salva e chiudi usando :wq! Per applicare le modifiche.
Fase 2:imposta le autorizzazioni della directory
Dopo aver creato il nuovo utente, è necessario impostare le autorizzazioni di directory e la proprietà corrette per la directory dell'utente che abbiamo creato nel primo passaggio.
# chmod 755 /home/example.com/
# chown root:root /home/example.com
Fase 3:Limita l'accesso alla directory
Ora abbiamo un nuovo utente solo SFTP, quindi dobbiamo limitare l'accesso alla sua directory per essere accessibile alla cartella home specificata che abbiamo creato.
Per fare ciò, modificheremo il file di configurazione ssh aggiungendo i seguenti parametri.
# vim /etc/ssh/sshd_config
subsystem sftp internal-sftp Match User sftp_user ChrootDirectory %h AllowTCPForwarding no X11Forwarding no PasswordAuthentication yes ForceCommand internal-sftp
Prima di salvare le modifiche apportate, assicurati di aggiungere il tuo nome utente a "Match User" , mentre "%h" rappresenta la home directory del tuo nuovo utente all'interno dell'ambiente limitato. Questa "CrootDirectory" assicurerà che il tuo utente SFTP non abbia accesso a nessun'altra directory.
Salva il file di configurazione ssh, verifica la sintassi se c'è un problema, quindi riavvia i suoi servizi e conferma se è in esecuzione utilizzando il sotto i comandi.
# ssh -t
# systemctl restart sshd
# systemctl status sshd
Qui puoi vedere che prima si è verificato un errore nel file di configurazione ssh che abbiamo corretto commentando la voce aggiuntiva e riavviando il servizio sshd.
Fase 4:verifica dell'accesso SFTP
A questo punto, siamo pronti per utilizzare il nostro utente SFTp, ma prima testiamolo per assicurarci che abbia solo accesso SFTP usando il comando ssh.
# [email protected]
Considerando che xx deve essere sostituito con il tuo IP del server. Di conseguenza, dovresti ottenere l'errore di connessione come mostrato di seguito.
Fase 5:utilizzo del client SFTP
Sono disponibili un paio di client SFTP da utilizzare per il sistema operativo multipiattaforma e puoi utilizzare il tuo preferito. Lo testeremo utilizzando FileZilla che è uno dei migliori e più utili client FTP/SFTP disponibili per l'uso. Puoi scaricarlo facilmente dal loro link ufficiale.
Apriamolo nel tuo sistema e diamo l'indirizzo IP del tuo server SFTP insieme al nome utente e alla password creati.
In caso di esito positivo delle credenziali, potrai accedere alla directory specificata solo dove potrai caricare o scaricare i dati.
Conclusione:
In questo articolo abbiamo trattato i passaggi dettagliati per l'installazione e il nuovo server SFTP apportando le modifiche alla configurazione ssh, aggiungendo nuovi utenti e assegnando le autorizzazioni di directory richieste. Puoi aggiungere tutti gli utenti che vuoi o semplicemente creare un nuovo gruppo e inserire nuovi utenti in quel gruppo.