En el presente tutorial se va a tratar el procedimiento de instalación para la aplicación PureFTPd la cual se presenta como una de las mejores en maeria de servidores junto con ProFTPd.
La idea es la de montar un servidor dedicado, con lo que los aspectos gráficos no se comentarán en profundidad.
A tener muy encuenta que para poder compilar deberás tener instladas las Xcode Tools en el Mac, en el siguiente enlace las puedes conseguir: http://developer.apple.com/tools/xcode/
Primero es necesario bajar y desempaquetar el fuente del programa. Luego desplázate hasta donde está el fuente descomprimido para poder comilar e instalar la aplicación.
cd /downloads
curl -O ftp://ftp.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.16a.tar.gz
tar xzf pure-ftpd-1.0.16a.tar.gz
cd pure-ftpd-1.0.16a/
./configure --with-everything --with-virtualchroot --without-banner --without-humor --enable-osx --with-tls
(Esta configuración se construye para un 'gran servidor' con muchas opciones como, jaulas / chroot throttling, ratios, ftpwho, quotas, etc.)
sudo make install-strip
En este punto deberás escojer que tipo de servidor deseas, ya que purefts puede correr en modo standalone o xinetd:
Standalone Mode
La instrucción para hacer correr el servidor en modo standalone es esta:
sudo /usr/local/sbin/pure-ftpd &
o bien puedes ejecutar la misma instrucción añadiendo dwitches, de forma que configuras el servidor en tiempo de ejecución:
sudo /usr/local/sbin/pure-ftpd -A -E -p 40000:50000 -c 5 -C 1 -I 5 -T 25 -u 1 &
Esta es a explicación de los switches aplicados.
-A chroot / jaula para todos los usuarios
-E Sólo dejaría entrar a los usuarios autentificados, anonymous no entran.
-p 40000:50000 Especifica el rango de puertos para las conexionaes pasivas.
-c 5 Especifica el número de clientes
-C 1 Especifica el número de conexiones por IP
-I 5 Cambia el idle timeout, por defecto son 15 minutos, es excesivo
-T 25 Acelera el ancho de banda a 25KB/seg. por usuario
Existen muchos switches disponibles, consulta la documentación.
xinetd Mode
Promero, lógate como root en la shell mediante el comando sudo
sudo:
sudo -s
(Como siempre, antes de editar un fichero de nivel de sistema, es recomendable crear una copia de seguridad .)
cd /etc/xinetd.d/
cp -p ftp ftp.default
pico ftp
Modifica los argumentos de server y server_args como sige:
Code: |
service ftp { disable = no socket_type = stream wait = no user = root server = /usr/local/sbin/pure-ftpd server_args = -A -E -p 40000:50000 -c 5 -C 1 -I 5 -T 25 -u 1 groups = yes flags = REUSE } |
Parar xinetd (if running): killall xinetd
Iniciar xinetd para obtener los cambios en la nueva configuración del ftp:
sudo /usr/sbin/xinetd -pidfile /var/run/xinetd.pid
Salimos de la shell de root:
exit
Testamos que PureFTPd funciona:
ftp localhost
Debes obtener algo como esto:
Code: |
[gatorparrots:] gator% ftp localhost Connected to localhost. 220-FTP server ready. 220 This is a private system - No anonymous login Name (0:gator): |
Tu nuevo servidor FTP está trabajando. Para permitir la jaula de root a un único directorio, simplemente hay que asignar los directorios home de tu usuario ftp a tu directorio de root del ftp via NetInfo (y posiblemente ponerlos en un grupo de usuarios ftp dedicado para añadir flexibilidad).
De lo contrario, los usuarios individuales serán enjaulados en su directorio home /Users/username/.
Ahora vamos a darle un poco de color a la administración, para ello utilizaremos la aplicación PureFTPd Manager, ésta nos permite administrar de un modo amable PureFTPd.
Lo cierto es que con sólo hechar le un vistazo veréis que tiene lo que se necesita para poder administrar la aplicación.
A tener en cuenta el cambiar el nombre de máquina para así integrarla en el dominio y habilitar el SSH para poder aministrarla sin el entorno gfáfico.
La configuración de PurFTPd desde la cónsola la puedes rescatar de este post, si os escuece, habilitad la gestión remota gráfica mediante el servicio Apple Remote Desktop y acceder con cualquier cliente VNC.
Notas de interes:
- Comandos
Dentro de la ruta /usr/local/bin/
Ésta se puede agregar en el PATH detallándolo en el fichero ~/.profile
Comando “insserv –default pure-ftpd” para que arranque con el sistema.
Comando “pure-pw list” para ver los usuarios del FTP.
Comando “pure-pw mkdb” para actualizar la base de datos.
Comando “watch -n 1 cat /var/log/pureftpd.log” para ver el log en tiempo real
Alternativa de Instalación Darwin Ports.
Una instalación realmente sencilla es mediante los ports de Darwin (el corazón de Mac OS X, de ahí la X).
Instala los ports como te indica la página referenciada (es una instalación gráfica) y luego actualizalos y con la instrucción:
# port install pure-ftpd
Ya lo tienes todo.
Últimos comentarios