Guia configuración VSFTPD
Indicaciones varias
- El usuario ftp debe tener acceso a aquello que tiene que accederse mediante vsftpd
Configuración basica, usuarios virtuales, autenticación radius
Archivo /etc/pam.d/vsftp
account required pam_radius_auth.so auth required pam_radius_auth.so
Configuración vsftpd.conf
Tal como está actualmente en srv-internet.lechuga.eu
pam_service_name=vsftpd
Configuración basica, usuarios virtuales, autenticación htpasswd
Usando: https://gist.github.com/giordanocardillo/3a4bb75f2f851883c2fc0dd802bc6062
Paquetes necesarios
apt-get install vsftpd libpam-pwdfile apache2-utils
Archivo /etc/vsftpd/vsftpd.passwd
Aqui se guardan las contraseñas y usuarios
htpasswd -d /etc/vsftpd/ftpd.passwd [usuario]
Archivo /etc/pam.d/vsftp
auth required pam_pwdfile.so pwdfile /etc/vsftpd/vsftpd.passwd account required pam_permit.so
Archivo muestra /etc/vsftpd.conf
# Configuración VSFTPD # Por seguridad, no se permite un directorio chroot escribible # Si el directorio raíz del chroot es escribible por ftp, vsftpd devuelve un error allow_writeable_chroot=NO # Configuración de la conexión # El puerto 990 es el estandar para ftps y el 21 para ftp listen_port=990 listen=YES pasv_enable=YES pasv_address=boniato.lechuga.eu pasv_addr_resolve=YES pasv_min_port=12000 pasv_max_port=12100 # el sandbox incrementa la seguridad, pero da problemas de compatibilidad seccomp_sandbox=NO # Configuración del logging, el de vsftpd es una llufa syslog_enable=YES log_ftp_protocol=YES vsftpd_log_file=/var/log/vsftpd.log xferlog_enable=NO xferlog_std_format=YES xferlog_file=/var/log/xfer.log dual_log_enable=YES # Hace que no funcione dirmessage_enable=NO # Configuración de usuarios virtuales virtual_use_local_privs=YES nopriv_user=vsftpd guest_username=vsftpd pam_service_name=vsftpd secure_chroot_dir=/var/run/vsftpd guest_enable=YES anonymous_enable=NO local_enable=YES local_umask=0007 user_config_dir=/etc/vsftpd/ user_sub_token=$USER chroot_local_user=YES # Otras configuraciones ls_recurse_enable=NO idle_session_timeout=120 data_connection_timeout=300 connect_timeout=30 delay_failed_login=5 write_enable=YES # ----------------------------------------------------------------------------- # Sección FTPS # definitely have to use this if you connect from the Internet ssl_enable=YES allow_anon_ssl=NO force_local_data_ssl=YES force_local_logins_ssl=YES ssl_tlsv1=YES # Atención, la reutilización de la conexión para datos y control da problemas en algunos clientes require_ssl_reuse=NO rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key # rsa_cert_file=/etc/ssl/certs/lechuga.eu.crt # rsa_private_key_file=/etc/ssl/private/lechuga.eu.key