Está en la página 1de 39

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

Servicios de Transferencia de archivos.


Caso prctico
En el centro de la asociacin cultural "El Acebo" ya tienen en funcionamiento el servidor web y ya se puede acceder en Internet al sitio www.centroelacebo.com. Ana contina realizando nuevas pginas para el sitio y modicando las existentes. Hasta ahora, ha tenido que trabajar en el ordenador servidor web para modicar los archivos del sitio. Lo mismo han tenido que hacer los usuarios del centro que disponen de un espacio web personal en el sitio. Ana se ha informado sobre la funcionalidad del servicio de transferencia de archivos y se ha planteado la conveniencia de instalar sobre el mismo servidor web un servicio de transferencia de archivos que est tambin abierto a Internet. Esto le permitir hacer modicaciones sobre los archivos del sitio web desde cualquier ordenador que tenga acceso a Internet. Tambin los usuarios que tienen un espacio web personal podrn modicar su espacio web desde su casa accediendo al servicio de transferencia de archivos. Ana le ha dicho a Eva, presidenta de la asociacin Eva, lo que se propone realizar y le ha explicado en que consiste. A sta le ha parecido muy bien y le ha propuesto adems que cree un espacio en el que todos los usuarios puedan subir y descargar archivos para as compartir documentos, fotos, vdeos y otros materiales.

1 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

1.- Funcionalidad del servicio FTP.


Caso prctico
Antes de comenzar a instalar un servidor de transferencia de archivos, Ana quiere documentarse sobre este servicio. Ya conoce que el servicio de transferencia de archivos estndar es FTP por lo que va a descargarse el RFC correspondiente al protocolo FTP para tratar de comprender el funcionamiento y las caractersticas del protocolo. Ello le facilitar la instalacin, conguracin y administracin del servicio. Ana le ha pedido a Jorge informacin sobre servidores y clientes FTP aconsejables para usar y ste le ha pasado una comparativa entre varios servidores y clientes.

En la anterior unidad hemos visto que el servicio web permite transferir archivos hacia los clientes usando los tipos MIME. Hay otros servicios de red que tambin permiten la transferencia de archivos entre equipos como Samba, correo electrnico o P2P. Pero no podemos entender a stos como servicios de transferencia de archivos. En un servicio de transferencia de archivos, el principal objetivo es transmitir archivos entre el equipo servidor y los equipos clientes. El servidor dispone de uno o varios directorios o carpetas donde los clientes pueden realizar (si tienen los permisos para ello) cualquiera accin bsica sobre archivos y subdirectorios o subcarpetas. Entre esas acciones, un usuario podr subir o cargar archivos desde su ordenador cliente al ordenador servidor y podr bajar o descargar archivos desde el ordenador servidor al ordenador cliente. El servicio de transferencia de archivos permitir con total transparencia que en el cliente se pueda utilizar un sistema de archivos distinto al que se use en el servidor. Por ejemplo, el servidor podr usar el sistema de archivos ext3 de Linux y el cliente el sistema NTFS de Windows y ello no tendr ninguna inuencia en la transferencia ni en como se tenga que trabajar en el cliente. El protocolo estndar para el servicio de transferencia de archivos es FTP (File Transfer Protocol, traducido como Protocolo de Transferencia de Archivos). Las primeras pruebas del servicio FTP fueron llevadas a cabo en 1971 por el Instituto Tecnolgico de Massachusetts. Sobre el protocolo se han ido sucesivas actualizaciones para mejorar su funcionalidad. Por ejemplo, puede ser interesante instalar el servicio FTP sobre un equipo servidor web para que el administrador del sitio web pueda subir archivos al sitio web desde cualquier ordenador con posibilidad de conectarse a travs de la red con el servidor.

2 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

1.1.- Protocolo FTP.


El protocolo FTP es una de los primeros protocolos desarrollados para la arquitectura TCP/IP. Su primera versin, con un funcionamiento muy bsico, se describe en el RFC 141. Desde esa primera implementacin se han ido desarrollando sucesivas mejoras que se n ido recogiendo en sucesivos documentos RFC. La versin actual del protocolo se recoge en el RFC 959 de octubre de 1985. FTP es un protocolo del nivel de aplicacin. Permite establecer una conexin cliente/servidor para transferir archivos del servidor al cliente (descarga) o del cliente al servidor (subida). Las conexiones FTP se establecen sobre conexiones TCP de nivel de transporte. Los objetivos principales del protocolo FTP se describen en la introduccin del RFC 959y son: Promover la comparticin de archivos entre equipos. Animar al uso indirecto o implcito (a travs de programas) de servidores remotos. Establecer transferencias de archivos que tengan total independencia de los sistemas de archivos usados en cliente y servidor. Transferir archivos de forma ecaz y able. FTP permite varias operaciones sobre archivos remotos (ubicados en un servidor) subir archivos, bajar archivos, borrar archivos, crear carpetas. FTP permite que un usuario gestione o administre directamente las transferencias de archivos desde una terminal y mediante un conjunto de comandos FTP disponibles o que lo haga mediante cualquier otro programa (de interfaz grca o de texto) que implemente el protocolo. El protocolo FTP no es un protocolo seguro ya que transmite la informacin en texto plano, tal como es codicada en origen. Aunque al realizar la conexin FTP, hay una autenticacin de usuario, se transmiten el nombre ya contrasea sin encriptar. Una solucin para tener conexiones FTP seguras es tunelizar las conexiones FTP sobre conexiones seguras bajo el protocolo SSH. Una alternativa para transferencias de archivos seguras es el protocolo SFTP. Este protocolo, al igual que FTP permite realizar una serie de operaciones sobre archivos remotos

Para saber ms
Si quieres conocer todo sobre las especicaciones del protocolo FTP consulta el documento: RFC 959. (0.14 MB)

Autoevaluacin
Cul de las siguientes armaciones no corresponde a una conexin FTP? La informacin se transmite en texto plano. Al conectar hay una autenticacin del usuario. La contrasea se transmite encriptada. Puede permitir borrar archivos almacenados en el servidor.

3 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

1.2.- Funcionamiento.
El funcionamiento de las conexiones FTP se basa en el modelo de conexin cliente/servidor. El servidor pone a disposicin de los clientes uno o varios directorios en los que los usuarios pueden realizar acciones sobre sus archivos. Cuando un usuario inicia una conexin con un servidor FTP desde un cliente, es autenticado (se pide su nombre y contrasea) por el servidor. Cada usuario podr acceder a los directorios en los que tenga permisos de acceso y podr realizar en ellos las acciones para las que est autorizado. En las conexiones FTP, a los directorios que el servidor FTP pone a disposicin de los clientes se les llama directorios remotos y a los archivos que hay dentro de ellos archivos remotos. A los directorios y archivos de equipos clientes usados en las transferencias los llamaremos directorios locales y archivos locales. Una conexin FTP se desarrolla de la siguiente forma: Un usuario inicia un cliente FTP y solicita una conexin con un servidor identicndose. Si se establece conexin el cliente, a peticin del usuario, va a enviar comandos u rdenes FTP al servidor solicitando realizar acciones. El servidor procesa los comandos, realiza las acciones solicitadas y enva respuestas FTP al cliente. Si la accin solicitada es una transferencia de un archivo, se inicia un proceso de transferencia de datos. No debes confundir una respuesta con una transferencia de datos. Por ejemplo, al solicitar la descarga de un archivo, la respuesta puede ser que el archivo se ha encontrado y enviado con xito, mientras que la transferencia de datos es el proceso de transmisin del contenido del archivo. Los comandos FTP son cadenas de caracteres formadas por el nombre del comando y uno o varios parmetros separados con espacios. Los comandos FTP son de tres tipos: Comandos de control de acceso: Por ejemplo, para autenticar al usuario (USER y PASS). Comandos de parmetros de transferencia: Para especicar puerto de conexin, modos de conexin y tipos de transferencia. Comandos de servicio FTP: Para realizar acciones sobre los directorios y archivos remotos como subir y bajar archivos, crear directorios y borrar archivos. En las respuestas FTP el servidor enva un cdigo numrico de 3 dgitos con el que indica como ha sido procesado el comando al que corresponde la respuesta. El primero de los dgitos indica si el comando ha sido o no procesado con xito. Los otros dos dgitos dan mayor detalle del contenido de la respuesta.

