Installazione server FTP ( demone VSFTPD ) su CentOS 6

In questo tutorial andremo a descrivere come installare un server FTP su CentOS 6.9.

Partiamo da una macchina virtuale preinstallata CentOS 6.9 (per l’installazione seguire questo articolo) ed aggiorniamo il sistema

yum update

installiamo il demone VSFTPD

yum install  vsftpd vim

modifichiamo il file di configurazione del server FTP

vim /etc/vsftpd/vsftpd.conf

rendiamo sicuro il server FTP impostando le seguenti opzioni

anonymous_enable=NO

local_enable=YES

chroot_local_user=YES

l’ultima opzione serve a confinare l’utente che accede alla sola cartella di sua proprietà (in questo caso l’utente viene ingabbiato “jail”).

Avviamo il demone VSFTPD

service vsftpd start

impostiamo l’avvio al boot automatico

chkconfig vsftpd on

Adesso rendiamo sicuro il server FTP con alcune accortezze, attiviamo il modulo del kernel per tenere traccia delle connessioni ftp, in particolare

vim /etc/sysconfig/iptables-config

ed impostiamo la seguente direttiva

IPTABLES_MODULES="ip_conntrack_ftp"

e permettiamo attraverso il firewall (iptables), le connessioni sulla porta standard dell’FTP 20 e 21

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp –dport 21 -j ACCEPT
-A INPUT -p tcp -m tcp –dport 20 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT
-A INPUT -j REJECT –reject-with icmp-host-prohibited
-A FORWARD -j REJECT –reject-with icmp-host-prohibited
COMMIT

adesso impostiamo anche il SELINUX in modo da permettere scrittura sulla home directory

setsebool -P ftp_home_dir on

nel caso in cui si volesse montare una share NFS bisognerebbe impostare anche la seguente direttiva

setsebool -P allow_ftpd_use_nfs on

a questo punto possiamo aver un resoconto di cosa è permesso dal SELINUX

getsebool -a | grep ftp

avremo

allow_ftpd_anon_write –> off
allow_ftpd_full_access –> off
allow_ftpd_use_cifs –> off
allow_ftpd_use_nfs –> on
ftp_home_dir –> on
ftpd_connect_db –> off
ftpd_use_fusefs –> off
ftpd_use_passive_mode –> off
httpd_enable_ftp_server –> off
tftp_anon_write –> off
tftp_use_cifs –> off
tftp_use_nfs –> off

reboot

Aggiungiamo un utente al sistema per test

useradd test

passwd test

Per rendere il sistema ancora più robusto è possibile vietare il login ssh agli utenti

vim /etc/passwd

test:x:502:502::/home/test:/sbin/nologin

Potrebbero interessarti anche...

Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

Chiudi