Download - 10 Servidor FTP
Servidor FTP Mandriva Enterprise Server 5.2
Geancarlos Sosa Ortiz (2010-2941) – Instituto Tecnológico Las Américas (ITLA) Page 1
Creación Servidor FTP
FTP (siglas en inglés de File Transfer Protocol, 'Protocolo de Transferencia de Archivos')
en informática, es un protocolo de red para la transferencia de archivos entre sistemas
conectados a una red TCP (Transmission Control Protocol), basado en la
arquitectura cliente-servidor. Desde un equipo cliente se puede conectar a un servidor para
descargar archivos desde él o para enviarle archivos, independientemente del sistema
operativo utilizado en cada equipo.
El servicio FTP es ofrecido por la capa de aplicación del modelo de capas de red TCP/IP al
usuario, utilizando normalmente el puerto de red 20 y el 21. Un problema básico de FTP es
que está pensado para ofrecer la máxima velocidad en la conexión, pero no la máxima
seguridad, ya que todo el intercambio de información, desde el login y password del
usuario en el servidor hasta la transferencia de cualquier archivo, se realiza en texto
plano sin ningún tipo de cifrado, con lo que un posible atacante puede capturar este tráfico,
acceder al servidor y/o apropiarse de los archivos transferidos.
¿Qué es ProFTPd?
ProFTPd es un servidor FTP. Se promociona desde su página web como estable y seguro,
cuando se configura correctamente. El servidor ProFTPd se promociona a sí mismo como
un "Software servidor FTP altamente configurable con licencia GPL" ("Highly
configurable GPL-licensed FTP server software").
Los promotores dicen que ProFTPd está bien documentado, y la mayoría de
configuraciones serán muy parecidas a aquellas que aparecen en las configuraciones de
ejemplo. ProFTPd usa un único fichero de configuración "/etc/proftpd.conf". El fichero de
configuración es muy similar al que tieneApache. Puede ser fácilmente configurado como
múltiples servidores FTP virtuales, y tiene capacidades para ser enjaulado dependiendo
del sistema de archivos que haya por debajo. Puede ejecutarse con un demonio propio o
como un servicio más de inetd. Es capaz de trabajar sobre IPv6.
En este tutorial aprenderemos como configurar nuestro servidor FTP utilizado ProFTPd:
Servidor FTP Mandriva Enterprise Server 5.2
Geancarlos Sosa Ortiz (2010-2941) – Instituto Tecnológico Las Américas (ITLA) Page 2
1-Primero abrimos nuestra consola y nos logueamos como root escribiendo el comando
“su” luego introducimos nuestra contraseña para root, una vez estemos logueados como
root escribimos el comando “urpmi proftpd” para descargar los paquetes de proftpd.
2-Esperamos unos segundos y como vemos se descargaran todos los paquetes necesarios
automáticamente.
Servidor FTP Mandriva Enterprise Server 5.2
Geancarlos Sosa Ortiz (2010-2941) – Instituto Tecnológico Las Américas (ITLA) Page 3
3-Ahora crearemos la carpeta que utilizaremos para guardar los archivos de nuestro
servidor ftp, en este caso utilizare el comando “mkdir FTP” esto creara una carpeta en el
directorio en el cual me encuentre trabajando actualmente con el nombre FTP, en mi caso la
ruta de la carpeta sería /home/gean/FTP
4-Una vez tengamos nuestra carpeta lista procederemos a modificar el archivo proftpd.conf
para la configuración de nuestro servidor FTP, lo haremos con el editor de textos vi y el
archivo se encuentra en la ruta /etc/proftpd.conf, asi que escribiremos “vi /etc/proftpd.conf”
y presionaremos Enter.
5-Como vemos se nos abrirá el archivo que tiene toda la configuración de ProFTPd,
presionando la tecla “i” podemos editarlo pero debemos ser muy cuidadosos en esto ya que
podríamos afectar el correcto funcionamiento de nuestro servidor FTP.
Servidor FTP Mandriva Enterprise Server 5.2
Geancarlos Sosa Ortiz (2010-2941) – Instituto Tecnológico Las Américas (ITLA) Page 4
6-Ahora nos situaremos en la línea que dice ServerName, en esta podemos modificar el
nombre que tendrá nuestro servidor FTP, en este caso mi servidor se llamara “Servidor FTP
Mandriva”, ServerType quiere decir el tipo de servidor que tenemos puede ser inetd ó
standalone, inetd lo configura para que sea dependiente de otros servicios mientras que
standalone lo hace totalmente independiente.
7-Ahora nos situaremos en la línea DefaultRoot, por defecto esta marcada con un “#” al
inicio, esto indica que es un comentario y por lo tanto no se toma en cuenta como un
parámetro de configuración del archivo, lo primero que haremos será descomentar esta
línea borrando el sigo “#”, luego escribiremos el directorio que creamos antes para guardar
nuestros archivos FTP. La línea será DefaultRoot /home/gean/FTP
8-Otro parámetro importante para configurar es la línea Umask, por defecto viene en 022
022, este permiso solo permite que los usuarios vean los documentos que se encuentren en
el servidor pero no podrán descargarlos, por lo tanto cambiaremos estos permisos a 077
077. Luego de esto saldremos del documento asi que debemos pulsar la tecla Esc y escribir
:wq para salir del archivo y guardar los cambios.
9-Ahora debemos de reiniciar el servicio, escribiremos /etc/init.d/proftpd restart y
presionaremos Enter.
Servidor FTP Mandriva Enterprise Server 5.2
Geancarlos Sosa Ortiz (2010-2941) – Instituto Tecnológico Las Américas (ITLA) Page 5
10-Ahora para hacer la prueba nos dirigimos a la carpeta que especificamos para utilizar
como la que contenedora de los archivos subidos al servidor FTP, en este caso es la carpeta
/home/gean/FTP, escribimos el comando “cd /home/gean/FTPD” y luego crearemos un
archivo como prueba, para esto escribiremos vi prueba.txt.
11-Una vez creado el archivo presionamor “i” para editarlo y escribimos algo, luego
presionamos Esc para salir del modo edición y escribimos :wq para guardar y salir.
Subir y bajar archivos por línea de comandos
Podemos administrar nuestros archivos que se encuentren en nuestro servidor FTP por
medio de linea de comandos, aunque puede que no sea tan comodo como lo es mediante un
cliente FTP, pero resulta bastante util ya que nunca sabemos si no contaremos con una
interfaz grafica disponible. Nota: Mandriva Enterprise Server 5.2 viene sin los paquetes
necesarios para conectarnos a un servidor FTP por linea de comandos, por lo tanto
primero que todo debemos descargarlos con el comando “urpmi lftp”.
1-Primero que todo nos entraremos a la consola y nos loguearemos como root, luego
crearemos varios archivos para utilizarlos como prueba, los archivos pueden ser creados
con el comando “touch” y podemos crear mas de un archivo al mismo tiempo, solo tenemos
que separarlos por espacios tal y como muestra la imagen.
Servidor FTP Mandriva Enterprise Server 5.2
Geancarlos Sosa Ortiz (2010-2941) – Instituto Tecnológico Las Américas (ITLA) Page 6
2-Muy bien ahora nos conectaremos a nuestro servidor FTP, para esto escribiremos el
comando “ftp” seguido de la dirección ip del servidor FTP, en este caso será “ftp
192.168.246.10”
3-Como vemos una vez hayamos escrito el comando anterior se conectara al servidor FTP,
nos mostrara el nombre que habíamos elegido anteriormente, luego nos pedirá que
introduzcamos nuestro usuario y contraseña, debemos de introducir un usuario con los
privilegios suficientes como para acceder al servidor FTP.
4-Ahora subiremos un archivo a nuestro servidor, los archivos se suben con el comando
“put” seguido del nombre del archivo y su extensión, como habíamos creado el archivo
manuel.txt, lo subiré al servidor escribiendo “put manuel.txt” y como vemos se inicia la
transferencia, luego nos muestra que el archivo se a transferido correctamente.
Servidor FTP Mandriva Enterprise Server 5.2
Geancarlos Sosa Ortiz (2010-2941) – Instituto Tecnológico Las Américas (ITLA) Page 7
5-Ahora subiremos mas de un archivo al mismo tiempo, para esto se utiliza el comando
“mput” que se deriva de Multiple put, bien entonces subiremos los otros dos archivos que
habíamos creado anteriormente, escribiremos “mput itla.html done.doc” luego nos
preguntara si estamos seguros uno a uno, para confirmar escribimos s cada vez que nos
pregunte.
6-Ahora escribiremos el comando “ls” para que nos muestre los archivos que se encuentran
en el servidor FTP, como vemos se encuentran los archivos que habíamos subido
anteriormente.
7-Ahora bajaremos el archivo prueba.txt, para esto escribimos le comando “get” seguido
del nombre del archivo y su extensión, “get prueba.txt”.
8-Para descargar mas de un archivo simultáneamente utilizamos el comando mget seguido
del nombre de los archivos con su extensión, los archivos deben estar separados por
espacios.
Servidor FTP Mandriva Enterprise Server 5.2
Geancarlos Sosa Ortiz (2010-2941) – Instituto Tecnológico Las Américas (ITLA) Page 8
Subir y bajar archivos por medio de un cliente FTP
Lo mas común es utilizar un cliente FTP para administrar nuestros archivos en un servidor
FTP, el cliente FTP provee una interfaz grafica al usuario que hace la tarea mucho mas
sencilla y comoda, en este caso utilizaremos el cliente FTP FileZilla y lo haremos desde un
equipo cliente con Windows. El equipo debe estar en nuestra misma red.
1-Ahora mostraremos como acceder a nuestro servidor FTP por medio de un cliente FTP,
en este caso utilizare FileZila.
2-Una vez abierta la aplicación en la parte superior debemos de introducir la dirección IP
del servidor, nuestro nombre de usuario y la contraseña, el puerto por defecto es 21. Luego
hacemos click en el botón Conexión Rapida.
Servidor FTP Mandriva Enterprise Server 5.2
Geancarlos Sosa Ortiz (2010-2941) – Instituto Tecnológico Las Américas (ITLA) Page 9
3-Una vez hayamos hecho esto podemos ver que se inicia sesión en nuestro servidor FTP
mediante este cliente FTP, en la parte derecha podemos ver los archivos que se encuentran
en nuestro servidor.
4-Podemos descargar archivos haciendo click derecho sobre estos y luego click en
Descargar, y para subir hacemos exactamente lo mismo pero desde el lado izquierdo que es
donde se encuentran los archivos en nuestro equipo cliente, hacemos click derecho y luego
click en la opción subir.
Servidor FTP Mandriva Enterprise Server 5.2
Geancarlos Sosa Ortiz (2010-2941) – Instituto Tecnológico Las Américas (ITLA) Page 10
Crear Script para subir Backup al servidor FTP
automáticamente programado con Cron
Podemos crear un script para que automáticamente se ejecute el Backup de nuestros
archivos y se guarde en nuestro servidor FTP, para esto utilizaremos la herramienta Cron
que ejecuta las tareas de acuerdo al horario/fecha que se le asigne.
1-Abrimos la terminal y nos logueamos como root utilizando el comando “su” luego
crearemos un archivo contenedor del script que crearemos, este archivo en mi caso lo deseo
guardar en la carpeta Script que había creado anteriormente en el escritorio pero puede ser
guardado donde sea, este archivo lo crearemos con el editor de textos vi, el comando en
este caso será vi /home/gean/Escritorio/Script/backupFTP.sh, debemos recordar que el
script siempre debe tener la extensión .sh al final del nombre que le demos.
2-Ahora escribiremos los parametros de nuestro script como vemos abajo, nuestro script
primero esta dividido por partes, ya que primero debe crear un backup del archivo que
deseemos y luego entonces establecer la conexión con el servidor FTP para finalmente
subir el archivo.
Servidor FTP Mandriva Enterprise Server 5.2
Geancarlos Sosa Ortiz (2010-2941) – Instituto Tecnológico Las Américas (ITLA) Page 11
3-Ahora ejecutaremos nuestro script para cerciorarnos de que es funcional, escribiremos
source y la ruta donde guardamos el script, en mi caso “source
/home/gean/Escritorio/Script/backupFTP.sh”
4-Como vemos el script esta iniciándose, lo habíamos configurado para que primero nos
muestre un mensaje de ejecución y a los 5 segundos empiece a ejecutarse.
5-Como vemos nuestro script se ejecuto perfectamente, primero nos crea un backup sobre
la carpeta que habíamos especificado, luego establece la conexión con el servidor FTP y
por ultimo sube el archivo, al hacer todo esto se desconecta automáticamente del servidor
FTP.
Servidor FTP Mandriva Enterprise Server 5.2
Geancarlos Sosa Ortiz (2010-2941) – Instituto Tecnológico Las Américas (ITLA) Page 12
6-Ahora programaremos nuestro script para que se ejecute automáticamente con Cron,
escribiremos el comando crontab –e y este nos abrirá el archivo de cron con vi
7-Agregamos una línea nueva con el directorio del archivo y recordando el orden de los
valores
– El primer valor indica los minutos, el segundo valor indica las horas, el tercer valor indica
los días del mes, el cuarto valor indica el mes y el quinto valor indica el día de la semana, lo
programaremos para que se ejecute todos los viernes y seguido escribimos el directorio
donde se encuentra que en este caso será /home/gean/Escritorio/Script/backupFTP.sh
Listo, ya sabemos como montar nuestro servidor FTP con ProFTPd y crear un script que
suba un backup al servidor automáticamente programado con Cron.