150 likes | 270 Views
UD 5 INSTALACION Y ADMINISTRACION DE SERVICIOS DE TRANSFERENCIA DE ARCHIVOS. Funcionalidad del servicio de transferencia de archivos. Características. Componentes y funcionamiento.
E N D
UD 5 INSTALACION Y ADMINISTRACION DE SERVICIOS DE TRANSFERENCIA DE ARCHIVOS Funcionalidad del servicio de transferencia de archivos. Luis Alfonso Sánchez Brazales
Características. Componentes y funcionamiento • 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. • Funcionamiento A diferencia de la mayoría de los protocolos utilizados en Internet, FTP requiere de múltiples puertos de red para funcionar correctamente. Cuando una aplicación cliente FTP inicia una conexión a un servidor FTP, abre el puerto 21 en el servidor — conocido como el puerto de comandos. Se utiliza este puerto para arrojar todos los comandos al servidor. Cualquier petición de datos desde el servidor se devuelve al cliente a través del puerto de datos. El número de puerto para las conexiones de datos y la forma en la que las conexiones son inicializadas varía dependiendo de si el cliente solicita los datos en modo activo o en modo pasivo. Luis Alfonso Sánchez Brazales
El protocolo FTP El objetivo del protocolo FTP es: • permitir que equipos remotos puedan compartir archivos • permitir la independencia entre los sistemas de archivo del equipo del cliente y del equipo del servidor • permitir una transferencia de datos eficaz El protocolo FTP El protocolo FTP (Protocolo de transferencia de archivos) es, como su nombre lo indica, un protocolo para transferir archivos. La implementación del FTP se remonta a 1971 cuando se desarrolló un sistema de transferencia de archivos (descrito en RFC141) entre equipos del Instituto Tecnológico de Massachusetts (MIT, Massachusetts Institute of Technology). Desde entonces, diversos documentos de RFC (petición de comentarios) han mejorado el protocolo básico, pero las innovaciones más importantes se llevaron a cabo en julio de 1973. Luis Alfonso Sánchez Brazales
Tipos de usuarios y accesos al servicio: Acceso anónimo y acceso autorizado 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. 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. Normalmente, se utiliza un servidor FTP anónimo para depositar grandes archivos que no tienen utilidad si no son transferidos a la máquina del usuario, como por ejemplo programas, y se reservan los servidores de páginas web (HTTP) para almacenar información textual destinada a la lectura en línea. Acceso autorizado 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 (en inglés: login) y una contraseña (en inglés: password) que nos identifica unívocamente. Luis Alfonso Sánchez Brazales
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, estableciéndose tres tipos de usuarios: Propietario, Grupo y Otros. • El Propietario es normalmente la persona que ha creado o que ha subido el archivo al servidor FTP. • El 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. Para cambiar los permisos, en Windows XP, basta con enviar el comando literalchmod 755 /, lo que permite que la carpeta raíz tenga los permisos ya descritos. Luis Alfonso Sánchez Brazales
Conexiones y modos: Conexión de control y conexión de datos. Modos activo y pasivo Modo 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. Luis Alfonso Sánchez Brazales
Conexiones y modos: Conexión de control y conexión de datos. Modos activo y pasivo 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. Ej:2040) al que debe conectarse el cliente. El cliente inicia una conexión desde el puerto siguiente al puerto de control (ej: 1036) hacia el puerto del servidor especificado anteriormente (ej: 2040).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 5 tipos de transferencia en ASCII y en binarios. Luis Alfonso Sánchez Brazales
Tipos de transferencia de archivos: ASCII y Binario Es importante conocer cómo debemos transportar un archivo a lo largo de la red. Si no utilizamos las opciones adecuadas podemos destruir la información del archivo. Por eso, al ejecutar la aplicación FTP, debemos acordarnos de utilizar uno de estos comandos (o poner la correspondiente opción en un programa con interfaz gráfica): 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: Luis Alfonso Sánchez Brazales
Clientes FTP : en línea de comandos, entornos “gráficos” y navegadores / exploradores • Cliente FTP basado en Web Un «cliente FTP basado en Web» no es más que un cliente FTP al cual podemos acceder a través de nuestro navegador web sin necesidad de tener otra aplicación para ello. El usuario accede a un servidor web (HTTP) que lista los contenidos de un servidor FTP. El usuario se conecta mediante HTTP a un servidor web, y el servidor web se conecta mediante FTP al servidor FTP. El servidor web actúa de intermediario haciendo pasar la información desde el servidor FTP en los puertos 20 y 21 hacia el puerto 80 HTTP que ve el usuario. Siempre hay momentos en que nos encontramos fuera de casa, no llevamos el ordenador portátil encima y necesitamos realizar alguna tarea urgente desde un ordenador de acceso público, de un amigo, del trabajo, la universidad, etc. Lo más común es que no estén instaladas las aplicaciones que necesitamos y en muchos casos hasta carecemos de los permisos necesarios para realizar su instalación. Otras veces estamos detrás de un proxy o cortafuegos que no nos permite acceder a servidores FTP externos. • Cliente FTP por comandos OPEN Con este comando se abre una sesión con el ftp seleccionado. Este comando no funcionaria sin previamente haber establecido conexión con el servidor FTP mediante la siguiente sintaxis: ftp 212.152.1.22 Pudiéndose sustituir la dirección por el nombre del ftp del dominio al que deseas acceder. CLOSE Como es evidente, con este comando se cierra sesión. GET Este comando probablemente es el más utilizado ya que es el que se utiliza para bajarte los ficheros del servidor remoto de FTP. Tienes que estar en el directorio del servidor remoto donde está el archivo que quieres recibir. Se copiará en el directorio en local en el que estés. get fichero.txt Luis Alfonso Sánchez Brazales
Clientes FTP : en línea de comandos, entornos “gráficos” y navegadores / exploradores PUT Este como el segundo es muy utilizado haciendo justo lo contrario, subiendo los ficheros al servidor de FTP. Los archivos de origen los toma del ordenador local, del directorio donde estés situado en local. Se suben al directorio remoto donde estés situado. put fichero.txt LCD Específica el directorio local sobre el que vamos a trabajar, es decir donde colocaremos los archivos que queremos compartir con el servidor remoto. CD Este comando actúa de la misma forma que en MS-DOS es decir, se utiliza para moverse a través de los directorios del servidor de FTP. LCD Tiene la misma función que el anterior pero este aplicado a tus directorios locales. LS Con este comando sacamos una lista de directorios y archivos encontrados en el servidor, actúa de la misma forma que en el interprete de comandos en Linux. DELETE borra ficheros y directorios. APPEND Permite reanudar una descarga que por cualquier motivo haya sido interrumpida. Este comando puede resultar muy útil cuando intentemos descargas archivos bastante pesados, que tarden mucho tiempo, ya que puedes reanudar la descarga en el punto donde la dejaste. MPUT Este comando nos permite subir varios archivos a la vez al servidor en remoto, es bastante útil cuando se necesitan subir varios archivos. MGET Hace la operación inversa que el anterior, es decir, descarga varios archivos del servidor en remoto, a la vez. Luis Alfonso Sánchez Brazales
Clientes FTP : en línea de comandos, entornos “gráficos” y navegadores / exploradores USER Con este comando cambiamos de usuario e iniciamos sesión con otro usuario distinto. BYE Por ultimo hay un comando que cierra la sesión y sale del programa de ftp de forma que todas las sesiones abiertas se cierran. Todos estos comandos se utilizan en la consola, es decir en el modo texto de Linux. En MS-DOS (y la consola de comandos de Windows) funcionan prácticamente todos los comandos de la misma forma, por lo que si no tenéis Linux y queréis probar tan sólo tendréis que instalaros un cliente ftp para MS-DOS en vuestro sistema. Generalmente los sistemas Windows tienen ya instalado el cliente FTP por línea de comandos, por lo que lo más normal es que no necesites instalar nada. • Clientes FTP por entornos gráficos Es muy fácil de usar gracias a su diseño en dos paneles; en uno de los cuáles se muestra la máquina local (cliente) y en el otro la remota (servidor). Entre otras características, vale destacar que soporta también el protocolo SFTP, y transferencias simultáneas múltiples. Luis Alfonso Sánchez Brazales
Monitorización y registro del servicio de transferencia de archivos Hay muchísima herramientas para monitorear el servicio FTP en nuestro caso veremos las características de el programa WatchFTP. WatchFTPes un programa Windows que monitoriza un sitio FTP en busca de ficheros nuevos y modificados y los descarga de forma automática a una carpeta local de Windows. Puede ejecutar un script (fichero Batch), o enviar un email notificando la descarga. Algunas de las potentes funcionalidades de WatchFTPson: • Puede funcionar sin supervisión como un Servicio de Windows (Se ejecuta sin supervisión, mientras Usted duerme - 24/7) • Soporta FTP Seguro (Proteja sus Datos y Contraseñas) • Envía notificaciones vía email informando de los ficheros descargados (No hay necesidad de comprobar el directorio continuamente, Usted recibe las notificaciones por email) • Ejecuta un script (fichero batch) por cada fichero descargado (Conecte sus sistemas de empresa - importe el fichero nuevo) • Programación Semanal Flexible (Permite mantener su Servidor FTP desconectado cuando no sea necesario o requiera mantenimiento) • Puede monitorizar múltiples sitios FTP (Múltiples "tareas", cada una con su propia, y flexible, configuración) • Opción de Eliminar los Ficheros después de la descarga (Sus clientes cargan los ficheros en sus "in-box", WatchFTP realiza las descargas y la "limpieza") Luis Alfonso Sánchez Brazales
Seguridad en FTP • Revisa regularmente tu computadora con un antivirus actualizado • Evita guardar las claves de tu FTP en los programas FTP. • Ingresa las claves a mano cada vez que te conectes. (Filezilla por ejemplo te permite configurar el ingreso de manera que siempre te pregunte la contraseña) • Instala las últimas actualizaciones de seguridad para aplicaciones como Joomla, WordPress, OSCommerce, Drupal, etcétera. • Revisa los permisos de las carpetas de tu sitio: así como las carpetas y archivos de Windows tienen permisos (el famoso “Solo lectura” que te permite sólo leer sin modificar) en Linux también podes activar tres tipos de permisos: Leer, Escribir y Ejecutar. Tu puedes definirlos en tu FTP de manera de evitar dar permisos ampliados. • Limita los accesos remotos a tu FTP. Cada usuario FTP que creas es una nueva puerta de entrada a tus archivos desde equipos remotos que pueden ser no seguros: en esas operaciones tus colaboradores sin saberlo pueden estar subiendo malwares que afecten a tu sitio. Luis Alfonso Sánchez Brazales
FTPS (FTP/SSL): FTPS Implícito. FTPS Explícito (FTPES) La principal diferencia entre FTP y FTPS es la seguridad.: Cuando se acceda a su cuenta de hospedaje web a través de FTP, usted necesita enviar su nombre de usuario y contraseña de FTP a través de Internet. FTP estándar no cifra ninguno de estos, por lo tanto, alguien podría interceptar su petición de conexión y ver la información de inicio de sesión FTP. FTPS FTPS añade una capa de seguridad al conectarse a su cuenta de FTP mediante el cifrado de la contraseña para que si alguien le sucede a interceptar a su solicitud de inicio de sesión a través de Internet, la información que reciben sería inútil. FTPS se conecta a su cuenta de hospedaje web de "implícitamente", se opuso a la FTPES que es un "explícito" de conexión (ver más abajo). FTPES FTPES representa FTP sobre TLS / SSL explícito. Por lo que yo sé, esta es la forma más segura de conexión FTP, ya sea como un combo de clave pública o privada se utiliza para cifrar los datos. Este es el mismo proceso que se utiliza cuando usted realiza una compra en línea en un "seguro" sitio web. Si usted no utiliza un sitio web seguro, puede ser que también acaba de publicar toda su información personal en Internet para que todos la vean. Luis Alfonso Sánchez Brazales
Protocolo FXP (File eXchangeProtocol) Es un método de transferencia de datos que utiliza FTP para transferir datos desde un servidor remoto a otro ( entre servidores ) sin enrutamiento estos datos a través de la conexión del cliente. FTP convencional consiste en un único servidor y un solo cliente , toda la transmisión de datos se realiza entre estos dos. En la sesión de FXP, el cliente mantiene una conexión FTP estándar a dos servidores, y se puede dirigir cualquiera de servidor para conectarse a la otra para iniciar una transferencia de datos. La ventaja de usar FXP a través de FTP es evidente cuando un servidor de alto ancho de banda requiere recursos de otro servidor de alto ancho de banda, pero sólo un cliente de bajo ancho de banda, como un administrador de la red de trabajo fuera del lugar, tiene la autoridad para acceder a los recursos de los ambos servidores. Luis Alfonso Sánchez Brazales