Cdigos de respuestas FTP.


Cdigo. 1xy. 2xy. 3xy. 4xy. 5xy. Descripcin. La accin no se ha terminado. Debe obtenerse otra nueva respuesta para poder enviar otro comando. La accin se realiz con xito. Puede enviarse otro comando. Se est esperando que el cliente enve informacin adicional para poder completar la accin. Se indica que la accin solicitada no se ha podido realizar ahora pero podra realizarse ms tarde. Se indica que la accin solicitada no se puede realizar.

Para saber ms
Si quieres conocer todo sobre los comandos y las respuestas FTP consulta los apartados 4.1 y 4.2 del documento: RFC 959. (0.14 MB)

4 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

1.3.- Conexiones de control y de datos.


Una conexin FTP entre un cliente y un servidor se desarrolla sobre dos conexiones TCP de nivel de transporte: Conexin de control. Conexin de datos. A travs de la conexin de control el cliente enva los comandos y recibe del servidor las respuestas a los comandos tras haber sido procesados por ste. La conexin de datos es usada para la transferencia de archivos entre cliente y servidor cuando ha sido solicitada esta transferencia por un comando.

Por el ejemplo, si el cliente solicita descargar un archivo, enva al servidor el comando RETR seguido del nombre del archivo a travs de la conexin de control. El servidor procesa el comando y pasa a enviar el archivo a travs de la conexin de datos (si es necesario abre esta conexin). Cuando termina de enviar el archivo, el servidor enva una respuesta al cliente a travs de la conexin de control indicando que el archivo se ha enviado con xito. Las conexiones de datos se cierran cada vez que se termina una transferencia de archivos y se inician cada vez que se va a iniciar una nueva transferencia de archivos. La conexin de control se inicia cuando el cliente solicita la conexin con el servidor y se cierra cuando el cliente decide terminar la conexin o tambin puede cerrarla el servidor cuando ha transcurrido un determinado tiempo sin actividad en la conexin. Cuando se ha establecido una conexin cliente-servidor FTP se inician en cliente y servidor los procesos usuario PI y servidor PI respectivamente. Estos procesos se comunican a travs de la conexin de control. El proceso usuario PI se encarga de transmitir a travs de la conexin de control los comandos FTP solicitados por el usuario de la mquina desde su interfaz de trabajo y de obtener las respuestas del servidor y entregrsela a la interfaz de trabajo del usuario. El proceso servidor PI se encarga de procesar los comandos recibidos, enviar las respuestas y, si procede, iniciar un proceso de transferencia de archivos. Cuando se va a iniciar una conexin de datos entre cliente y servidor FTP se inician en cada mquina un proceso DTP. Los procesos DTP cliente y servidor se comunican para desarrollar la transferencia de un archivo. Cuando termina la transferencia, se cierra la conexin de datos y tambin se cierran los procesos DTP.

Autoevaluacin
Al proceso que se encarga en el cliente de enviar los comandos al servidor se le llama: Cliente PI. DTP cliente. Interfaz de usuario FTP. Cliente FTP.

5 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

1.4.- Modos de conexin del cliente.


Laos servidores FTP usan el puerto TCP 21 para atender las conexiones de control FTP, es decir, recibe los comandos en el puerto 21 y enva las respuestas por su puerto 21. Si tiene varias conexiones abiertas, usa para todas ellas el puerto 21 como puerto de escucha de la conexin de control. El cliente abre un puerto superior a 1024 para cada conexin de control que establece con un servidor FTP. Si un cliente FTP tiene iniciadas varias conexiones FTP, tiene un puerto abierto por cada una de las conexiones iniciadas incluso si fueran dos simultneas con el mismo servidor. Hay dos modos de establecer las conexiones de datos entre cliente y servidor. A estos modos se les llama modos de conexin del cliente y se llaman: Modo activo. Modo pasivo.

En el modo activo, una vez que se ha establecido la conexin de control, para iniciar una conexin de datos se hace lo siguiente: El cliente enva al servidor un comando PORT a travs de la conexin de control indicando un nmero de puerto TCP superior a 1024 que pretende abrir para la conexin de datos. El servidor inicia la conexin de datos (no la transferencia) entre su puerto TCP 20 y el puerto que le ha indicado el cliente. Esto se puede entender por un cortafuegos en el cliente como una amenaza ya que desde el exterior se inicia una conexin solicitando que el cliente abra un puerto. La conexin de datos se usa para la transferencia de archivos. En el modo pasivo, una vez que se ha establecido la conexin de control, para iniciar una conexin de datos se hace lo siguiente: El cliente enva al servidor un comando PASV indicando que va a establecer conexin en modo pasivo. El servidor responde con un nmero de puerto TCP superior a 1024 (aqu no es el puerto 20) que pretende abrir para la conexin de datos. El servidor usa un puerto para cada conexin de datos que tenga iniciada. El cliente inicia la conexin de datos abriendo un puerto TCP disponible y mayor que 1024 y conectndose con el puerto que le indic servidor. Cuando llega la solicitud de conexin al servidor, ste abre el puerto que pretenda usar para la conexin. Se transmiten archivos por la conexin de datos.

6 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

1.5.- Tipos de transferencia.


Para transmitir archivos entre clientes y servidores FTP pueden utilizarse dos tipos de transferencia de datos diferentes: Transferencia ASCII. Transferencia binaria. Una transferencia ASCII es adecuada para transmitir archivos de texto codicados en ASCII (txt, html). Pero no es adecuada para transmitir otros tipos de archivos ya que en la mayora de los casos no se completara la recepcin de esos archivos. En la transferencia ASCII se realiza la transmisin analizando byte a byte la informacin transmitida. Los archivos ASCII terminan con un carcter de control EOF. Al usar una transferencia ASCII, en el momento que se recibe un byte que corresponde a EOF se da por terminada la transmisin. Esto para los archivos ASCII es lo que se debe producir, pero no para otros archivos ya que un byte de un chero no ASCII puede contener el cdigo correspondiente a EOF en cualquier parte del archivo. Para cambiar de un tipo de transferencia a otro, el cliente debe enviar al servidor el comando FTP TYPE e indicando el tipo de transferencia. Los programas clientes de usuario permiten que el usuario pueda solicitar el cambio del tipo de transferencia. En Linux el programa cliente ftp permite cambiar de un tipo de transferencia a otro mediante los comandos: ascii. binary.

Autoevaluacin
Seala cual de los siguientes tipos de archivos se transmitir correctamente en una transferencia FTP de tipo ASCII: pdf. html. exe. jpg.

7 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

1.6.- Servidores.
Existen una gran cantidad de servidores FTP. A la hora de elegir un servidor FTP habr que evaluar varias de sus caractersticas. Algunas de estas caractersticas son: Facilidad de instalacin y conguracin, seguridad del servicio, opciones disponibles de conguracin, gestin de cuentas de usuario y permisos de acceso a recursos, limitacin del ancho de banda para las transferencias de archivos, nmero mximo de conexiones simultneas etc. A continuacin se describen algunos de los servidores FTP ms destacados. vsftpd. Sitio ocial y de descarga de vsttpd. Slo para Linux. Es un servidor muy seguro, fcil de instalar y congurar. Los usuarios del sistema Linux en el que se instale el servidor son usuarios para el servicio. La conguracin es muy sencilla y se centra fundamentalmente en la seguridad y la eciencia. Filezilla Server. Sitio ocial y de descarga de Filezilla server. Slo para Windows. Muy fcil de usar. Su mejor caracterstica es la relativa a la conguracin de cuentas de usuario y grupos de usuarios y el establecimiento de permisos de acceso, restricciones sobre acciones, cuotas y otras limitaciones. Licencia GPL. FTP Serv-U. Sitio ocial y de descarga de FTP Serv-U. Para Windows y Linux. Muy fcil de usar y muy completo. Es muy potente en lo relativo a opciones de seguridad y establecimiento de restricciones sobre cuotas de disco y velocidades de subida y bajada para usuarios. Licencia de prueba por 30 das. Despus sigue funcionando pero en un modo llamado personal con menos funcionalidades. Dispone de otras licencias de pago de los tipos Bronze, Silver y Gold. Microsoft FTP Server. Sitio ocial de Microsoft IIS. Slo para Windows. Est integrado dentro de los sistemas Windows formando parte de Microsoft IIS. Pure-FTPd. Sitio ocial y de descarga de Pure-FTPd. Slo para Linux. Muy fcil de instalar y congurar. Sus caractersticas ms destacadas son la seguridad, la regulacin del ancho de banda para las transferencias de archivos y la gran cantidad de opciones de conguracin. Licencia GPL.

