170 likes | 320 Views
Funcionalidad del servicio de transferencia de archivos. Funcionalidad del servicio de transferencia de archivos. Características. Componentes y funcionamiento. Es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP ( Transmission
E N D
Funcionalidad del servicio de transferencia de archivos. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. • Características. Componentes y funcionamiento. 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. Para solucionar este problema son de gran utilidad aplicaciones como scp y sftp, incluidas en el paquete SSH, que permiten transferir archivos pero cifrando todo el tráfico. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. Funcionamiento: En el modelo, el intérprete de protocolo (IP) de usuario inicia la conexión de control en el puerto 21. Las órdenes FTP estándar las genera el IP de usuario y se transmiten al proceso servidor a través de la conexión de control. Las respuestas estándar se envían desde la IP del servidor la IP de usuario por la conexión de control como respuesta a las órdenes. Estas órdenes FTP especifican parámetros para la conexión de datos (puerto de datos, modo de transferencia, tipo de representación y estructura) y la naturaleza de la operación sobre el sistema de archivos (almacenar, recuperar, añadir, borrar, etc.). El proceso de transferencia de datos (DTP) de usuario u otro proceso en su lugar, debe esperar a que el servidor inicie la conexión al puerto de datos especificado (puerto 20 en modo activo o estándar) y transferir los datos en función de los parámetros que se hayan especificado. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. • - Protocolo FTP: El protocolo FTP (File Transfer Protocol) es una de las herramientas mas usadas entorno a la administración de portales web y tiene como principal función la transferencia de archivos. Esta transacción puede ser efectuada desde una LAN (Red de área local) o en una WAN (Red de Área Amplia). El protocolo FTP esta basado principalmente en la arquitectura Cliente-Servidor el cual consiste básicamente en un programa “Cliente” que realiza peticiones a otro programa “Servidor” el cual responde a su petición. Visto de otra forma podemos entenderlo como el equipo cliente que se conecta al servidor para descargar archivos desde el o para enviarle archivos. FTP hace uso del modelo TCP/IP y trabaja directamente sobre la capa de aplicación del antes mencionado. Así mismo el protocolo FTP hace uso de los puertos 20 y 21 para la comunicación y control de datos. • - Tipos de usuarios y accesos al servicio: Acceso anónimo y acceso autorizado. Usuarios FTP: Aquellos que disponen de una cuenta en la máquina que ofrece el servicio FTP. Usuarios Anónimos: usuarios cualesquiera, que al conectarse al servidor FTP, solo deben introducir una contraseña Simbólica. Solo tienen acceso a una parte limitada del sistema de archivos. • Acceso anónimo Los servidores FTP anónimos ofrecen sus servicios libremente a todos los usuarios, permiten acceder a sus archivos Sin necesidad de tener un 'USER ID' o una cuenta de usuario. Es la manera más cómoda fuera del servicio web de permitir que todo el mundo tenga acceso a cierta información sin que para ello el administrador de un sistema tenga que crear una cuenta para cada usuario. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. Si un servidor posee servicio 'FTP anonymous' solamente con teclear la palabra «anonymous», cuando pregunte por tu usuario tendrás acceso a ese sistema. No se necesita ninguna contraseña preestablecida, aunque tendrás que introducir una sólo para ese momento,normalmente se suele utilizar la dirección de correo electrónico propia. Solamente con eso se consigue acceso a los archivos del FTP, aunque con menos privilegios que un usuario normal. Normalmente solo podrás leer y copiar los archivos que sean públicos, así indicados por el administrador del servidor al que nos queramos conectar. • Acceso de usuario Si se desea tener privilegios de acceso a cualquier parte del sistema de archivos del servidor FTP, de modificación de archivos existentes, y de posibilidad de subir nuestros propios archivos, generalmente se suele realizar mediante una cuenta de usuario. En el servidor se guarda la información de las distintas cuentas de usuario que pueden acceder a él, de manera que para iniciar una sesión FTP debemos introducir una autentificación y una contraseña que nos identifica unívocamente. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. • - Configuración del servicio de transferencia de archivos. Permisos y cuotas. El protocolo FTP se desarrolló en entornos de tipo UNIX similares a los populares GNU/Linux. Por eso tenemos los permisos de ejecución, lectura y escritura, estableciendose tres tipos de usuarios: Propietario: Es normalmente la persona que ha creado o que ha subido el archivo al servidor FTP. Grupo: Se refiere a un grupo de usuarios al que probablemente pertenece el propietario. Otros: Son todos los demás usuarios anónimos o que no pertenecen al grupo indicado. Para establecer los permisos de escritura existe un algoritmo, el cual asigna valores al tipo de acceso que se quiere otorgar a cada tipo de usuario. 4=lectura 2= escritura 1= ejecución Los permisos se asignan acorde con la suma de los tipos ya descritos. Por ejemplo: 6 (4+2) = lectura y escritura 5 (4+1) = lectura y ejecución 3 (2+1) = escritura y ejecución 7 (4+2+1) = lectura, escritura y ejecución Las combinaciones se dan en el siguiente orden: propietario, grupo y usuarios. Por ejemplo: 755, otorga lectura,escritura y ejecución al propietario, y al grupo y otros le otorga los permisos de ejecución y lectura. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. Podemos establecer varios tipos de cuotas: Limite de velocidad: Básicamente podemos establecer el Ancho de Banda permitido para Descargas de Archivos alojados en el Servidor, El Ancho de banda Usado siempre Será El nuestro, y es lo que nos permite poder Descargar o Subir Archivos desde Internet a determinadas Velocidades Límite de conexiones: Límite de descarga/subida: Número de transferencias Simultáneas: Aquí es donde podemos establecer cual será la máxima cantidad de archivos que se estarán transfiriendo a la vez, se pueden transferir hasta 10 archivos al mismo tiempo. Limite de Descargas Simultaneas: Aquí estableceremos cuantas descargas son permitidas desde el Servidor, Si ingresamos el Número 0 no existirán límites (Número de descarga Ilimitadas), podemos ingresar cualquier otro número pero dejaremos el valor predeterminado, que es 0. • Límite para Subidas Simultaneas: Aquí básicamente se puede hacer lo mismo que en la anterior opción, salvo que en vez de configurar el Número Máximo de Descargas configuramos el de Subida, aquí tambien ingresamos el valor 0. Así no existirán límites a la hora de subir archivos. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. • Conexiones y modos: Conexión de control y conexión de datos. Modos activo y pasivo. Conexión de control: Para comenzar una sesión se debe utilizar un cliente FTP al cual se le mandan el nombre del host remoto y/o el login/password en caso de necesitarlo. Esta información se llama ''de control'' y se le manda al servidor remoto sobre una conexión TCP. Una vez que el servidor nos autoriza, crea otra conexión TCP para realizar la transmisión del fichero. Conexión de datos: La conexión de datos es la que se establece para transmitir el fichero. Si se han de transmitir varios ficheros se deberán establecer varias conexiones TCP, una por fichero como mínimo. Modos activo En modo Activo, el servidor siempre crea el canal de datos en su puerto 20, mientras que en el lado del cliente el canal de datos se asocia a un puerto aleatorio mayor que el 1024. Para ello, el cliente manda un comando PORT al servidor por el canal de control indicándole ese número de puerto, de manera que el servidor pueda abrirle una conexión de datos por donde se transferirán los archivos y los listados, en el puerto especificado. Lo anterior tiene un grave problema de seguridad, y es que la máquina cliente debe estar dispuesta a aceptar cualquier conexión de entrada en un puerto superior al 1024, con los problemas que ello implica si tenemos el equipo conectado a una red insegura como Internet, de hecho, los cortafuegos que se instalen en el equipo para evitar ataques seguramente rechazarán esas conexiones aleatorias. Para solucionar esto se desarrolló el modo pasivo. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. Modo Pasivo: Cuando el cliente envía un comando PASV sobre el canal de control, el servidor FTP le indica por el canal de control, el puerto (mayor a 1023 del servidor. Ejemplo:2040) al que debe conectarse el cliente. El cliente inicia una conexión desde el puerto siguiente al puerto de control (Ejemplo: 1036) hacia el puerto del servidor especificado anteriormente.1 Antes de cada nueva transferencia tanto en el modo Activo como en el Pasivo, el cliente debe enviar otra vez un comando de control (PORT o PASV, según el modo en el que haya conectado), y el servidor recibirá esa conexión de datos en un nuevo puerto aleatorio (si está en modo pasivo) o por el puerto 20 (si está en modo activo). En el protocolo FTP existen 2 tipos de transferencia en ASCII y en binarios Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. • - Tipos de transferencia de archivos: ASCII y Binario. • Tipo ASCII Adecuado para transferir archivos que sólo contengan caracteres imprimibles (archivos ASCII, no archivos resultantes de un procesador de texto), por ejemplo páginas HTML, pero no las imágenes que puedan contener. • Tipo Binario Este tipo es usado cuando se trata de archivos comprimidos, ejecutables para PC, imágenes, archivos de audio... Ejemplos de cómo transferir algunos tipos de archivo dependiendo de su extensión: Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. • - Clientes FTP : en línea de comandos, entornos “gráficos” y navegadores / exploradores. Comandos: desde un terminal podemos acceder por ejemplo: Entorno gráfico: Filezilla: FileZilla es un cliente de FTP que incluye todos los comandos y funciones que cabe esperar de un programa de estas características. GoFTP es un cliente FTP que usa tecnología especial de “sobrellenado de memoria intermedia” y comprensión sobre la marcha para conseguir velocidades 3 veces superiores a la de otros programas de FTP multitarea. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. Mediante Navegadores: Mediante navegadores podemos acceder a un servidor ftp, pero no podremos subir un archivo al servidor desde el Navegador, tan solo descargar. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. • - Monitorización y registro del servicio de transferencia de archivos. Para saber quién está conectado a su servidor vía FTP, en qué directorios se encuentran y qué archivos están cargando o descargando del servidor: • Vaya a Herramientas y utilidades > Sesiones Activas. Haga clic en la pestaña Sesiones FTP. Se mostrarán todas las sesiones, incluida la suya, así como los siguientes detalles: • Estado. Estado actual de la conexión FTP. • Nombre de usuario FTP. Nombre de usuario usado para acceder a la cuenta FTP. • Nombre de dominio. Dominio en el que el usuario FTP está conectado. • Ubicación actual. Directorio donde se encuentra el usuario FTP. • Nombre del Archivo. El nombre de archivo con el que se opera. • Velocidad. Velocidad de transferencias en kilo bites. • Progreso, %. Progreso de la operación de transferencia de archivo en porcentaje. • Dirección IP. Dirección IP desde la que se accede a la cuenta FTP. • Hora de acceso. Tiempo transcurrido desde que el usuario se conectó. • Tiempo de inactividad. Tiempo en que el usuario no estaba realizando ninguna acción en el panel de control aún y estando conectado. 3. Para actualizar la lista de sesiones FTP haga clic en Actualizar 4. Para finalizar la sesión marque la casilla respectiva y haga clic en Eliminar. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. • - Seguridad en FTP. El uso del FTP en Internet u otras redes poco fiables le expone a algunos riesgos de seguridad. Debe conocer estos riesgos para garantizar que su política de seguridad tiene previsto cómo minimizar estos riesgos. Es posible que el esquema de autorización sobre objetos no ofrezca suficiente protección cuando se ejecuta el FTP en el sistema.Por ejemplo, la autorización pública de los objetos puede ser *USE, pero desea utilizar la "seguridad de menú" para impedir que los usuarios accedan a dichos objetos. (La seguridad de menú impide a los usuarios realizar ninguna acción que no esté en sus opciones de menú). Como los usuarios de FTP no están restringidos a los menús, podrán leer todos los objetos del sistema.A continuación se proporcionan algunas opciones para controlar este riesgo de seguridad: • Aplique la seguridad completa de objetos de iSeries en el sistema (en otras palabras, cambie el modelo de seguridad del sistema de "seguridad de menú" a "seguridad de objetos"). Esta es la opción más segura. • Grabe programas de salida del FTP para restringir el acceso a los archivos que se puedan transferir por FTP. Estos programas de salida deben proporcionar una seguridad como mínimo equivalente a la seguridad del programa de menús. Es posible que la mayoría de usuarios deseen restringir aún más los controles de acceso al FTP. Esta opción sólo se aplica al FTP, no a otras interfaces como ODBC, DDM o DRDA.Nota:La autoridad *USE a un archivo permite al usuario descargar el archivo. La autoridad *CHANGE a un archivo permite al usuario cargar el archivo. Un hacker puede montar un ataque de "negativa de servicio" con el servidor FTP para inhabilitar perfiles de usuario en el sistema. Para ello, se realizan repetidos intentos de inicio de sesión con la contraseña incorrecta de un perfil de usuario, hasta que el perfil se inhabilita. Este tipo de ataque inhabilita el perfil de usuario si se alcanza un máximo de tres intentos de inicio de sesión. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. • Para evitar este riesgo, se deben analizar las concesiones que está dispuesto a hacer para aumentar la seguridad y minimizar el ataque, con la consiguiente disminución de facilidad de acceso para los usuarios. El servidor FTP normalmente pone un límite al valor de sistema QMAXSIGN para evitar que el hacker pueda realizar infinitos intentos para adivinar la contraseña y montar ataques de contraseña. A continuación se proporcionan algunas opciones pueden ser de gran ayuda: • Utilice un programa de salida de inicio de sesión del servidor FTP para rechazar las peticiones de inicio de sesión de los perfiles de usuario de cualquier sistema, y de los perfiles de usuario que no desee que tengan acceso al FTP. (Cuando se utiliza un programa de salida de este tipo, los intentos de inicio de sesión rechazados por el punto de salida de inicio de sesión del servidor de los perfiles de usuarios bloqueados no se cuentan en el recuento de QMAXSIGN del perfil). • Utilice un programa de salida de inicio de sesión del servidor FTP para limitar las máquinas cliente desde las que un perfil de usuario dado puede acceder al servidor FTP. Por ejemplo, si un usuario de Contabilidad tiene acceso al FTP, permita sólo el acceso al servidor FTP de este perfil de usuario en los sistemas que tengan la dirección IP en el departamento de Contabilidad. • Utilice un programa de salida de inicio de sesión del servidor FTP para registrar el nombre de usuario y la dirección IP de todos los intentos de inicio de sesión de FTP. Consulte estos registros periódicamente, y siempre que un perfil quede inhabilitado por sobrepasar el número máximo de intentos de contraseña, utilice la información de la dirección IP para identificar al responsable y tomar las medidas adecuadas. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. • - FTPS (FTP/SSL): FTPS Implícito. FTPS Explícito (FTPES) • FTPS (comúnmente referido como FTP/SSL) es un nombre usado para abarcar un número de formas en las cuales el software FTP puede realizar transferencias de ficheros seguras. Cada forma conlleva el uso de una capa SSL/TLS debajo del protocolo estándar FTP para cifrar los canales de control y/o datos. No debería confundirse con el protocolo de transferencia de ficheros SFTP, el cual suele ser usado con SSH. El uso más común de FTP y SSL es: • AUTH TLS o FTPS Explicito, nombrado por el comando emitido para indicar que la seguridad TLS es obligatoria. Este es el método preferido de acuerdo al RFC que define FTP sobre TLS. El cliente se conecta al puerto 21 del servidor y comienza una sesión FTP sin cifrar de manera tradicional, pero pide que la seguridad TLS sea usada y realiza la negociación apropiada antes de enviar cualquier dato sensible. • AUTH como está definido en RFC 2228. • FTPS Implícito es un estilo antiguo, pero todavía ampliamente implementado en el cual el cliente se conecta a un puerto distinto (como por ejemplo 990), y se realiza una negociación SSL antes de que se envíe cualquier comando FTP. Jesús Torres Cejudo
Funcionalidad del servicio de transferencia de archivos. • - Protocolo FXP (File eXchangeProtocol). FileeXchangeProtocol (FXP) es un método de transferencia de datos, a través del cual los datos se envían de un servidor FTP a otro sin pasar por un cliente intermedio. La comunicación convencional FTP consiste en un solo servidor y un solo cliente. Toda la transferencia de datos se realiza entre los dos. Durante una sesión FXP, un cliente mantiene conexiones estándares con dos servidores, dirigiendo cualquiera de los dos servidores que se conecte al otro para iniciar una transferencia de datos. Este método permite a un cliente con poco ancho de banda intercambiar datos entre dos servidores con mas ancho de banda sin el retraso asociado con la comunicación convencional FTP. A lo largo de este proceso, sólo el cliente es capaz de acceder a los recursos de los dos servidores. • FXP a través de SSL Algunos servidores FTP como glFTPD, RaidenFTPd y wzdftpd soportan la negociación de un canal de dato seguro entre dos servidores mediante cualquiera de las dos órdenes de extensión del protocolo FTP: CPSV o SSCN. Normalmente, un cliente realiza esto enviando CPSV en lugar de la orden PASV (modo pasivo), o enviando SSCN antes de iniciar las transferencias pasivas. No obstante, ambos métodos aún son susceptibles a los ataques Man-in the-middle, pues los dos servidores FTP no comprueban sus respectivos certificados SSL. Jesús Torres Cejudo