SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA ALUMNO: 27 AGOSTO DEL 2013 CESAR ZUÑIGA S. FACULTAD SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES ASIGNATURA: TECNOLOGIA CLIENTE SERVIDOR TÍTULO: S.C.S Y EL USO DEL INTERNET (SERVIDOR WEB) AUTOR: CÉSAR ZÚÑIGA S. PROFESOR: ING. FRANCISCO ESPINOZA FECHA DE ENTREGA 27 Agosto del 2013 FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 1 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA ALUMNO: 27 AGOSTO DEL 2013 CESAR ZUÑIGA S. Cliente-servidor La arquitectura cliente-servidor es un modelo de aplicación distribuida en el que las tareas se reparten entre los proveedores de recursos o servicios, llamados servidores, y los demandantes, llamados clientes. Un cliente realiza peticiones a otro programa, el servidor, quien le da respuesta. Esta idea también se puede aplicar a programas que se ejecutan sobre una sola computadora, aunque es más ventajosa en un sistema operativo multiusuario distribuido a través de una red de computadoras. En esta arquitectura la capacidad de proceso está repartida entre los clientes y los servidores, aunque son más importantes las ventajas de tipo organizativo debidas a la centralización de la gestión de la información y la separación de responsabilidades, lo que facilita y clarifica el diseño del sistema. La separación entre cliente y servidor es una separación de tipo lógico, donde el servidor no se ejecuta necesariamente sobre una sola máquina ni es necesariamente un sólo programa. Los tipos específicos de servidores incluyen los servidores web, los servidores de archivo, los servidores del correo, etc. Mientras que sus propósitos varían de unos servicios a otros, la arquitectura básica seguirá siendo la misma. Una disposición muy común son los sistemas multicapa en los que el servidor se descompone en diferentes programas que pueden ser ejecutados por diferentes computadoras aumentando así el grado de distribución del sistema. La arquitectura cliente-servidor sustituye a la arquitectura monolítica en la que no hay distribución, tanto a nivel físico como a nivel lógico. La red cliente-servidor es aquella red de comunicaciones en la que todos los clientes están conectados a un servidor, en el que se centralizan los diversos recursos y aplicaciones con que se cuenta; y que los pone a disposición de los clientes cada vez que estos son solicitados. Esto significa que todas las gestiones que se realizan se concentran en el servidor, de manera que en él se disponen los requerimientos provenientes de los clientes que tienen prioridad, los archivos que son de uso público y los que son de uso restringido, los archivos que son de sólo lectura y los que, por el contrario, pueden ser modificados, etc. Este tipo de red puede utilizarse conjuntamente en caso de que se esté utilizando en una red mixta. FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 2 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA ALUMNO: 27 AGOSTO DEL 2013 CESAR ZUÑIGA S. El Internet El uso de Internet ha alcanzado en la actualidad una gran difusión, que muy probablemente está destinada a aumentar. Permite acceder, a muy bajo costo, a innumerables noticias e informaciones útiles. Para muchos tipos de trabajo se ha convertido en un instrumento indispensable. A la red de Internet está asociado el correo electrónico, que permite una comunicación rápida con cualquier parte del mundo. Internet está concebido como una red abierta y libre, en la que no se opera una selección de contenidos. Solo aquéllos que constituyen un delito grave son objeto de control y persecución por parte de la policía. Ni el bien ni el mal son específicos de Internet. Si se debiera señalar algo realmente específico de Internet sería la posibilidad de hacer llegar el bien a muchas personas, sin la necesidad de movilizar grandes recursos económicos y de personal, haciendo así posible la intervención a gran escala de personas o grupos de recursos modestos, que hasta ahora no habían podido intervenir positivamente en el mundo de la opinión pública. Es verdad que, con la misma escasez de recursos, se puede difundir el mal, pero eso no es novedad, porque el mal ya se hace abundantemente a través de otros medios de comunicación. El problema ético de Internet es el problema de su recto uso o, en otras palabras, el de la formación y la virtud necesarias para usarlo rectamente, tanto por parte de quien introduce contenidos en la red como del usuario. Como primer apunte podríamos señalar que hacer un buen uso de Internet sería acceder a él siempre para algo determinado. Es poco razonable conectarse a Internet sin saber qué se quiere hacer, sólo porque se tiene tiempo libre o porque se está cansado y se piensa descansar navegando. La actitud de conectarse sin una finalidad precisa y justa, sólo para curiosear, tiene ya algo éticamente negativo y fácilmente puede dar lugar a males más graves. Internet es una puerta abierta a un mundo atractivo y fascinante, con una fuerte influencia formativa; pero no todo lo que está al otro lado de la puerta es saludable, sano y verdadero. Internet puede enriquecer nuestras vidas más allá de los sueños de generaciones anteriores y capacitarnos para que, a su vez, enriquezcamos la vida de los demás. FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 3 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN 27 AGOSTO DEL 2013 FECHA: PROFESOR: ING. FRANCISCO ESPINOZA ALUMNO: CESAR ZUÑIGA S. Servidores Web Un servidor web o servidor HTTP es un programa informático que procesa una aplicación del lado del servidor realizando conexiones bidireccionales y/o unidireccionales y síncronas o asíncronas con el cliente generando o cediendo una respuesta en cualquier lenguaje o Aplicación del lado del cliente. El código recibido por el cliente suele ser compilado y ejecutado por un navegador web. Para la transmisión de todos estos datos suele utilizarse algún protocolo. Generalmente se utiliza el protocolo HTTP para estas comunicaciones, perteneciente a la capa de aplicación del modelo OSI. El término también se emplea para referirse al ordenador que ejecuta el programa. Un servidor web opera mediante el protocolo HTTP, de la capa de aplicación del Modelo OSI. Al protocolo HTTP se le asigna habitualmente el puerto TCP 80. Las peticiones al servidor suelen realizarse mediante HTTP utilizando el método de petición GET en el que el recurso se solicita a través de la url al servidor web. El navegador por medio de la interfaz de usuario permite al usuario realizar una o varias peticiones web. La interfaz de usuario o entorno de usuario es el conjunto de elementos del navegador que permiten realizar la petición de forma activa. Una petición Web no sólo puede ser realizada mediante un navegador sino con cualquier herramienta habilitada para tal fin, como una consola de comandos Telnet. Elementos del entorno de usuario más comunes en navegadores Web visuales: Nombre Hipervínculo enlace o link Descripción Es una porción de contenido Web, texto, imagen y otros elementos, que enlaza con una dirección Web. Al pulsar un hipervínculo el navegador genera una petición GET automática a la dirección URL de dicho link. Al realizar el envío satisfactorio de los datos de un formulario, el navegador Formulario web Web genera una petición GET o POST (comúnmente POST) automática a la par que envía los datos al servidor. Barra de direcciones Todos los navegadores incluyen una barra de direcciones mediante la cual puede accederse manualmente a cualquier dirección URL, de modo que el navegador generará una petición GET automática a dicha URL cada vez que el usuario lo desee. Script activo o Cualquier aplicación Javascript tiene acceso al estado del navegador, cómo FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 4 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA pasivo ALUMNO: 27 AGOSTO DEL 2013 CESAR ZUÑIGA S. puede modificar los datos que describen tal estado, de forma pasiva (sin medio de la intervención del usuario) o de forma activa (mediante alguna acción del usuario). Funcionamiento Servidor El Servidor web se ejecuta en un ordenador manteniéndose a la espera de peticiones por parte de un cliente (un navegador web) y que responde a estas peticiones adecuadamente, mediante una página web que se exhibirá en el navegador o mostrando el respectivo mensaje si se detectó algún error. A modo de ejemplo, al teclear www.wikipedia.org en nuestro navegador, éste realiza una petición HTTP al servidor de dicha dirección. El servidor responde al cliente enviando el código HTML de la página; el cliente, una vez recibido el código, lo interpreta y lo exhibe en pantalla. Como vemos con este ejemplo, el cliente es el encargado de interpretar el código HTML, es decir, de mostrar las fuentes, los colores y la disposición de los textos y objetos de la página; el servidor tan sólo se limita a transferir el código de la página sin llevar a cabo ninguna interpretación de la misma. Además de la transferencia de código HTML, los Servidores web pueden entregar aplicaciones web. Éstas son porciones de código que se ejecutan cuando se realizan ciertas peticiones o respuestas HTTP. Hay que distinguir entre: • • Aplicaciones en el lado del cliente: el cliente web es el encargado de ejecutarlas en la máquina del usuario. Son las aplicaciones tipo Java "applets" o Javascript: el servidor proporciona el código de las aplicaciones al cliente y éste, mediante el navegador, las ejecuta. Es necesario, por tanto, que el cliente disponga de un navegador con capacidad para ejecutar aplicaciones (también llamadas scripts). Comúnmente, los navegadores permiten ejecutar aplicaciones escritas en lenguaje javascript y java, aunque pueden añadirse más lenguajes mediante el uso de plugins. Aplicaciones en el lado del servidor: el servidor web ejecuta la aplicación; ésta, una vez ejecutada, genera cierto código HTML; el servidor toma este código recién creado y lo envía al cliente por medio del protocolo HTTP. FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 5 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN 27 AGOSTO DEL 2013 FECHA: PROFESOR: ING. FRANCISCO ESPINOZA CESAR ZUÑIGA S. ALUMNO: Las aplicaciones de servidor muchas veces suelen ser la mejor opción para realizar aplicaciones web. La razón es que, al ejecutarse ésta en el servidor y no en la máquina del cliente, éste no necesita ninguna capacidad añadida, como sí ocurre en el caso de querer ejecutar aplicaciones javascript o java. Así pues, cualquier cliente dotado de un navegador web básico puede utilizar este tipo de aplicaciones. El hecho de que HTTP y HTML estén íntimamente ligados no debe dar lugar a confundir ambos términos. HTML es un lenguaje de marcas y HTTP es un "protocolo". Aplicación del lado del Servidor Una aplicación del lado del servidor es cualquier programa o conjunto de instrucciones diseñadas con la finalidad de que un Servidor Web las procese para realizar alguna acción. Las aplicaciones del lado del servidor están escritas mediante algún lenguaje de programación, entre los que destacan: Lenguaje Sistema operativo Última versión estable PHP Multiplataforma 5.3.5 ASP.Net Windows (Algunas versiones) 4.0 Perl Multiplataforma 5.12.3 Python Multiplataforma 3.2.0 Ruby Multiplataforma 1.9.3-p125 El 75% de las aplicaciones del lado del servidor están escritas en PHP, seguido de ASP y las demás opciones usadas de forma alternativa y muy casual.2 En 2009 Node.js fue creado por Ryan Dahl, abriendo públicamente la oportunidad de usar javascript del lado del servidor. Evento que revoluciona la web, y da inicio a una nueva era del desarrollo en internet. Node.js, dado a sus usuarios, programadores web de todo el mundo, está creciendo como la mejor opción para desarrollo de aplicaciones del lado del servidor, desplazando lenguajes tradicionales en esta tarea. Node.js trabaja sobre el rápido motor V8 que usa Google Chrome para la interpretación de javascript. 3 FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 6 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA ALUMNO: 27 AGOSTO DEL 2013 CESAR ZUÑIGA S. Servidor Web Local Un Servidor Web Local es aquel Servidor Web que reside en una red local al equipo de referencia. El Servidor web Local puede estar instalado en cualquiera de los equipos que forman parte de una red local. Es por tanto obvio, que todos los Servidores Web, son locales a la red local en la que se encuentran, o como mínimo, locales al sistema en el que están instalados. Cuando un servidor Web se encuentra instalado en el mismo equipo desde el cual se desea acceder puede utilizarse la dirección de Loopback, 127.0.0.1 en Ipv4 y ::1 en Ipv6. El puerto TCP 80 se obvia. Los archivos se almacenan en un directorio determinado por la configuración, generalmente modificable. Existen numerosas aplicaciones que facilitan la instalación automática de servidores web Apache y aplicaciones adicionales como Mysql y PHP (entre otros), de forma conjunta, como XAMPP, JAMP o EasyPHP. Estas aplicaciones reciben el nombre de LAMP cuando se instalan en plataformas Linux, WAMP en sistemas Windows y MAMP en sistemas Apple Macintosh. Software Algunos servidores web importantes son: • • • • • Nginx Apache Internet Information Services (IIS) Cherokee Tomcat Otros servidores, más simples pero más rápidos, son: • • lighttpd thttpd FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 7 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA ALUMNO: 27 AGOSTO DEL 2013 CESAR ZUÑIGA S. Características de un servidor web Cuando contratamos un servidor dedicado (o cualquier otro plan de hosting, pero especialmente un servidor dedicado), es muy importante elegir uno cuyas características de hardware cumplan con todos los requisitos que necesiten nuestros proyectos web. Básicamente, las principales características en las que debemos fijarnos a la hora de contratar un servidor web son las siguientes: - Procesador: Seguramente nos darán a elegir entre intel o AMD, entre núcleo, doble núcleo, 4 núcleos, etc. Aquí sin ser un experto os recomendaría lo siguiente (por experiencia propia). Si vuestro servidorweb no va a ser utilizado para vender hosting, ni vais a instalar VPS en él, puede bastar un modelo normalito, sin excesos. - Memoria RAM: Importante no quedarse corto. Cuando la RAM se agota, se tira de memoria virtual (disco duro) y se ralentiza todo, pudiendo incluso colapsar el servidor y provocar caída de servicios en el mismo. Opino que 1GB es lo mínimo, pero mejor 2GB para ir sueltos. - Modelo de disco duro: nos indicará su velocidad y su rendimiento. Que no nos pongan un disco pelotero, preguntad marca y modelo, creedme que a veces dan gato por liebre. Hay más factores a tener en cuenta, pero para los que no somos expertos en hardware creo que con tener en cuenta estos es más que suficiente. Seguramente tendremos nuestro servidor alojado en un centro de datos, por lo que del mantenimiento se ocuparán ellos. Comparad planes de hosting en varios proveedores, comparad el precio de los servidores dedicados y comprobad aquel que ofrece merjor relación calidadprecio. Y mi recomendación final, contratad un servidor dedicado que podáis pagar mes a mes. Así, al menos durante los primeros meses, si no os convence, siempre podéis migraros a otro proveedor de hosting. Actualización: Aprovechando la oferta en servidores virtuales y servidores cloud, aquí os dejo este pequeño script que os ayudará a calcular el precio de un servidor dedicado. Como podéis observar, por menos de 30€ al mes podéis disfrutar de un servidor propio con todas las garantías, totalmente administrado y con tráfico ilimitado y panel de control integrado FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 8 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA ALUMNO: 27 AGOSTO DEL 2013 CESAR ZUÑIGA S. CARACTERISTICAS DEL SISTEMA OPERATIVO Características de los sistemas operativos En general, se puede decir que un Sistema Operativo tiene las siguientes características: • Conveniencia. Un Sistema Operativo hace más conveniente el uso de una computadora. • Eficiencia. Un Sistema Operativo permite que los recursos de la computadora se usen de la manera más eficiente posible. • Habilidad para evolucionar. Un Sistema Operativo deberá construirse de manera que permita el desarrollo, prueba o introducción efectiva de nuevas funciones del sistema sin interferir con el servicio. • Encargado de administrar el hardware. El Sistema Operativo se encarga de manejar de una mejor manera los recursos de la computadora en cuanto a hardware se refiere, esto es, asignar a cada proceso una parte del procesador para poder compartir los recursos. • Relacionar dispositivos (gestionar a través del kernel). El Sistema Operativo se debe encargar de comunicar a los dispositivos periféricos, cuando el usuario así lo requiera. • Organizar datos para acceso rápido y seguro. • Manejar las comunicaciones en red. El Sistema Operativo permite al usuario manejar con alta facilidad todo lo referente a la instalación y uso de las redes de ordenadores. • Procesamiento por bytes de flujo a través del bus de datos. • Facilitar las entradas y salidas. Un Sistema Operativo debe hacerle fácil al usuario el acceso y manejo de los dispositivos de Entrada/Salida de la computadora. Funciones de los Sistemas Operativos. • Interpreta los comandos que permiten al usuario comunicarse con el ordenador. • Coordina y manipula el hardware de la computadora, como la memoria, las impresoras, las unidades de disco, el teclado o el ratón. • Organiza los archivos en diversos dispositivos de almacenamiento, como discos flexibles, discos duros, discos compactos o cintas magnéticas ¿Qué es el DNS? Domain Name System o DNS (en español: sistema de nombres de dominio) es un sistema de nomenclatura jerárquica para computadoras, servicios o cualquier recurso conectado a Internet o a una red privada. Este sistema asocia información variada con nombres de dominios asignado a cada uno de los participantes. Su función más importante, es traducir (resolver) nombres inteligibles para los humanos en identificadores binarios asociados con los equipos conectados a la red, esto con el propósito de poder localizar y direccionar estos equipos mundialmente. El servidor DNS utiliza una base de datos distribuida y jerárquica que almacena información asociada a nombres de dominio en redes como Internet. Aunque como base de datos el DNS es capaz de asociar diferentes tipos de información a cada nombre, los usos más comunes son la asignación de nombres de dominio a direcciones IP y la localización de los servidores de correo electrónico de cada dominio. FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 9 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA ALUMNO: 27 AGOSTO DEL 2013 CESAR ZUÑIGA S. La asignación de nombres a direcciones IP es ciertamente la función más conocida de los protocolos DNS. Por ejemplo, si la dirección IP del sitio FTP de prox.mx es 200.64.128.4, la mayoría de la gente llega a este equipo especificando ftp.prox.mx y no la dirección IP. Además de ser más fácil de recordar, el nombre es más fiable. La dirección numérica podría cambiar por muchas razones, sin que tenga que cambiar el nombre. • Los Clientes DNS: Un programa cliente DNS que se ejecuta en la computadora del usuario y que genera peticiones DNS de resolución de nombres a un servidor DNS (Por ejemplo: ¿Qué dirección IP corresponde a nombre.dominio?); • Los Servidores DNS: Que contestan las peticiones de los clientes. Los servidores recursivos tienen la capacidad de reenviar la petición a otro servidor si no disponen de la dirección solicitada. • Y las Zonas de autoridad, porciones del espacio de nombres de dominio que almacenan los datos. Cada zona de autoridad abarca al menos un dominio • y posiblemente sus subdominios, si estos últimos no son delegados a otras zonas de autoridad. Internet Explorer 9 ventajas: -Un navegador gratuito y preinstalado en windows XP,Vista y 7 -detecta muy bien los malwares -tiene más de 1.700 complementos (lo que lo hace muy compatible) -y tiene gran compatibilidad con páginas antiguas -navegación por pestañas (algo moderno para el pasado ) -navegación privada pero no tanto desventajas: - Mucha inestabilidad (mayor que incluso IE7) - Regularmente lento (sin aceleradores ni web slices) -No es posible borrar la caché,solo el historial (dejando poder ver el historial con CMD)- Configuración compleja y en algunos casos innecesaria Google Chrome Ventajas: - Su interfaz es agradable y solo tiene lo escencial por lo cual hay un gran espacio de pantalla - Si abres una pestaña nueva te aparece las 9 paginas q mas visitas -Un poco mas rápido - Consume menos recursos de la computadora que mozilla firefox - Interacción de la barra de estado con el mouse - Busca y navega Internet desde una sola barra -navegador incognito Desventajas -No tiene marcadores dinamicos -Ocupa gran cantidad de memoria RAM -Al llenar un campo de texto varias veces, como el de los numeros al enviar mensajes de texto desde la web, no aparecen los ultimos (o primeros) numeros -A veces la barra FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 10 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA ALUMNO: 27 AGOSTO DEL 2013 CESAR ZUÑIGA S. puede aparecer con colores o no-normal -A veces se tarda en cambiar del explorador a algun otro programa Mozilla Firefox ventajas: -Posibilidad de restaurar la sesión -Gran velocidad - Informacion del sitio web, instantánea -Marcar paginas con un simple click -tiene premios internacionales ( http://www.mozilla-europe.org/es/pressroom/awards/ ) - tiene mas de 6.000 temas gran cobertura y bloqueo de Malwares -velocidad en constante aumento - navegador incognito Desventajas: -Mientras mas extensiones le instales, mas lento será, y puede causar algunos problemas. -Si se cierra una sesión de forma inesperada, Firefox la restaurá sin preguntar, sin dar opción de elegir entre Restaurar tus pestañas o ir a tu página de inicio. - Si no instalas temas es poco intuitivo - bloquea algunas páginas muy antiguas o sin SSL seguro Safari 5 Ventajas: - Según algunos estudios, Safari es el navegador más rápido para la carga de CSS (lo que permite una rápida visualización de un sitio web). Safari está disponible tanto para Mac como para windows. - El navegador es muy accesible y tiene una interfaz Simple Desventajas: -Tiene Poca cuota de mercado -no tiene una tienda de aplicaciones (tal como Google Chrome y Firefox) -No todos los sitios web estan optimizados para el navegador (lo que daría mas de un incoveniente) Opera Browser Ventajas: -Mejor sistema de "recuperación de pestañas" -capacidad de tomar notas en el propio navegador -Opción de bloqueo de publicidad incluido -Tiene función de descargas bittorrent -Mail y Chat Incluido en el navegador en sí Desventajas: FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 11 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA ALUMNO: 27 AGOSTO DEL 2013 CESAR ZUÑIGA S. -Al instalarlo, (posiblemente) se haga navegador por defecto automáticamente -Muy Pocos widgets (solo de la compañia del Navegador) -Pocas extensiones, sin mucha variedad -No permite modificar el navegador (la ventana) • K-Meleon Browser Ventajas: -Tiene una velocidad de inicio similar a Google Chrome -Su interfaz es similar a Mozilla Firefox (3.6) -Consume poca memoria RAM -Es sencillo -Pesa pocos MB Tiene Versón portable oficial Desventajas: -Tiene el motor de Mozilla Firefox, pero des-actualizado (v1.5.4) -No tiene muchas Extensiones -No tiene demasiados temas -No tiene una "cuota de mercado" amplia, lo que no le permite ser "muy" compatibles con ciertos sitios web File Transfer Protocol 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. 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. FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 12 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA ALUMNO: 27 AGOSTO DEL 2013 CESAR ZUÑIGA S. El Modelo FTP El siguiente modelo representa el diagrama de un servicio FTP. 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 PI 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 el PI del servidor al PI 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. Vemos también en el diagrama que la comunicación entre cliente y servidor es independiente del sistema de archivos utilizado en cada computadora, de manera que no importa que sus sistemas operativos sean distintos, porque las entidades que se comunican entre sí son los PI y los DTP, que usan el mismo protocolo estandarizado: el FTP. También hay que destacar que la conexión de datos es bidireccional, es decir, se puede usar simultáneamente para enviar y para recibir, y no tiene por qué existir todo el tiempo que dura la conexión FTP. Pero tenía en sus comienzos un problema, y era la localización de los servidores en la red. Es decir, el usuario que quería descargar algún archivo mediante FTP debía conocer en qué máquina estaba ubicado. La única herramienta de búsqueda de información que existía era Gopher, con todas sus limitaciones. Primer buscador de información Gopher significa 'lanzarse sobre' la información. Es un servicio cuyo objetivo es la localización de archivos a partir de su título. Consiste en un conjunto de menús de recursos ubicados en diferentes máquinas que están intercomunicadas. Cada máquina sirve una área de información, pero su organización interna permite que todas ellas funcionen como si se tratase de una sola máquina. El usuario navega a través de estos menús hasta localizar la información buscada, y desconoce exactamente de qué máquina está descargando dicha información. Con la llegada de Internet, los potentes motores de búsqueda (Google) dejaron el servicio Gopher, y la localización de los servidores FTP dejó de ser un problema. En la actualidad, cuando el FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 13 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA ALUMNO: 27 AGOSTO DEL 2013 CESAR ZUÑIGA S. usuario se descarga un archivo a partir de un enlace de una página web no llega ni a saber que lo está haciendo desde un servidor FTP. El servicio FTP ha evolucionado a lo largo del tiempo y hoy día es muy utilizado en Internet, en redes corporativas, Intranets, etc. Soportado por cualquier sistema operativo, existe gran cantidad de software basado en el protocolo FTP. Servidor FTP Un servidor FTP es un programa especial que se ejecuta en un equipo servidor normalmente conectado a Internet (aunque puede estar conectado a otros tipos de redes, LAN, MAN, etc.). Su función es permitir el intercambio de datos entre diferentes servidores/ordenadores. Por lo general, los programas servidores FTP no suelen encontrarse en los ordenadores personales, por lo que un usuario normalmente utilizará el FTP para conectarse remotamente a uno y así intercambiar información con él. Las aplicaciones más comunes de los servidores FTP suelen ser el alojamiento web, en el que sus clientes utilizan el servicio para subir sus páginas web y sus archivos correspondientes; o como servidor de backup (copia de seguridad) de los archivos importantes que pueda tener una empresa. Para ello, existen protocolos de comunicación FTP para que los datos se transmitan cifrados, como el SFTP (Secure File Transfer Protocol). Cliente FTP Cuando un navegador no está equipado con la función FTP, o si se quiere cargar archivos en un ordenador remoto, se necesitará utilizar un programa cliente FTP. Un cliente FTP es un programa que se instala en el ordenador del usuario, y que emplea el protocolo FTP para conectarse a un servidor FTP y transferir archivos, ya sea para descargarlos o para subirlos. Para utilizar un cliente FTP, se necesita conocer el nombre del archivo, el ordenador en que reside (servidor, en el caso de descarga de archivos), el ordenador al que se quiere transferir el archivo (en caso de querer subirlo nosotros al servidor), y la carpeta en la que se encuentra. Algunos clientes de FTP básicos en modo consola vienen integrados en los sistemas operativos, incluyendo Microsoft Windows, DOS, GNU/Linux y Unix. Sin embargo, hay disponibles clientes con opciones añadidas e interfaz gráfica. Aunque muchos navegadores tienen ya integrado FTP, es más confiable a la hora de conectarse con servidores FTP no anónimos utilizar un programa cliente. FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 14 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA ALUMNO: 27 AGOSTO DEL 2013 CESAR ZUÑIGA S. 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 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 (en inglés: login) y una contraseña (en inglés: password) que nos identifica unívocamente. 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 FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 15 de 16 SISTEMASADQUISICIÓNTRANSMISIÓN FECHA: PROFESOR: ING. FRANCISCO ESPINOZA 27 AGOSTO DEL 2013 ALUMNO: CESAR ZUÑIGA S. 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. Al disponer de un cliente FTP basado en Web podemos acceder al servidor FTP remoto como si estuviéramos realizando cualquier otro tipo de navegación web. A través de un cliente FTP basado en Web podrás, crear, copiar, renombrar y eliminar archivos y directorios. Cambiar permisos, editar, ver, subir y descargar archivos, así como cualquier otra función del protocolo FTP que el servidor FTP remoto permita. Acceso de invitado El acceso sin restricciones al servidor que proporcionan las cuentas de usuario implica problemas de seguridad, lo que ha dado lugar a un tercer tipo de acceso FTP denominado invitado (guest), que se puede contemplar como una mezcla de los dos anteriores. La idea de este mecanismo es la siguiente: se trata de permitir que cada usuario conecte a la máquina mediante su login y su password, pero evitando que tenga acceso a partes del sistema de archivos que no necesita para realizar su trabajo, de esta forma accederá a un entorno restringido, algo muy similar a lo que sucede en los accesos anónimos, pero con más privilegios. Modos de conexión del cliente FTP FTP admite dos modos de conexión del cliente. Estos modos se denominan activo (o Estándar, o PORT, debido a que el cliente envía comandos tipo PORT al servidor por el canal de control al establecer la conexión) y pasivo (o PASV, porque en este caso envía comandos tipo PASV). Tanto en el modo Activo como en el modo Pasivo, el cliente establece una conexión con el servidor mediante el puerto 21, que establece el canal de control. FACULTAD: SISTEMAS COMPUTACIONALES Y TELECOMUNICACIONES Pag: 16 de 16