El paquete ProFTPD contiene un demonio FTP seguro y altamente configurable. Sirve para proporcionar acceso a grandes cantidades de ficheros en una red.
Descarga (HTTP): http://ftp.proftpd.org/distrib/source/proftpd-1.2.10.tar.bz2
Descarga (FTP): ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.10.tar.bz2
Suma MD5 del paquete: 5feb4a7348e12faefc25e34fd92efdd6
Tamaño del paquete: 901 KB
Estimación del espacio necesario en disco: 7.3 MB
Tiempo estimado de construcción: 0.27 SBU
Por razones de seguridad, se recomienda ejecutar ProFTPD con un usuario y grupo sin privilegios. Como usuario root
groupadd proftpd &&
useradd -c proftpd -d /home/ftp -g proftpd \
-s /usr/lib/proftpd/proftpdshell proftpd &&
install -d -m775 -o proftpd -g proftpd /usr/lib/proftpd &&
ln -s /bin/false /usr/lib/proftpd/proftpdshell &&
echo /usr/lib/proftpd/proftpdshell >> /etc/shells
Instala ProFTPD ejecutando los siguientes comandos como usuario normal:
install_user=proftpd install_group=proftpd \
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var/run &&
make
Ahora, de nuevo como usuario root:
make install
install -d -m775 -o proftpd -g proftpd /usr/lib/proftpd: Crea el directorio personal para ProFTPD.
ln -s /bin/false /usr/lib/proftpd/proftpdshell: Establece el intérprete de comandos por defecto como enlace a un intérprete falso.
echo /usr/lib/proftpd/proftpdshell >> /etc/shells: Hace creer que es un intérprete válido por motivos de compatibilidad.
Los tres comandos anteriores pueden omitirse si se coloca la siguiente directiva en el fichero de configuración:
RequireValidShell off
Por defecto, proftpd requerirá que los usuarios que ingresen tengan un intérprete de comandos válido. La directiva RequireValidShell desactiva dicho requisito. Esto sólo es recomendable si est6ás configurando tu servidor FTP para descargas anónimas exclusivamente.
install_user=proftpd install_group=proftpd: Especifica el usuario y el grupo para ProFTPD.
--sysconfigdir=/etc: Esto evita que los ficheros de configuración vayan a /usr/etc.
--localstatedir=/var/run: Esto hace que se utilice /var/run en vez de /usr/var para los ficheros de bloqueo.
Instala el guión de inicio /etc/rc.d/init.d/proftpd incluido en el paquete blfs-bootscripts-20050313.
make install-proftpd
Este es un ejemplo de configuración simple que sólo permite descargas. Revisa la documentación de ProFTPD en /usr/share/doc/proftpd y consulta su página en Internet http://www.proftpd.org/ para ver ejemplos de configuración.
cat > /etc/proftpd.conf << "EOF" # Este es un fichero de configuración básico para ProFTPD # Establece un servidor y un acceso para un usuario anónimo. ServerName "Instalación básica de ProFTPD" ServerType standalone DefaultServer on # 21 es el puerto estándar para FTP. Port 21 # Umask 022 es un buen estándar para evitar que los nuevos directorios y ficheros # se creen con permisos de escritura para el grupo y otros. Umask 022 # Para prevenir ataques DoS (Denegación de Servicios), establecemos un límite # de 30 procesos hijo. Si necesitas más de 30 conexiones concurrentes a la vez, # simplemente aumenta este valor. Ten en cuenta que esto SÓLO funciona si se # ejecuta ProFTPD desde un guión de inicio, si usas algún servidor inetd deberías # usar uno que te permita limitar el número de procesos por servicio # (por ejemplo, xinetd). MaxInstances 30 # El usuario y grupo bajo los cuales se ejecuta normalmante el servidor. User proftpd Group proftpd # En general, queremos que se puedan sobreescribir los ficheros. <Directory /*> AllowOverwrite on </Directory> # Una configuración básica con acceso anónimo, sin directorios para subir ficheros. <Anonymous ~proftpd> User proftpd Group proftpd # Queremos que los clientes puedan acceder como usuario "anonymous" o "proftpd" UserAlias anonymous proftpd # Máximo número de conexiones anónimas. MaxClients 10 # Queremos mostrar el contenido de 'welcome.msg' en el ingreso, y el de '.message' # cada vez que se cambie de directorio. DisplayLogin welcome.msg DisplayFirstChdir .message # Limitar la escritura en cualquier lugar del chroot anónimo. <Limit WRITE> DenyAll </Limit> </Anonymous> EOF
Last updated on 2005-04-15 21:38:34 +0200