Académique Documents
Professionnel Documents
Culture Documents
CONFIGURACIÓN DE
UN SERVIDOR FTP:
PROFTPD
Andrés Rosique Hernández
androsique-publicaciones@yahoo.es
Andrés Rosique Hernández
androsique-publicaciones@yahoo.es
Licencia
Instalación y mantenimiento de servicios de Internet
Índice
1.Introducción
Instalación y mantenimiento de servicios de Internet
Introducción
● FTP (File Transfer Protocol) es un protocolo de
Instalación y mantenimiento de servicios de Internet
transferencia de archivos.
● Fue uno de los primeros servicios ofrecidos por
Internet que fueron normalizados junto con Telnet y
el correo electrónico.
● El RFC 114 fue la primera propuesta de
estandarización en el año 1971.
● Hoy en día se usa mucho la transferencia de
archivos pero haciendo uso de protocolos distintos al
FTP. Por ejemplo, los servicios P2P (Peer To Peer).
Un poco de historia
● El mismo año en que nació ARPANET (1969) un
Instalación y mantenimiento de servicios de Internet
Funcionamiento
● FTP es un servicio basado en la arquitectura cliente/
Instalación y mantenimiento de servicios de Internet
servidor.
● El servidor FTP en la red (ya sea local o en Internet)
proporciona el servicio y utiliza dos puertos:
– El puerto 20 para la transferencia de datos.
– El puerto 21 para la transferencia de órdenes (control)
● El cliente se conecta al servidor haciendo uso de un
puerto local (origen) mayor que 1024, y tomando
como destino el puerto 21 del servidor.
● Una vez se ha establecido la conexión, ya se puede
hacer uso de las órdenes específicas FTP de manejo
de archivos y directorios remotos.
U04. Configuración de un servidor ftp: ProFTPD 10
Andrés Rosique Hernández
androsique-publicaciones@yahoo.es
Funcionamiento (2)
● El siguiente esquema muestra el funcionamiento del
Instalación y mantenimiento de servicios de Internet
servicio FTP:
Servidor FTP
● Un servidor FTP es un programa que se ejecuta en
Instalación y mantenimiento de servicios de Internet
Cliente FTP
● Un cliente FTP es un programa que se instala en el
Instalación y mantenimiento de servicios de Internet
Cliente FTP
Acceso anónimo
● Los servidores FTP anónimos ofrecen sus servicios
Instalación y mantenimiento de servicios de Internet
Cliente FTP
Acceso anónimo (2)
● De esta forma se consigue acceso a los archivos del
Instalación y mantenimiento de servicios de Internet
Cliente FTP
Acceso de usuario
● Si se desean tener privilegios de acceso a cualquier
Instalación y mantenimiento de servicios de Internet
Cliente FTP
Modos de conexión
● FTP admite dos modos de conexión del cliente.
Instalación y mantenimiento de servicios de Internet
Cliente FTP
Modos de conexión (2)
● Modo activo:
Instalación y mantenimiento de servicios de Internet
Cliente FTP
Modos de conexión (3)
● Modo activo (cont.):
Instalación y mantenimiento de servicios de Internet
Cliente FTP
Modos de conexión (4)
● Modo pasivo:
Instalación y mantenimiento de servicios de Internet
Tipos de transferencia de
archivos
● Se debe conocer cómo transportar un archivo a lo
Instalación y mantenimiento de servicios de Internet
Tipos de transferencia de
archivos (2)
● Ejemplos de cómo transferir algunos tipos de archivo
Instalación y mantenimiento de servicios de Internet
dependiendo de su extensión:
– txt (texto) → ascii
– html (página WEB) → ascii
– doc (documento) → binary
– ps (poscript) → ascii
– tar (empaquetado) → binary
– ZIP (comprimido) → binary
Comandos
● Algunos de los comandos FTP:
Instalación y mantenimiento de servicios de Internet
Instalación
Suse
● ProFTPD no está en los repositorios oficiales de
Instalación y mantenimiento de servicios de Internet
Instalación
Suse (2)
¡OjO!
● Y ejecutamos los siguientes comandos: Antes de ejecutar
Instalación y mantenimiento de servicios de Internet
Instalación
Suse (3)
#! /bin/sh proftpd_cfg="/etc/proftpd.conf"
# Copyright (c) 2000-2001 SuSE GmbH Nuernberg, Germany. proftpd_bin="/usr/local/sbin/proftpd"
# All rights reserved. proftpd_pid="/usr/local/var/proftpd.pid"
Instalación y mantenimiento de servicios de Internet
#
# Original author: Marius Tomaschewski <mt@suse.de> [ -r $proftpd_cfg ] || exit 6
# [ -x $proftpd_bin ] || exit 5
# Slightly modified in 2003 for use with SuSE Linux 8.1,
# by http://www.learnlinux.co.uk/ # Source status functions
# . /etc/rc.status
# Slightly modified in 2005 for use with SuSE Linux 9.2,
# by Falko Timme # First reset status of this service
# rc_reset
# /etc/init.d/proftpd
# case "$1" in
### BEGIN INIT INFO start)
# Provides: proftpd echo -n "Starting ProFTPD Server: "
# Required-Start: $network $remote_fs $syslog $named test -f /etc/shutmsg && rm -f /etc/shutmsg
# Required-Stop: /sbin/startproc $proftpd_bin
# Default-Start: 3 5 rc_status -v
# Default-Stop: 0 1 2 6 ;;
# Description: Starts ProFTPD server
### END INIT INFO stop)
echo -n "Shutting down ProFTPD Server: "
# Determine the base and follow a runlevel link name. test -x /usr/local/sbin/ftpshut && /usr/local/sbin/ftpshut now
base=${0##*/} && sleep 1
link=${base#*[SK][0-9][0-9]} /sbin/killproc -TERM $proftpd_bin
test -f /etc/shutmsg && rm -f /etc/shutmsg
# Force execution if not called by a runlevel directory. rc_status -v
test $link = $base && START_PROFTPD=yes ;;
test "$START_PROFTPD" = yes || exit 0
# Return values acc. to LSB for all commands but restart)
# status (see below): ## If first returns OK call the second, if first or
# ## second command fails, set echo return value.
# 0 - success $0 stop
# 1 - generic or unspecified error $0 start
# 2 - invalid or excess argument(s) rc_status
# 3 - unimplemented feature (e.g. "reload") ;;
# 4 - insufficient privilege
# 5 - program is not installed try-restart)
# 6 - program is not configured ## Stop the service and if this succeeds (i.e. the
# 7 - program is not running ## service was running before), start it again.
## Note: not (yet) part of LSB (as of 0.7.5)
U04. Configuración de un servidor ftp: ProFTPD 27
Andrés Rosique Hernández
androsique-publicaciones@yahoo.es
Instalación
Suse (4)
$0 status >/dev/null && $0 restart
rc_status
;;
Instalación y mantenimiento de servicios de Internet
reload|force-reload)
## Exclusive possibility: Some services must be stopped
## and started to force a new load of the configuration.
echo -n "Reload ProFTPD Server: "
/sbin/killproc -HUP $proftpd_bin
rc_status -v
;;
status)
# Status has a slightly different for the status command:
# 0 - service running
# 1 - service dead, but /var/run/ pid file exists
# 2 - service dead, but /var/lock/ lock file exists
# 3 - service not running
echo -n "Checking for ProFTPD Server: "
checkproc $proftpd_bin
rc_status -v
;;
probe)
## Optional: Probe for the necessity of a reload,
## give out the argument which is required for a reload.
[ $proftpd_cfg -nt $proftpd_pid ] && echo reload
;;
*)
echo "Usage: $0 {start|stop|status|restart|reload|try-restart|
probe}"
exit 1
;;
esac
Instalación
Suse (5)
● Por último, ejecutaremos:
Instalación y mantenimiento de servicios de Internet
Instalación
Ubuntu
● Para instalar ProFTPd en Ubuntu tenemos dos
Instalación y mantenimiento de servicios de Internet
Configuración básica
● Los ficheros de configuración de Apache se
Instalación y mantenimiento de servicios de Internet
encuentran en /etc/proftpd.
● Los ficheros de configuración más importantes son:
– /etc/proftpd/proftpd.conf → fichero de
configuración principal.
– /etc/proftpd/modules.conf → fichero de
configuración de los módulos y sus características.
● Sin modificar ninguno de los ficheros de
configuración, los usuarios del sistema pueden
acceder al servidor FTP. ¡OjO!
Recuerda hacer una copia
de seguridad de cualquier
archivo que vayas a editar.
Configuración
Parámetros generales
● ServerType inetd|standalone
Instalación y mantenimiento de servicios de Internet
Configuración
Parámetros generales (2)
● UserAlias alias usuarioReal
Instalación y mantenimiento de servicios de Internet
Configuración
Parámetros generales (3)
● AccessGrantMsg “mensaje”
Instalación y mantenimiento de servicios de Internet
Configuración
Limitar
● Limitar a los usuarios:
Instalación y mantenimiento de servicios de Internet
Configuración
Limitar (2)
● Limitar la escritura sobre un directorio concreto:
Instalación y mantenimiento de servicios de Internet
Configuración
Limitar (3)
● Limitar el almacenaje sobre un directorio concreto:
Instalación y mantenimiento de servicios de Internet
Configuración
Usuarios con shell falsa
Planteamiento del problema:
Instalación y mantenimiento de servicios de Internet
Configuración
Usuarios con shell falsa (2)
● Con este fin, en el momento de la creación del
Instalación y mantenimiento de servicios de Internet
Configuración
Impedir navegar por el sistema
Planteamiento del problema:
Instalación y mantenimiento de servicios de Internet
Configuración
Impedir navegar por el sistema (2)
● El valor por defecto de este parámetro es
Instalación y mantenimiento de servicios de Internet
DefaultRoot /
es decir, que se puede navegar por todo el sistema
de ficheros.
● Por ejemplo:
– Si sólo se permite navegar por el home del usuario:
...
DefaultRoot ~
Configuración
Permisos: ficheros y directorios
● Planteamiento del problema:
Instalación y mantenimiento de servicios de Internet
Configuración
Permisos: ficheros y directorios (2)
– Por ejemplo: si umask tiene el valor 022 y se hace un
Instalación y mantenimiento de servicios de Internet
Configuración
Permisos: ficheros y directorios (3)
● Sin embargo, si desde el sistema creamos una
Instalación y mantenimiento de servicios de Internet
Configuración
Control de la conexiones
● Si se necesita limitar el número de conexiones FTP a
Instalación y mantenimiento de servicios de Internet
Configuración
Control de la conexiones (2)
● Por ejemplo:
Instalación y mantenimiento de servicios de Internet
El comando ftpwho
nos indica el número de conexiones,
los usuarios y el tiempo de conexión
al servidor FTP.
U04. Configuración de un servidor ftp: ProFTPD 46
Andrés Rosique Hernández
androsique-publicaciones@yahoo.es
Sitios anónimos
● Un servidor FTP anónimo es aquel al que se puede
Instalación y mantenimiento de servicios de Internet
¡OjO!
Sólo se ha modificado
U04. Configuración de un servidor ftp: ProFTPD el ejemplo anterior. 48
Andrés Rosique Hernández
androsique-publicaciones@yahoo.es
<Anonymous /var/ftp/pub>
User ftp
UserAlias anonymous ftp
RequireValidShell off
<Limit LOGIN>
AllowAll
</Limit>
</Anonymous>
Hosts virtuales
● ProFTPd permite la creación de hosts virtuales de
Instalación y mantenimiento de servicios de Internet
Hosts virtuales
Basados en IP
● Para crear hosts virtuales basados en IP hay que
Instalación y mantenimiento de servicios de Internet
Hosts virtuales
Basados en puerto
● Para crear hosts virtuales basados en puerto hay
Instalación y mantenimiento de servicios de Internet
Glosario
● FTP: File Transfer Protocol (protocolo de
Instalación y mantenimiento de servicios de Internet
transferencia de archivos).
● RFC: Request For Comments (petición de
comentarios).
Bibliografía
● Libros:
Instalación y mantenimiento de servicios de Internet