Che cos’è FTP?
FTP (File Transfer Protocol) è un protocollo di rete client-server che consente agli utenti di scambiare file da e verso computer remoti.
FTP utilizza testo normale per trasferire dati e accedere ai dati. Ci sono diversi server FTP open source disponibili per la piattaforma del sistema operativo Linux. I server FTP più comunemente utilizzati sono VSFTPD, ProFTPD e PureFTPD. Il protocollo FTP utilizza la porta numero 21 per la connessione e la porta 20 per il trasferimento dei dati. In modalità passiva, vengono utilizzate porte aggiuntive.
In questo tutorial, impareremo come impostare e configurare VSFTPD. È molto sicuro e stabile e disponibile nel repository dei pacchetti CentOS 8.
Installare VSFTP FTP-Server
Per installare il pacchetto VSFTPD su CentOS 8, aprire un terminale o connettersi al server tramite SSH come utente root e digitare il seguente comando:
# dnf install –y vsftpd
una Volta che il pacchetto è installato, avviare e attivare il servizio VSFTPD utilizzando il comando riportato di seguito:
# systemctl enable vsftpd# systemctl start vsftpd
Prendere una copia originale del file di configurazione /etc/vsftpd/vsftpd.conf digitando il seguente comando:
# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bk
Ora modificare il file di configurazione, utilizzando il comando riportato di seguito:
# vim /etc/vsftpd/vsftpd.conf
Trovare e impostare le seguenti direttive ivi:
anonymous_enable=NO # disable anonymous users(Unknown users)local_enable=YES # allow local userswrite_enable=YES # allow ftp write commandslocal_umask=022 # set default umaskdirmessage_enable=YES # enable messages on change directoryxferlog_enable=YES # enable logging of uploads and downloadsconnect_from_port_20=YES # ensure PORT transfer connections from port 20 xferlog_std_format=YES # keep standard log formatlisten=NO # prevent vsftpd run in stand-alone modelisten_ipv6=YES # allow vsftpd to listen on IPv6 socketpam_service_name=vsftpd # set PAM Service name to vsftpd
Configurare l’elenco di Server FTP
per impostazione predefinita, tutti gli utenti che sono in user_list file si trova in /etc/vsftpd/user_list sono autorizzati a utilizzare i servizi FTP.
Per limitare gli utenti in un ambiente chroot, utilizzare le seguenti direttive:Annuncio pubblicitario
chroot_local_user=YES # Create chrooted environment for usersallow_writeable_chroot=YES # Allow write permission to a user on chroot jail directory
Per mantenere l’utente limitare alla loro home directory, utilizzare le seguenti direttive:
userlist_enable=YES # enable vsftpd to load usernamesuserlist_deny=NO # allow access to users in the user list
Se si desidera fornire un accesso complessivo al nostro sistema aggiungere questa direttiva nel file di configurazione:
chroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list #users in this file list have an overall access
Salvare e chiudere il file di configurazione.
Ora, crea una chroot_list nella directory / etc / vsftpd/, usando il seguente comando:
# touch /etc/vsftpd/chroot_list
Aggiungere solo gli utenti in tale elenco a cui si desidera fornire l’accesso complessivo sul sistema.
Creare un utente di accedere al servizio FTP
Per creare un utente per l’utilizzo del servizio FTP, utilizzare il seguente comando:
# useradd user1# passwd user1
Aggiungere l’utente in user_list file per limitare un utente alla propria home directory, utilizzare il seguente comando:
# vim /etc/vsftpd/user_list
Tipo “i” per inserire il tipo e il nome utente, come mostrato in figura:
Premere ESC e digitare :wq! per salvare il file.
Se si desidera fornire a un utente specifico un accesso complessivo al sistema, aggiungere tale utente in /etc/vsftpd/chroot_list.
Riavvia il servizio VSFTPD:
# systemctl restart vsftpd
Verificare lo stato del Servizio FTP utilizzando il seguente comando:
# systemctl status vsftpd
Configurare il Firewall per FTP
Per consentire il servizio FTP attraverso il firewall, utilizzare il seguente comando:
# firewall-cmd - - add-service = ftp - - permanent# firewall-cmd - - reload
Test Server FTP da una Macchina Windows
connettersi Al Server FTP bisogno di un software client. Il software più comunemente usato per FTP è FileZilla, WINSCP,ecc. Sto usando FileZilla per la connessione.
Apri il tuo software client FTP, inserisci i seguenti dettagli per connetterti:
Host – > Indirizzo IP o nome host.
Nome utente: Nome utente FTP (nel mio caso è user1)
Password
Porta: 21
Dopo aver collegato con successo, è possibile caricare/scaricare file in base alle proprie esigenze.
Conclusione
In questo tutorial abbiamo imparato come impostare un server FTP su Centos 8, come limitare gli utenti alla loro home directory e come concedere loro accesso in lettura/scrittura. Abbiamo anche visto come dare all’utente specifico accesso generale al sistema.