8 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

1.7.- Clientes.
Si hay mltiples servidores FTP, an existen muchos ms clientes FTP. Los sistemas operativos Windows y Linux integran un cliente FTP que se ejecuta en modo comando, es decir, se trabaja con una interfaz en modo texto en la que el usuario ejecuta o enva comandos FTP a los servidores con los que se conecta. Estos clientes se llaman ftp pero no son iguales (los comandos que se pueden ejecutar en las interfaces de Windows y Linux no tienen porqu ser iguales aunque puedan coincidir en muchos casos). Aparte de estos clientes de interfaz de texto, podemos usar clientes grcos que tenemos disponibles para descargar e instalar. Normalmente estos clientes tambin permiten establecer conexiones con otros servidios de transferencia seguros como SFTP. Algunos de estos clientes grcos son: Filezilla Client: Sitio ocial y de descarga de Filezilla Client. Disponible para sistemas Windows y Linux. Licencia GPL. Muy rpido, fcil de congurar y de un buen rendimiento. Smart FTP: Sitio ocial y de descarga de Smart FTP. Slo para Windows. Licencia gratuita de evaluacin de 30 das, dispone de las licencias de pago Home, Professional y Ultimate. Destacan su interfaz grca y sus numerosas opciones de conguracin. gFTP: Sitio ocial y de descarga de gFTP. Solo para Linux. Licencia GPL. Muy ligero y fcil de usar. Permite establecer conexiones con varios protocolo de transferencia de archivos aparte de FTP. Permite gestionar subidas y bajadas de archivos simultneas. cuteFTP: Sitio ocial y de descarga de cuteFTP. Slo para Windows. Licencia gratuita de evaluacin de 30 das, dispone de las licencias de pago Home, Professional y Lite. Tiene una interfaz muy sencilla en la que basta arrastrar archivos para iniciar una subida o bajada de stos. FireFTP: Sitio ocial de descarga de FireFTP. Es un complemento para el navegador Mozilla Firefox que permite usar el navegador como si fuera un cliente FTP. Es multiplataforma, al igual que Firefox. Licencia GPL.

Autoevaluacin
Cul de los siguientes clientes FTP se distribuye slo para sistemas Linux? smartFTP. Filezilla. FireFTP. gFTP.

9 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

1.8.- Navegadores web como clientes FTP.


Un navegador web permite establecer conexiones FTP con servidores FTP. Para ello hay que conocer el nombre DNS del equipo servidor FTP o en su lugar la IP del servidor. En el navegador web debemos escribir la URL correspondiente al servidor con el que nos queremos conectar de las formas: ftp://nombre_DNS_servidor_FTP ftp://IP_servidor_FTP Por ejemplo, para iniciar una conexin con el servidor FTP de RedIRIS, deberas escribir en la URL del navegador: ftp://ftp.rediris.es Al conectarnos con un servidor FTP, puede pedirse un nombre de usuario y contrasea o permitirse el acceso sin autenticacin como usuario annimo y con permisos de invitado. El usuario con el que realicemos la conexin determinar lo que podemos hacer y los archivos y directorios que podemos ver del servidor FTP. Los servidores FTP suelen poner a disposicin de los usuarios invitados directorios con nombres como public o incoming para que estos puedan acceder a ellos y descargar archivos e incluso crear subdirectorios y subir archivos. En la imagen de la derecha se muestra el acceso al servidor FTP de RedIRIS mediante el navegador Mozilla Firefox.

Reexiona
Conectndote con tu navegador web al servidor FTP de RedIRIS: A qu directorios tienes acceso? Qu acciones puedes realizar en el directorio incoming? Qu acciones puedes realizar en el directorio pub y con archivos de ese directorio?

10 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

2.- Instalacin del servidor vsftpd.


Caso prctico
Ana ha decidido instalar un servidor FTP en el ordenador servidor web del centro para que se puedan subir archivos a los sitios web desde cualquier ordenador . Dado que el ordenador trabaja con el sistema operativo Linux Ubuntu ha decidido instalar el servidor vsftpd porqu se ha informado sobre los servidores FTP para sistema Linux y ha entendido que es el ms adecuado. Despus de realizar la instalacin ha comprobado el contenido de los archivos de conguracin del servicio.

El servidor vsftpd se distribuye bajo una licencia libre GNU GPL y puede descargarse de la pgina ocial. Sitio web ocial de vsftpd Puedes instalar el paquete correspondiente al servidor vsftpd en un ordenador con Linux Ubuntu ejecutando:

apt-get

install vsftpd

Tambin puedes instalar el paquete desde el programa gestor de paquetes Synaptic. Tras haber instalado el servicio, ste queda iniciado y se iniciar automticamente cada vez que se inicie el sistema. En la conguracin inicial, se permite el acceso annimo al servidor desde clientes FTP y el acceso mediante las cuentas de usuarios locales del sistema. Si los usuarios locales del servidor se conectan remotamente mediante un cliente FTP al servicio FTP podrn acceder a sus carpetas personales en el servidor, es decir que usuario podr acceder a la carpeta /home/usuario. Si se realiza una conexin annima, se tiene acceso a la carpeta /srv/ftp que ser compartida para todos los accesos annimos. Las conexiones annimas se podrn hacer con los nombres de usuario anonymous y ftp (sin ninguna contrasea).

Autoevaluacin
Tras haber instalado el servidor vsftpd, slo podran iniciar conexiones FTP al servidor: Usuarios annimos y los locales del equipo servidor. Usuarios annimos. El usuario que instal el servidor y el usuario root. Ningn usuario.

11 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

2.1.- Inicio y parada del servidor.


Tras instalar el servidor vsftpd Linux Ubuntu, podemos administrar el servicio mediante el script /etc/init.d/vsftpd. Se deben ejecutar como superusuario o utilizando el comando sudo para ejecutarlos. En la administracin del servicio podemos iniciarlo, detenerlo, reinciarlo o comprobar sus estado.

Administracin del servicio vsftpd con script.


Accin Comando

Comprobar el estado del servicio

/etc/init.d/vsftpd status

Detener el servicio

/etc/init.d/vsftpd stop

Iniciar el servicio

/etc/init.d/vsftpd start

Reiniciar el servicio

/etc/init.d/vsftpd restart

Tambin podemos usar el comando service para administrar el servicio sabiendo que el nombre con el que se reconoce al servicio en Ubuntu es vsftpd.

Administracin del servicio vsftpd con el comando service.


Accin Comando

Comprobar el estado del servicio

service vsftpd status

Detener el servicio

service vsftpd stop

Iniciar el servicio

service vsftpd start

Reiniciar el servicio

service vsftpd restart

Cuando esta iniciado vsftpd, el servicio debe estar escuchando en el puerto 21. Puedes comprobar con el comando netstat -ltn que hay un servicio escuchando en ese puerto 21.

12 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

Autoevaluacin
Para iniciar el servidor vsftpd Ubuntu, debes ejecutar como superusuario el comando: /etc/vsftpd start /etc/init.d/vsftpd service VSFTPD start service vsftp start

13 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

2.2.- Archivos de conguracin del servidor.


