como configurar pure-ftpd en debian

¡Atención, coñazo linuxero! Advertidos estáis.

mario me retó hace tiempo con la configuración de un servidor FTP empleando uno de los mejores (sino el mejor, IMHO) servidores de dicho protocolo, el pure-ftpd. Pues bien, como la instalación en Debian es relativamente sencilla, me voy a centrar en la configuración de las opciones del servicio y, sobre todo, en los pasos necesarios para hacerla compatible con el sistema de gestión de parámetros que emplea esta distribución.

Pure-ftpd es un programa pensado para dotar de la máxima seguridad posible a un protocolo que carece de ella y, una de sus características más significativas, es que recibe todos los parámetros desde la línea de comandos. ¿Qué significa esto? Que en el hipotético caso de que quisieramos configurar el servidor para que, pongamos por ejemplo, encierre en una jaula a cada usuario (parámetro -A --chrooteveryone), opere como demonio (parámetro -B --daemonize) y no permita conexiones anónimas (parámetro -E --noanonymous), en dicho caso, decía, podemos modificar el script que arranca y para el servicio para añadirle a pelo las opciones que necesitamos (-A, -B, -E) o podemos crear unos ficheros en el directorio del configuración del pureftpd.

Si la opción elegida es la primera, bon voyage. Aquí nos centramos en la segunda :P.

El directorio de configuración del pureftpd en Debian, como suele ser habitual, es /etc/pure-ftpd y, bajo este nos encontramos dos subdirectorios, db y conf . El primero alberga los ficheros que son más sensibles y a los que hay que restringir el acceso mediante permisos, por ejemplo, aquellos que influyen en la manera de autenticar a los usuarios, ya sea por Login, LDAP u otros medios. En mi configuración, donde autentico a los usuarios desde un LDAP, el fichero /etc/pure-ftpd/conf/LDAPConfigFile alberga la ruta absoluta a las opciones de conexión y autenticación del LDAP, que están en ese directorio:


# cat LDAPConfigFile
/etc/pure-ftpd/db/ldap.conf

Es en el segundo directorio donde debemos crear un fichero por cada opción que queremos pasarle al servidor durante el arranque. La lista completa de los parámetros que podemos emplear se puede encontrar en la documentación del Pure-ftpd (en inglés). De ella debemos seleccionar las opciones que más se ciñen al funcionamiento que vamos a darle al servidor y crear los ficheros. Si nos ceñimos al ejemplo anterior, debemos añadir los siguientes parámetros:


-A --chrooteveryone
-B --daemonize
-E --noanonymous

El nombre de los ficheros debe coincidir con el parámetro no abreviado, el de nombre largo y deben separarse las palabras con mayúsculas. Así, para la jaula ejecutaríamos este comando:

# echo yes > /etc/pure-ftpd/conf/ChrootEveryOne

y para el resto estos:

# echo yes > /etc/pure-ftpd/conf/Daemonize
# echo yes > /etc/pure-ftpd/conf/NoAnonimous

Respecto al contenido de los ficheros, si el parámetro es verdadero o falso (1 y 0), se pone yes o no, pero si requiere otro tipo de argumento, ya sea un número (número máximo de conexiones), una ruta a un fichero (la configuración de la conexión al LDAP) o una dirección IP, entre otros, es aconsejable consultar el tipo exacto de dato en la documentación y, según las necesidades, escribirlo en el fichero.

Por último, para comprobar que nuestra configuración funciona, es recomendable auditar constantemente los ficheros de registros, los ficheros log porque el programa tiene la sana costumbre de notificarlo todo y más si le pedimos mucha información de depuración con -d --verboselog.

pure-ftpd, pureftpd, configuracion, config, howto, debian

6 thoughts on “como configurar pure-ftpd en debian

  1. Pues yo tengo un colega que escribe relatos, auténticas biblias de temas relacionados con la LOPD, ya os iré pasando algún Link, la verdad es que son muy,muy recomendables.

  2. mucho amiguismo veo por aquí… no estareís censados en Marbella, ¿verdad?

    Lo que son las cosas, uno no pasa de gritarle al video ‘apt-get install El señor de los anillos’ y el otro no lee nada que huela a ley por pura desconfianza y, sin embargo, están aquí, juntitos, dando guerra.

  3. n1mh, ¿tú crees que nos vamos a leer eso?

    Si alguna vez lo necesitamos, descolgamos el teléfono, buscamos “Diegos Castaña” y listos.

    Por cierto, espinete, nosotros hablamos de nuestra profesión. Podrías hablar tú de la tuya, ¿no?

    ¡Ala! ¡Palos para todos! Me he quedao muy a gusto

Los comentarios estan cerrados