# Descripcion de Nuestro Servidor ServerName "ProFTPD Server" # Tipo si es ejecutado como demonio o por el demonio inetd ServerType standalone # Atiende todas las peticiones DefaultServer on # Puerto que utilizara para las peticiones Port 21 # Mascara para la creacion de Directorios y Archivos Umask 007 # Ruta de nuestro archivo Scoreboard que mantiene informacion de las sessiones iniciadas ScoreboardFile /var/run/proftpd.scoreboard # Maximo numero de procesos hijos que se pueden expandir MaxInstances 30 # Permitir sobreescribir AllowOverwrite on # Tiempos maximos de espera TimeoutNoTransfer 600 TimeoutStalled 600 TimeoutIdle 1200 # Limites MaxLoginAttempts 3 MaxClientsPerUser 10 MaxClientsPerHost 2 MaxHostsPerUser 4 MaxClients 6 # Usuario y Grupo que ejecutara el demonio de Proftpd User www-data Group www-data # Impedimos el acceso al servidor a algunos usuarios del sistema DenyUser fitti # Creara una especie de jaula para que los usuarios solo puedan moverse dentro de su directorio asigando DefaultRoot ~ # Tipo de autentificacion usado con MySQL o PostgreSQL SQLAuthTypes Plaintext SQLAuthenticate users # Ubicacion, usuario y contraseņa que tiene acceso a la tabla proftpd de nuestro MySQL o PostgreSQL SQLConnectInfo users_ftp@localhost proftpd contrasena_usuario # Seleccionamos la informacion que solicitaremos de la tabla proftpd_users SQLUserInfo proftpd_users userid passwd uid gid homedir shell # Usuario y Grupo por defecto para la creacion de carpetas y archivos SQLDefaultGID 33 SQLDefaultUID 33 #SQLMinUserGID 100 #SQLMinUserUID 500 # Si los usuarios son nuevos automaticamente se creara su respetivo homedir en su primer ingreso al servidor SQLHomedirOnDemand off # Actualiza informacion de fecha de ingreso y numero de veces que se a ingresado al servidor por usuario SQLLog PASS updatecount SQLNamedQuery updatecount UPDATE "count=count+1, accessed=now() WHERE userid='%u'" proftpd_users SQLLog STOR,DELE modified SQLNamedQuery modified UPDATE "modified=now() WHERE userid='%u'" proftpd_users # No permite el ingreso de usuario root RootLogin off # No requiere un Valid Shell en el sistema RequireValidShell off # Archivos de log SQLLogFile /var/log/proftpd/mysql.log # Autentificaciones LogFormat auth "%v [%P] %h %t \"%r\" %s" ExtendedLog /var/log/proftpd/auth.log AUTH auth # Accesos LogFormat write "%h %l %u %t \"%r\" %s %b" ExtendedLog /var/log/proftpd/access.log WRITE,READ write # Deniega la utilizacion de chmod para el cambio de permisos DenyAll