En Linux Ubuntu el nico archivo de conguracin para el servidor vsftpd es /etc/vsftpd.conf. Este archivo contiene varias directivas para establecer las distintas opciones de conguracin. Todas las directivas tienen la sintaxis:

Opcin=valor

Dejar espacios entre el nombre de la opcin y el carcter "=" o entre este carcter y el valor es incorrecto. Al iniciar el servicio no se interpretara la directiva y se producira un error. El contenido inicial de este archivo es:

listen=YES anonymous_enable=YES local_enable=YES dirmessage_enable=YES use_localtime=YES xferlog_enable=YES connect_from_port_20=YES secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd rsa_cert_file=/etc/ssl/private/vsftpd.pem chroot_local_user=YES write_enable=YES anon_upload_enable=NO anon_mkdir_write_enable=NO anon_other_write_enable=NO

Debes conocer
Debers conocer las principales directivas de vsftpd.conf que podrs consultarlas en el archivo: Directivas de vsftpd.conf. (0.17 MB)

El archivo /etc/ftpusers contiene una lista de los usuarios del sistema a los que se deniega el acceso mediante ftp. Entre esos usuarios, se deniega el acceso al usuario root como medida de seguridad. El archivo /var/log/vsftp.log registra la informacin sobre las conexiones ftp establecidas. Es importante consultar este archivo para resolver cualquier incidencia producida durante las conexiones o para hacer una evaluacin del comportamiento del servicio.

14 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

3.- Cliente grco Filezilla.


Caso prctico
Ana tiene instalado ya un servidor FTP y quiere probar su funcionamiento. Va a instalar un cliente grco y ha decidido usar Filezilla ya que es multiplataforma y as podr probarlo en mquinas con diferentes sistemas. Ha observado que es muy fcil de utilizar y de congurar y ya se ha conectado con su servidor FTP y con otros servidores FTP a travs de Internet. Una vez que tenga congurado su servidor, podr subir con este cliente grco los archivos a su sitio web y ensear a Eva y a otros usuarios del centro como usar este programa.

El software Filezilla Client es un cliente grco FTP. Es un software multiplataforma desarrollado por Filezilla-Project, de cdigo abierto y de licencia GPL. Sitio ocial de descarga de Filezilla Client. Para instalar Filezilla Client en Linux Ubuntu/Debian es ms recomendable hacerlo a travs de la instalacin de un paquete Debian ya que la distribucin que se puede descargar del sitio ocial es el cdigo fuente del software y necesita compilarse una vez descargado. El paquete de instalacin de Filezilla Client para Debian Ubuntu se llama lezilla . Puedes instalarlo con apt-get, con synaptic o con cualquier otro software gestor de paquetes. Cuando se ha instalado en Ubuntu, el programa se puede ejecutar con el comando lezilla o travs del men Ubuntu seleccionando men aplicaciones > Internet > FileZilla. Tras iniciar FileZilla, se muestra una interfaz de trabajo muy sencilla como la que se muestra a continuacin para Ubuntu. La interfaz para sistemas Windows es muy similar, al menos en la distribucin de reas de trabajo es igual.

Reexiona
Puedes instalar el cliente grco Filezilla en Windows y en Linux? Puedes iniciar una conexin mediante Filezilla con el servidor FTP ftp.rediris.es como usuario annimo?

Autoevaluacin
Del cliente Filezilla se distribuyen versiones slo para: Windows, Linux y MacOS. Windows. Linux y Windows. Linux.

15 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

3.1.- Utilizacin.
La interfaz del cliente Filezilla en Debian/Ubuntu est organizada en varias reas, tal como se indica en la siguiente imagen.

Men: En men archivo se pueden gestionar sitios para congurar conexiones a servidores FTP de forma que seleccionando el sitio se conecta con los datos de conexin establecidos. En men Editar podemos establecer la conguracin del cliente. En men Ver podemos establecer las reas vivibles de la interfaz. En men Transferencia podemos solicitar manualmente una transferencia de archivo e indicar si sta es ASCII o binaria. En men servidor podemos realizar varias acciones con el servidor como desconectar, reconectar o enviar un comando FTP. Barra de herramientas: Contiene botones de varias herramientas para abrir el gestor de sitios, mostrar u ocultar reas de la interfaz, cancelar operacin, actualizar listas de archivos en rboles de directorio, desconectar o reconectar con el servidor. Barra de conexin rpida: Permite introducir los datos para realizar una conexin (nombre o IP del servidor, nombre y contrasea del usuario y puerto de escucha del servidor). rea de mensajes: Da informacin sobre todas las operaciones que se realizan (comandos que se envan, respuestas recibidas y estado de la conexin. Cuando se produce un error se muestra un mensaje en color rojo. rboles de directorios: Permiten navegar por los directorios local (en el cliente) y remoto (en el servidor). Del servidor slo se muestra el rbol correspondiente al directorio o a los directorios en los que el usuario tenga permiso de acceso. Para subir o bajar un archivo basta con arrstralo de un rbol al otro. Se pueden realizar otras acciones sobre los directorios y los archivos seleccionndolos y activando el men contextual. rea cola de transferencia: Contiene una lista de los archivos pendientes de ser transferidos. Tambin puede mostrar una lista de transferencias fallidas y una lista de transferencias exitosas.

Debes conocer
En el siguiente vdeo aprenders a utilizar Filezilla Client:

Resumen textual alternativo

16 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

3.2.- Conguracin.
El cliente Filezilla de los sistemas Linux se congura en Men Edicin > opciones. En Windows se congura en Men Herramientas > opciones. En los dos sistemas, la interfaz de conguracin es muy similar. Aqu vamos a presentar la conguracin del cliente Filezilla en Linux Ubuntu.

A la izquierda de la interfaz se tiene un men en forma de lista desplegable. Cuando se selecciona una opcin de la lista se abre a la derecha una ventana para la conguracin de la correspondiente opcin. Las opciones principales de conguracin son: Conexin: congura cuestiones relativas al establecimiento de conexiones y a los modos de conexin activo y pasivo. Transferencia: congura cuestiones relativas a paradas en las transferencias, limitaciones de velocidad, transferencias ASCII y binarias, etc. Interfaz: permite congurar la interfaz de usuario de Filezilla. Edicin de archivos: relativo a abrir archivos de textos cuando se descargan. Registro: para establecer si Filezilla realiza un registro de acciones realizadas. Depuracin: para indicar que tipos de acciones son registradas.

Debes conocer
Mira la siguiente presentacin para aprender a congurar el cliente Filezilla.

Resumen textual alternativo

Autoevaluacin
Se puede limitar con Filezilla Client la velocidad mxima de las descargas en la opcin:

17 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

Conexin > velocidades. Transferencias. Ancho de banda. Registro.

18 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

4.- Clientes FTP en modo texto.


Caso prctico
Ana ya ha estado probando el cliente grco Filezilla y ha observado que al realizar alguna accin se muestran en pantalla una serie de comandos que enva el cliente. Ahora quiere aprender a trabajar directamente con comandos FTP y ha averiguado que en Filezilla se pueden escribir y enviar comando pero desea trabajar en modo comando desde una terminal en modo texto. Ha comenzado a realizar y probar conexiones FTP con los clientes ftp en Ubuntu y en Windows. Ha probado varios comandos y le ha parecido bastante fcil usarlos pero tambin ha observado que no todos los comandos usados en esos clientes para Windows y para Linux son iguales.

Tanto en sistema Windows como en sistemas Linux se incluye un cliente FTP llamado ftp. Cuando se ejecuta ftp se accede a una interfaz de usuario en modo texto en la que el usuario puede introducir comandos FTP que son enviados al servidor que los interpreta, realiza las acciones solicitadas y devuelve respuestas el cliente que se muestran como mensajes en la interfaz de usuario. La sintaxis para ejecutar ftp es:

ftp

[IP_servidor | nombre_servidor]

Despus de ejecutar el comando se inicia la interfaz de usuario del cliente FTP que usa el carcter ">" como indicador de rdenes de la interfaz. Si se da la IP del servidor o el nombre del servidor de forma correcta, se establece ya una conexin de control con el servidor y se pide un nombre de usuario y una password o contrasea. Si se ha autenticado correctamente el usuario, podr introducir comandos y ejecutarlos o, lo que es lo mismo, enviarlos al servidor. Habr comandos que un usuario no pueda ejecutar por falta de permisos, si los ejecuta el servidor responder con un mensaje de error.

Si se ejecuta ftp sin parmetros, lgicamente no se establecer conexin alguna. Para establecerla habr que ejecutar en la interfaz de ftp el comando open seguido de la IP del servidor o del nombre del servidor.

Los comandos no son enviados al servidor tal como los escribe el usuario sino que el cliente los transforma en comandos FTP reconocidos en el protocolo FTP. Por ejemplo, cuando el usuario ejecuta en la interfaz el comando get para descargar un determinado archivo, el cliente realmente enva al servidor tres comandos: TYPE, PORT y RETR. Se pueden escribir los comandos de forma abreviada (con sus primeras letras) siempre que no haya posibilidad de confusin con otros comandos. Por ejemplo, el comando "open" se puede ejecutar escribiendo solamente "o" ya que no hay ms comandos que comiencen por o.

19 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

4.1.- Comandos de conexin.


Una vez iniciada la interfaz del cliente ftp, puedes obtener una lista de todos los comandos ejecutables en la interfaz mediante el comando ? o mediante el comando help, escribiendo en la lnea de comandos: >? Para obtener ayuda sobre un comando, puedes usar los comandos ? o help en la forma: > ? comando Los comandos de conexin estn relacionados con el inicio y cierre de las conexiones. En la tabla siguiente se muestran los comandos de conexin para el cliente ftp de Linux Ubuntu. Para cada comando se indica la sintaxis del comando, encerrando entre los caracteres < > cada parmetro que se debe aadir al comando. Cuando se ejecute realmente el comando no se deben escribir esos caracteres. En Linux los comandos FTP se deben escribir siempre en minscula.

Comandos de conexin del cliente ftp.


Comando Funcin Termina la conexin o sesin FTP y sale del programa.

bye

close

Termina la conexin o sesin FTP sin salir del programa.

disconnect

Termina la conexin o sesin FTP sin salir del programa.

exit

Termina la conexin o sesin FTP y sale del programa. Inicia una conexin con el servidor indicado. El servidor se debe indicar con su direccin IP o con su nombre DNS. Si no se da el servidor en el comando, la interfaz lo pide a continuacin. Si se ha establecido conexin con el servidor, la interfaz pide a continuacin un usuario y su contrasea para iniciar la sesin de usuario. Establece que se pase al modo de conexin de datos pasivo si se est actualmente trabajando en modo activo o, al revs, que se pase al modo de conexin de datos activo si se est actualmente trabajando en modo pasivo. En la respuesta del comando se indica si el

open <servidor>

passive

20 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

Comando

Funcin modo pasivo queda activado o desactivado. Termina la conexin o sesin FTP y sale del programa. Permite iniciar una sesin cuando ya est establecida una conexin con un servidor. Si no se escribe el nombre de usuario con el comando, la interfaz lo pide a continuacin. este comando de debera usar cuando, por ejemplo, nos hemos autenticado de forma incorrecta anteriormente y queremos volver a introducir el nombre de usuario y la contrasea sin que se cierre la conexin.

quit

user <usuario>

Autoevaluacin
Seala los comandos de la interfaz ftp de Linux que sirven para terminar una conexin sin salir del programa. bye. close. disconnect. end. exit. quit. Mostrar Informacin

21 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

4.2.- Comandos de transferencia.


Estn relacionados con la transferencia de archivos. En la descripcin de la funcin de cada comando nos referimos a un elemento (archivo o directorio) local como un elemento del sistema de archivos del equipo cliente FTP y nos referimos a un elemento remoto como un elemento del sistema de archivos del servidor FTP al que puede acceder el usuario en la sesin. En una sesin ftp, un usuario tendr abierto en todo momento un directorio local y un directorio remoto. Los comandos de transferencia son:

Comandos de transferencia de archivos del cliente ftp


Comando Funcin Lista el contenido del directorio remoto indicado o el actual de trabajo cuando no se escriba el directorio. Es de transferencia ya que el contenido del directorio se transere al cliente como si fuera un archivo (por una conexin de datos. Descarga el archivo remoto F2 y gurdalo en el directorio local de trabajo con el nombre F1. El archivo F2 debe existir en el directorio remoto. Si no se escribe F1, el archivo se guarda con el nombre F2.

dir <directorio>

get <F1> <F2>

ls <directorio>

Igual que el comando dir.

mget <archivos>

Descarga al directorio local actual los archivos indicados del directorio remoto. En archivos se pueden usar comodines (* y ?) o escribir varios nombres de archivos separados por espacios. Al ejecutar el comando nos pide conrmacin (y/n) para cada archivo descargado. Lista el contenido de los directorios indicados. Pueden usarse comodines.

mdir <directorios>

mls <directorios>

Lista el contenido de los directorios indicados. Pueden usarse comodines.

mput <archivos>

Sube al directorio remoto actual los archivos indicados desde el directorio local.

put <F1> <F2>

Sube el archivo local F1 al directorio remoto y lo guarda con el nombre F2.

22 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

Comando

Funcin

recv <F1> <F2>

Igual que el comando get.

send <F1> <F2>

Igual que el comando put.

Relacionados con comandos de transferencia hay otros comandos para gestionar directorios locales y remotos y para gestionar archivos remotos.

Comandos de gestin de archivos remotos y directorios en el cliente ftp


Comando Funcin

cd <directorio>

Cambia de directorio remoto actual de trabajo.

delete <F1>

Elimina el archivo F1 del directorio remoto.

lcd <directorio>

Cambia de directorio local actual de trabajo. Si no se escribe el directorio, el comando devuelve cual es el directorio local actual de trabajo.

mkdir

<directorio>

Crea en el directorio remoto actual el directorio indicado.

pwd

Muestra la ruta del directorio remoto actual de trabajo.

rename <F1> <F2>

Renombra el archivo F1 del directorio remoto actual con el nombre F2.

rmdir <directorio>

Elimina el directorio indicado del directorio remoto actual de trabajo.

umask <permisos>

Congura los permisos que se darn a los archivos que sean subidos al servidor. Los permisos se escriben con 3 dgitos en octal y mediante mscara inversa.

23 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

4.3.- Comandos de control.


Los comandos de control permiten realizar acciones de control sobre las transferencias de archivos y sobre el funcionamiento de la interfaz. Entre otras cosas permiten cambiar el modo de transferencia entre binario y ASCII, activar y desactivar mostrar las respuestas en la interfaz (el servidor siempre las enviar) o mostrar informacin sobre el estado de la conexin.

Comandos de control ftp.


Comando Funcin Se pasa a modo de transferencia ASCII (porque se van a transferir archivos de texto).

ascii

binary

Se pasa a modo de transferencia binario (porque se van a transferir archivos de todo tipo).

glob

Activa o desactiva la posibilidad de usar comodines en los nombres de archivos. Activa o desactiva que se muestren los mensajes de respuesta de los mensajes de conrmacin cuando se ejecutan los comandos. Permite especicar que se va a realizar una conexin FTP a travs del proxy. En el comando se indica la IP del proxy.

prompt

proxy <IP>

status

Muestra informacin sobre el estado de la sesin FTP actual.

type <modo>

Se pasa al modo de transferencia indicado en el comando (ascii o binary).

verbose

Activa o desactiva que se muestren respuestas de los comandos.

Ejercicio resuelto
Imagnate que has iniciado una sesin ftp con el siguiente estado: transferencias en modo texto, directorio local actual de trabajo /home/tu, directorio remoto actual de trabajo /. Quieres descargar los archivos uno.pdf, dos.pdf y tres.odt desde el directorio remoto /pub al directorio local /home/tu/Escritorio. Qu comandos ftp tendras que ejecutar?

24 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

Autoevaluacin
El comando ftp type sirve para: Especicar el tipo de archivos que se va a transmitir. Especicar que las conexiones de datos van a establecer en los modos activo o pasivo. Mostrar el contenido de un archivo de texto. Cambiar a modo de transferencia ASCII o binaria.

25 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

5.- Herramientas grcas de conguracin de servidor.


Caso prctico
Ana tiene instalado y en funcionamiento el servidor FTP vsftpd. Ya ha analizado el archivo de conguracin del servidor y realizado los primeros pasos de conguracin editando el archivo. Ha estado buscando alguna herramienta grca de conguracin y ha comprobado que en la aplicacin webmin se incluye un mdulo de conguracin de vsftpd. Lo ha iniciado y le parece que no va a ser muy difcil congurar el servidor ya que la interfaz parece bastante simple.

Para la conguracin de servidores FTP existen diversas herramientas grcas. Los servidores FTP para sistemas Windows generalmente se distribuyen con herramientas grcas de conguracin y administracin. El servidor vsftpd para sistemas Linux se distribuye sin herramienta grca de conguracin. Sin embargo existen herramientas grcas para administrar este servidor. webmin: Esta herramienta que ya hemos usado para congurar otros servidores puede incluir un mdulo de conguracin y administracin del servidor vsfftpd. Dado que este mdulo est desarrollado por terceros, hay que descargar primero el software del mdulo: vsftpd.tar.gz Habrs descargado el mdulo llamado vsftpd.tar.gz. Despus hay que instalar el mdulo en webmin. Para ello, ejecuta webmin y accede a men webmin > conguracin webmin > mdulos webmin > instalar desde archivo local, selecciona el archivo vsftpd.tar.gz, instala el mdulo. Si todo ha ido bien ya tendr el mdulo vsftpd en men servidores de webmin. yast2-ftp-server: Es uno de los mdulos de la aplicacin yast de administracin y conguracin de sistemas Suse Linux. system-cong-vsftpd: Es un mdulo de administracin de vsftpd que se puede agregar a la herramienta de administracin system-cong de los sistemas Linux CentOS/Fedora/RedHat. Para administrar el servidor pure-ftpd de sistemas Linux se usa una herramienta especca de conguracin y administracin del servicio que se llama pureadmin.

26 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

5.1.- Webmin. Conguracin de vsftpd.


Para congurar el servidor vsftpd con webmin hay que acceder a men Servidores > vsftpd. La ventana principal de conguracin es bastante simple. En la ventana principal se tienen los siguientes elementos: Enlace Module Cong: Permite especicar entre otras cosas el nombre y la ruta del archivo de conguracin de vsftpd y del archivo de usuarios virtuales. Generally: Permite especicar el mximo nmero de conexiones que se pueden establecer por cada direccin IP cliente, el mximo tiempo de inactividad en una sesin, el mximo intervalo de parada que se puede producir durante una transferencia y el texto de bienvenida en el inicio de sesiones. Anonymous Conguration: Permite habilitar o deshabilitar los usuarios annimos y congurar lo que stos pueden realizar. Local User: Permite indicar si los usuarios locales pueden iniciar sesiones FTP desde un cliente, si permanecern "enjaulados" en las sesiones y si pueden escribir en el directorio remoto. Virtual MySQL Users: Para activar los usuarios virtuales aadiendo unas directivas al archivo de conguracin. Log Infos: Para especicar la ruta y el nombre del archivo de registro del servicio. Miscellaneus: Tiene opciones variadas, entre ellas para establecer la velocidad mxima de las transferencias para los usuarios annimos y para los locales. Manual Entries: Para editar el archivo de conguracin. vsftpf.conf Doc: Documento con explicacin de todas las directivas del archivo de conguracin. SSL Cert: Para crear un certicado SSL y realizar conexiones seguras SFTP. Botones Start, Restart y Stop para iniciar, reiniciar y detener el servicio.

Debes conocer
Para aprender a congurar el servidor vsftpf visualiza el vdeo:

Resumen textual alternativo

Autoevaluacin
Si quieres establecer una limitacin sobre la velocidad mxima de transferencia de archivos que se usar para las conexiones FTP de usuarios annimos, tienes que acceder al elemento de la ventana principal de conguracin de vsftpd: Generally. Miscellaneus. Anonymous user. Local User.

27 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

6.- Conguracin del servicio FTP.


Caso prctico
Ana quiere subir ya archivos al sitio web www.centroelacebo.com usando el servicio FTP que ya tiene instalado. Para ello tiene que crear una cuenta de usuario que utilice como directorio personal de trabajo el directorio del sitio web. Tanto a Eva como a Lorena les ha comunicado el nombre de esa cuenta y la contrasea para que puedan subir y modicar archivos cuando quieran. Tambin va a realizar la conguracin apropiada para el servidor FTP para que el resto de usuarios del sistema puedan conectarse mediante FTP al servidor y modicar sus sitios personales. Deber dotar de una cierta seguridad al servicio y establecer algunas restricciones de uso para que tenga un rendimiento adecuado.

En el apartado "Archivos de conguracin del servidor" de esta unidad has estudiado las principales directivas de conguracin del servidor vsftpd y en el apartado "Webmin. Conguracin de vsftpd" acabas de ver cmo se congura el servidor webmin. En este apartado vamos a ver cmo se conguran algunos aspectos de funcionamiento del servidor vsftpd tanto editando el archivo de conguracin /etc/vsftpd.conf como trabajando con la herramienta webmin. A continuacin vamos a ver las directivas que habra que escribir en al archivo de conguracin para realizar algunas conguraciones bsicas y aplicables al funcionamiento general del servidor. Si queremos, por ejemplo, que el servidor slo escuche a los clientes por su direccin IP 192.168.3.1:
listen_adress=192.168.3.1

Si queremos que las conexiones de datos en modo activo se establezcan por un puerto distinto al 20:
connect_from_port_20=NO ftp_data_port=3033

Si queremos mostrar un mensaje informativo al iniciar un cliente una conexin:

ftpd_banner=has accedido al servidor FTP de AulaUbuntu. Te recuerdo que tras 2 minutos de inactivid

Si queremos que se registren en el archivo /var/lib/mensajes/vsftpd mensajes sobre las conexiones FTP realizadas:
xferlog_enable=YES vsftpd_log_file=/var/lib/mensajes/vsftpd

Para establecer que el usuario annimo se llama "soyyo" en lugar de "ftp" (usuario annimo por defecto).
ftp_username=soyyo

Debes conocer
En el siguiente vdeo aprenders a congurar con webmin algunas opciones de conguracin de vsftpd.

28 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

Resumen textual alternativo

29 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

6.1.- Tipos de usuarios y accesos al servicio.


El servidor vsftpd permite iniciar acceder al servicio FTP desde cualquier cliente a tres tipos de usuarios: Usuarios locales: Usuarios con cuenta de usuario en el sistema servidor. Inician sesiones FTP identicndose con el mismo nombre de cuenta y contrasea que usaran en la mquina servidora para iniciar una sesin de sistema operativo. Cuando inician una sesin FTP, su directorio de trabajo remoto es su directorio personal en el sistema (/home/usuario). Usuarios annimos: Son nombres de usuarios que pueden iniciar sesiones FTP sin contrasea pero si identicndose con un nombre. Por defecto vsftpd admite dos usuarios annimos llamados anonymous y ftp. El usuario annimo ftp puede cambiarse en la conguracin. Los usuarios annimos tienen como directorio remoto FTP el directorio /srv/ftp. Este directorio puede cambiarse con la directiva anon_root. Usuarios virtuales: Son usuarios que no tienen cuentas de usuario en el sistema servidor pero que pueden acceder al servicio FTP. Acceden todos a travs de una misma cuenta de usuario del sistema. Cuando haya usuarios virtuales, se puede establecer una conguracin de acceso para cada uno de ellos. Ahora vamos a ver las directivas del archivo de conguracin /etc/vsftpd.conf para congurar el acceso al servicio por los usuarios. Si queremos que los usuarios annimos no tengan acceso al servicio:

anonymous_enable=NO

Si queremos que los usuarios locales tengan acceso al servicio:

local_enable=YES

Si queremos que los usuarios virtuales no tengan acceso al servicio:

guest_enable=NO

Si queremos que los usuarios virtuales y annimos tengan acceso al servicio, que los usuarios locales no tengan acceso al servicio y que adems del usuario annimo anonymous haya otro usuario annimo llamado invitado.

anonymous_enable=YES ftp_username=invitado local_enable=NO guest_enable=YES

Autoevaluacin
Cul de las siguientes no es una directiva para establecer que algn tipo de usuarios del servicio vsftpd tengan o no tengan acceso al servicio? anonymous_enable. local_enable. guest_enable. ftp_enable.

30 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

6.2.- Crear usuarios y grupos.


Algunos servidores FTP como FileZilla Server permiten administrar cuentas de usuario y grupos de usuarios para acceder al servicio. El servidor vsftpd no permite administrar cuentas de usuario para acceder al servicio. Se puede acceder al servicio mediante las cuentas de usuario creadas en el sistema operativo, es decir, las cuentas locales del servidor.

Tanto los usuarios locales como los usuarios annimos del servicio vsftpd deben tener cuentas creadas en el sistema operativo del servidor. Los usuarios virtuales no tienen cuentas creadas en el sistema operativo pero todos ellos acceden ellos a travs de una misma cuenta de usuario que si debe estar creada en el sistema. Dado que estamos trabajando con el servidor vsftpd, si necesitamos una nueva cuenta de usuario para acceder al servicio, deberemos crear una cuenta de usuario con los comandos del sistema operativo y estableciendo cual es el directorio de trabajo para esa cuenta: Para crear una cuenta de usuario llamada usuarioweb cuyo directorio de trabajo es /var/web/www y se supone que ya est creado, debemos ejecutar el comando:

#sudo adduser --home /var/web/www --no-create-home --shell /bin/false usuarioweb

Al ejecutar el comando, se pedir una contrasea de usuario que ser la que se usar para acceder al servicio. El modicador no-create-home especica que no se cree el directorio de trabajo (se supone que ya est creado). El modicador shell /bin/false establece que el usuario no establezca sesiones del sistema operativo. Para que el usuario pueda trabajar en el directorio /var/web/www deberamos cambiar su propietario (tanto en el directorio como en todos los objetos del directorio) y si fuera necesario cambiar los permisos sobre ese directorio y sus elementos. Para que el propietario y el grupo propietario del directorio y todos sus objetos sea usuarioweb, hay que ejecutar:

#sudo chown R usuarioweb:usuarioweb /var/web/www

Para que el usuario pueda iniciar sesiones ftp debe pertenecer al grupo de usuarios ftp. Habr que ejecutar el comando:

# sudo addgroup prueba ftp

Hay varias formas de crear usuarios virtuales de vsftpd. Todos esos usuarios deben estar almacenados en una base de datos. Es posible establecer una conguracin personalizada para cada usuario virtual creando un archivo de conguracin para cada usuario.

Debes conocer
En el siguiente documento aprenders a crear usuarios virtuales utilizando una base de datos MySQL y software de autenticacin PAM. Usuarios virtuales con MySQL y PAM (0.03 MB)

31 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

Autoevaluacin
Rellena los huecos con los conceptos adecuados. En la conguracin de vsftpd, para que se activen los usuarios virtuales tenemos que poner a valor YES la directiva y para que los usuarios virtuales accedan a travs de una cuenta de usuario del sistema debemos usar la directiva . Enviar

32 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

6.3.- Permisos.
En un servidor FTP podemos establecer permisos para los usuarios que controlarn las acciones que stos puedan hacer en el directorio remoto con los archivos y con los directorios. Esos permisos controlarn si un usuario puede crear, modicar, eliminar archivos en el directorio remoto, si puede crear directorios, etc. Aparte de los permisos que se puedan establecer congurando el servidor, los permisos sobre archivos y carpetas limitarn tambin las acciones que un usuario del servicio FTP pueda realizar. Por ejemplo, si el servicio FTP autoriza a un usuario a escribir en una carpeta y el sistema operativo no le autoriza, ese usuario no podr escribir archivos en esa carpeta y por tanto no podr subirlos en una sesin FTP. El servidor vsftpd establece permisos con una serie de directivas del archivo de conguracin. Hay directivas que establecen permisos para todos los usuarios locales y otras que los establecen para los usuarios annimos. Para los usuarios virtuales pueden establecerse directivas a nivel particular en sus archivos de conguracin personalizados. En su caso, se usarn las directivas de permisos de los usuarios locales. La tabla siguiente muestra sobre permisos para usuarios annimos y locales. Estas directivas estn comentadas en el documento que se referencia al principio de este apartado 6 y son las siguientes.

Directivas de conguracin de vsftpd para permisos.


Directivas sobre usuarios annimos Directivas sobre usuarios locales

anon_upload_enable

write_enable

anon_world_readable_only

chmod_enable

anon_other_write_enable

chroot_local_user

anon_mkdir_write_enable

local_umask

anon_umask

La directiva chroot_local_user sirve para mantener enjaulados a los usuarios del servicio cuando han iniciado una sesin FTP. Un usuario inicia una sesin en su directorio de trabajo y si est enjaulado no puede salir de ese directorio y acceder a cualquier directorio del sistema de archivos. Lo que si puede realiza es acceder a cualquier subdirectorio que est dentro de su directorio de trabajo. Enjaular a los usuarios es una medida de seguridad. Tanto la directiva anon_umask como local_umask indican los permisos con los que se van a crear los archivos subidos al directorio remoto.

Las directivas anon_umask y local_umask contienen la mscara inversa de permisos de los archivos en octal (tres dgitos que establecen los permisos para el propietario, grupo propietario y otros usuarios). Si, por ejemplo, el valor de la mscara inversa es 022, entonces los permisos de los archivos subidos ser 755 (777-022).

33 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

Debes conocer
La herramienta webmin permite congurar fcilmente los permisos. El vdeo siguiente te ensea a congurar permisos de vsftpd con webmin.

Resumen textual alternativo

34 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

6.4.- Cuotas.
Las cuotas del servicio FTP son limitaciones sobre la cantidad de informacin que los usuarios pueden subir al servidor. Normalmente se limitan por mximo espacio ocupado en la unidad de disco. Algunos servidores FTP permiten realizar la conguracin de las cuotas con varias opciones. Pueden establecer una cuota general para todos los usuarios, una cuota diferente para cada usuario, cuotas por periodos de tiempo, etc. El servidor vsftpd no permite administrar cuotas. Sin embargo hay una forma de establecer cuotas para el servicio, estableciendo cuotas en el sistema operativo para los usuarios. Aunque no es la medida ms adecuada es la nica posible para aplicar a los servidores FTP que no permiten administrar cuotas. Si se establecen cuotas en el sistema operativo, stas se aplican a cada cuenta de usuario del sistema y si un usuario inicia sesiones en el sistema, la cuota afecta tanto a los archivos que se almacenan en estas sesiones como a los que se suban por FTP. Cuando en una sesin vsftpd un usuario vaya a sobrepasar la cuota al subir un archivo, el servidor no le responder con ningn mensaje que indique tal situacin sino que simplemente le indicar que no se puede subir el archivo.

Debes conocer
En el siguiente documento se describe lo que debes realizar para crear cuotas de usuario en el sistema operativo Linux Ubuntu. Cuotas de disco. (0.20 MB)

Autoevaluacin
Para establecer una cuota de disco en Ubuntu para un usuario se escribe la cuota en un archivo de cuotas ejecutando el comando: aquota. edquota. quotacheck. touch.

35 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

6.5.- Limitaciones en las conexiones.


En el servidor vsftpd se pueden establecer varias limitaciones sobre las conexiones o sesiones establecidas por los clientes. Vamos a ver varios ejemplos de limitaciones y las directivas necesarias para realizarlas. Puedes comprobar que se pueden establecer varias sesiones simultneas con un mismo servidor, incluso desde una misma mquina cliente. Para limitar a tres el mximo de conexiones realizadas desde una misma direccin IP de cliente y que puedan establecer conexiones simultneas un mximo de diez clientes:

max_per_ip=3 max_clients=10

Para limitar la mxima velocidad de transferencia de los usuarios annimos a 20 KBytes/seg y de los usuarios locales a 50 KBytes/seg:

anon_max_rate=20000 local_max_rate=50000

Para establecer que se desconecte a un cliente, si est inactivo durante seis minutos:

idle_session_timeout=360

Durante una transferencia de un archivo grande, se transeren varios bloques de datos. Puede establecerse una limitacin para que cuando haya inactividad excesiva durante una transferencia se cancele la transferencia. Para especicar que el tiempo mximo de inactividad durante una transferencia sea de 2 minutos:

data_connection_timeout=120

Para establecer en 20 segundos el tiempo mximo que un cliente tiene para responder a una conexin activa:

connect_timeout=20

Con webmin pueden establecerse estas limitaciones en los elementos de conguracin de la interfaz Miscellaneous y Generally.

36 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

Anexo.- Licencias de recursos.


Licencias de recursos utilizados en la Unidad de Trabajo.
Recurso (1) Datos del recurso (1) Autora: wow_wa_cow. Licencia: CC BY-ND 2.0. Procedencia: http://www.ickr.com/photos /wow_wa_cow/534985783/sizes /m/in/photostream/ Autora: roger4336. Licencia: CC BY-SA 2.0. Procedencia: http://www.ickr.com/photos /24736216@N07/4715987204 /sizes/m/in/photostream/ Autora: _rfc-. Licencia: CC BY-NC-SA 2.0. Procedencia: http://www.ickr.com/photos /_rfc_/5954920204/sizes /l/in/photostream/ Autora: FileZilla. Licencia: Copyright cita. Procedencia: Elaboracin propia captura de pantalla de web ocial de FileZilla. Autora: PureFTPd. Licencia: Copyright cita. Procedencia: Elaboracin propia captura de pantalla de web ocial de PureFTPd. Autora: gFTP. Licencia: Copyright cita. Procedencia: Elaboracin propia captura de pantalla de web ocial de gFTP. Autora: NYCArthur. Licencia: CC BY-NC-SA 2.0. Procedencia: http://www.ickr.com/photos /nycarthur/1415018992 /in/photostream/ Licencia: GPL cita. Procedencia: Elaboracin propia captura de pantalla de synaptic. Autora: synaptic. Recurso (2) Datos del recurso (2) Autora: cali.org. Licencia: CC BY-NC-SA 2.0. Procedencia: http://www.ickr.com /photos/caliorg/6126941131/sizes /o/in/photostream/

Autora: Scientia. Licencia: Free Art License. Procedencia: http://commons.wikimedia.org /wiki/File:Ftp_simge.png

Autora: petesimon. Licencia: CC BY 2.0. Procedencia: http://www.ickr.com /photos/petesimon/3481217855 /sizes/s/in/photostream/

Autora: Serv-U. Licencia: Copyright cita. Procedencia: Elaboracin propia captura de pantalla de web ocial de Serv-U. Autora: SmartFTP. Licencia: Copyright cita. Procedencia: Elaboracin propia captura de pantalla de web ocial de SmartFTP. Autora: Mozilla Firefox. Licencia: Copyright cita. Procedencia: Elaboracin propia captura de pantalla de Mozilla Firefox.

37 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

Autora: lucaohman. Autora: Linux Ubuntu. Licencia: CC BY-NC-SA 2.0. Procedencia: http://www.ickr.com/photos /lucaohman/3622286542/in/set72157619675250068 Autora: Linux Ubuntu. Licencia: GPL (cita). Procedencia: Elaboracin propia captura de pantalla de Linux Ubuntu. Autora: inggmartinez. Licencia: CC BY-NC2.0. Procedencia: http://www.ickr.com/photos /inggmartinez/5195324359 /sizes/m/in/photostream/ Autora: FileZilla. Licencia: GNU GPL (cita). Procedencia: Elaboracin propia captura de pantalla de Filezilla Client. Autora: FileZilla. Licencia: GNU GPL (cita). Procedencia: Elaboracin propia captura de pantalla de Filezilla Client. Autora: Linux Ubuntu. Licencia: GPL (cita). Procedencia: Elaboracin propia captura de pantalla de Linux Ubuntu. Autora: claas.lange. Licencia: CC BY-NC-SA 2.0. Procedencia: http://www.ickr.com/photos /claas/478738505/sizes /m/in/photostream/ Autora: Mike NotionsCapital.com. Licencia: CC BY 2.0. Procedencia: http://www.ickr.com/photos /notionscapital/2738957753 /sizes/o/in/photostream/ Licht, Autora: Webmin. Licencia: BSD (cita). Procedencia: Elaboracin propia captura de pantalla de webmin. Licencia: CC BY-NC-SA 2.0. Procedencia: http://www.ickr.com /photos/pnnl/3638445921/sizes /m/in/photostream/ Licencia: GPL cita. Procedencia: Elaboracin propia captura de pantalla de Linux Ubuntu.

Autora: Linux Ubuntu. Licencia: GPL (Cita). Procedencia: Elaboracin propia captura de pantalla de Linuz Ubuntu.

Autora: FileZilla. Licencia: GNU GPL (cita). Procedencia: Elaboracin propia captura de pantalla de Filezilla Client.

Autora: FileZilla. Licencia: GNU GPL (cita). Procedencia: Elaboracin propia captura de pantalla de Filezilla Client.

Autora: Linux Ubuntu. Licencia: GPL (cita). Procedencia: Elaboracin propia captura de pantalla de Linux Ubuntu.

Autora: Linux Ubuntu. Licencia: GPL (cita). Procedencia: Elaboracin propia captura de pantalla de Linux Ubuntu.

Autora: PNNL_Pacic National Laboratory.

Northwest

38 de 39

16/10/12 15:17

SRI04_Contenidos

http://www3.gobiernodecanarias.org/epavirtual/Campus_FPD/le...

Autora: PureAdmin. Licencia: GNU GPL (cita). Procedencia: Elaboracin propia captura de pantalla de PureAdmin. Autora: _rfc-. Licencia: CC BY-NC-SA 2.0. Procedencia: http://www.ickr.com/photos /_rfc_/5954921098/sizes /s/in/photostream/ Autora: _rfc-.

Autora: Webmin. Licencia: BSD (cita). Procedencia: Elaboracin propia captura de pantalla de webmin.

Autora: _rfc-. Licencia: CC BY-NC-SA 2.0. Procedencia: http://www.ickr.com /photos/_rfc_/5954364775/sizes /s/in/photostream/

Autora: Linux Ubuntu. Licencia: CC BY-NC-SA 2.0. Licencia: GNU GPL (cita). Procedencia: http://www.ickr.com/photos /_rfc_/5954364567/sizes /s/in/photostream/ Autora: _rfc-. Licencia: CC BY-NC-SA 2.0. Procedencia: http://www.ickr.com/photos /_rfc_/5954364163/sizes /s/in/photostream/ Autora: AlKok. Licencia: CC BY-NC-SA. Procedencia: http://www.ickr.com/photos /fttpwwwickrcomalbert /5081869462/sizes /s/in/photostream/ Autora: Webmin. Licencia: BSD (cita). Procedencia: Elaboracin propia captura de pantalla de webmin. Licencia: CC BY-NC-SA 2.0. Procedencia: http://www.ickr.com /photos/_rfc_/5954920366/sizes /s/in/photostream/ Autora: _rfc-. Procedencia: Elaboracin propia captura de pantalla de Linux Ubuntu.

Autora: Sem Paradeiro. Licencia: CC BY-NC 2.0. Procedencia: http://www.ickr.com /photos/semparadeiro/2296727106 /sizes/s/in/photostream/

Autora: Webmin. Licencia: BSD (cita). Procedencia: Elaboracin propia captura de pantalla de webmin.

39 de 39

16/10/12 15:17

También podría gustarte