SlideShare una empresa de Scribd logo
1 de 27
Descargar para leer sin conexión
Índice
Protocolos de red..................................................................................................................................3
   Que es Protocolo..............................................................................................................................3
   Propiedades típicas..........................................................................................................................3
   Cómo funcionan los protocolos.......................................................................................................3
      El equipo origen..........................................................................................................................3
      El equipo de destino....................................................................................................................4
   Protocolos encaminables..................................................................................................................4
   Jerarquías de protocolos...................................................................................................................4
   Jerarquías estándar...........................................................................................................................5
Tipos de Protocolos..............................................................................................................................6
   TPC/IP.............................................................................................................................................6
      Protocolos a Nivel de Red...........................................................................................................6
         TCP:........................................................................................................................................6
         IP:...........................................................................................................................................6
      Protocolos a Nivel de Aplicación................................................................................................7
      Breve Historia del Protocolo TCP/IP..........................................................................................7
   Cómo Trabaja TCP/IP......................................................................................................................8
   HTTP (Hypertext Transfer Protocol)...............................................................................................9
      Transacciones HTTP...................................................................................................................9
         Solicitud HTTP.....................................................................................................................10
            Comandos........................................................................................................................10
            Encabezados....................................................................................................................10
         Respuesta HTTP...................................................................................................................11
            Encabezados de respuesta................................................................................................12
            Los códigos de respuesta.................................................................................................12
   Telnet (TELecommunication NETwork) ......................................................................................14
      Funcionamiento.........................................................................................................................14
      Problemas de seguridad............................................................................................................14
      Manejo básico de telnet.............................................................................................................14
   File Transfer Protocol....................................................................................................................15
      Servidor FTP.............................................................................................................................15
      Cliente FTP...............................................................................................................................16
         Acceso anónimo...................................................................................................................16
         Cliente FTP basado en Web..................................................................................................17
      Modos de conexión del cliente FTP..........................................................................................17
         Modo activo..........................................................................................................................17
         Modo pasivo.........................................................................................................................18
      Guía de comandos FTP.............................................................................................................19
   POP3, Protocolo de la oficina de correo........................................................................................19
      Características...........................................................................................................................19
      Órdenes.....................................................................................................................................20
      Ventajas.....................................................................................................................................21
   Simple Mail Transfer Protocol (SMTP).........................................................................................22
      Funcionamiento.........................................................................................................................22
      Ordenes básicas de SMTP:.......................................................................................................23

                                                                                                                                              Pag. 1
Ejemplo de una comunicación SMTP.......................................................................................23
     Seguridad y spam......................................................................................................................24
  Domain Name System o DNS(sistema de nombres de dominio) .................................................24
     NIC (Network Information Center)..........................................................................................25
     Componentes de DNS...............................................................................................................25
        Clientes DNS........................................................................................................................25
        Servidores DNS....................................................................................................................25
           Tipos de consultas............................................................................................................26
                Consultas Iterativas (no recursivas)............................................................................26
                Consultas Recursivas..................................................................................................26
        Zonas de Autoridad..............................................................................................................26
Referencias.........................................................................................................................................27




                                                                                                                                            Pag. 2
Protocolos de red
Que es Protocolo
En informática, un protocolo es un conjunto de reglas usadas por computadoras para comunicarse
unas con otras a través de una red por medio de intercambio de mensajes. Son reglas de
comunicación que permiten el flujo de información entre equipos que manejan lenguajes distintos,
por ejemplo, dos computadores conectados en la misma red pero con protocolos diferentes no
podrían comunicarse jamás, para ello, es necesario que ambas "hablen" el mismo idioma.

Propiedades típicas
Si bien los protocolos pueden variar mucho en propósito y sofisticación, la mayoría especifica una o
más de las siguientes propiedades:
    • Detección de la conexión física subyacente (con cable o inalámbrica), o la existencia de otro
      punto final o nodo.
    • Negociación de varias características de la conexión.
    • Cómo iniciar y finalizar un mensaje.
    • Procedimientos en el formateo de un mensaje.
    • Qué hacer con mensajes corruptos o formateados incorrectamente (corrección de errores).
    • Cómo detectar una pérdida inesperada de la conexión, y qué hacer entonces.
    • Terminación de la sesión y/o conexión.

Cómo funcionan los protocolos
La operación técnica en la que los datos son transmitidos a través de la red se puede dividir en dos
pasos discretos, sistemáticos. A cada paso se realizan ciertas acciones que no se pueden realizar en
otro paso. Cada paso incluye sus propias reglas y procedimientos, o protocolo.
Los pasos del protocolo se tienen que llevar a cabo en un orden apropiado y que sea el mismo en
cada uno de los equipos de la red. En el equipo origen, estos pasos se tienen que llevar a cabo de
arriba hacia abajo. En el equipo de destino, estos pasos se tienen que llevar a cabo de abajo hacia
arriba.

El equipo origen
Los protocolos en el equipo origen:
    1. Se dividen en secciones más pequeñas, denominadas paquetes.
    2. Se añade a los paquetes información sobre la dirección, de forma que el equipo de destino
       pueda determinar si los datos le pertenecen.
    3. Prepara los datos para transmitirlos a través de la NIC (network interface card) y enviarlos a
       través del cable de la red.




                                                                                               Pag. 3
El equipo de destino
Los protocolos en el equipo de destino constan de la misma serie de pasos, pero en sentido inverso.
    1. Toma los paquetes de datos del cable y los introduce en el equipo a través de la NIC.
    2. Extrae de los paquetes de datos toda la información transmitida eliminando la información
       añadida por el equipo origen.
    3. Copia los datos de los paquetes en un búfer para reorganizarlos enviarlos a la aplicación.
Los equipos origen y destino necesitan realizar cada paso de la misma forma para que los datos
tengan la misma estructura al recibirse que cuando se enviaron.



Protocolos encaminables
Hasta mediados de los ochenta, la mayoría de las redes de área local (LAN) estaban aisladas. Una
LAN servía a un departamento o a una compañía y rara vez se conectaba a entornos más grandes.
Sin embargo, a medida que maduraba la tecnología LAN, y la comunicación de los datos necesitaba
la expansión de los negocios, las LAN evolucionaron, haciéndose componentes de redes de
comunicaciones más grandes en las que las LAN podían hablar entre sí.
Los datos se envían de una LAN a otra a lo largo de varios caminos disponibles, es decir, se
encaminan. A los protocolos que permiten la comunicación LAN a LAN se les conoce como
protocolos encaminables. Debido a que los protocolos encaminables se pueden utilizar para unir
varias LAN y crear entornos de red de área extensa, han tomado gran importancia.

Jerarquías de protocolos
Una jerarquía de protocolos es una combinación de protocolos. Cada nivel de la jerarquía especifica
un protocolo diferente para la gestión de una función o de un subsistema del proceso de
comunicación. Cada nivel tiene su propio conjunto de reglas. Los protocolos definen las reglas para
cada nivel en el modelo OSI:
            Nivel de           Inicia o acepta una petición
            aplicación
            Nivel de           Añade información de formato, presentación y cifrado
            presentación       al paquete de datos
            Nivel de sesión    Añade información del flujo de tráfico para determinar
                               cuándo se envía el paquete
            Nivel de           Añade información para el control de errores
            transporte
            Nivel de red       Se añade información de dirección y secuencia al
                               paquete
            Nivel de enlace    Añade información de comprobación de envío y
            de datos           prepara los datos para que vayan a la conexión física
            Nivel físico       El paquete se envía como una secuencia de bits


                                                                                               Pag. 4
Los niveles inferiores en el modelo OSI especifican cómo pueden conectar los fabricantes sus
productos a los productos de otros fabricantes, por ejemplo, utilizando NIC de varios fabricantes en
la misma LAN. Cuando utilicen los mismos protocolos, pueden enviar y recibir datos entre sí. Los
niveles superiores especifican las reglas para dirigir las sesiones de comunicación (el tiempo en el
que dos equipos mantienen una conexión) y la interpretación de aplicaciones. A medida que
aumenta el nivel de la jerarquía, aumenta la sofisticación de las tareas asociadas a los protocolos.

Jerarquías estándar
La industria informática ha diseñado varios tipos de protocolos como modelos estándar de
protocolo. Los fabricantes de hardware y software pueden desarrollar sus productos para ajustarse a
cada una de las combinaciones de estos protocolos. Los modelos más importantes incluyen:
    • La familia de protocolos ISO/OSI.
    • La arquitectura de sistemas en red de IBM (SNA).
    • Digital DECnet.
    • Novell NetWare.
    • Apple Talk de Apple.
    • El conjunto de protocolos de Internet, TCP/IP.
Los protocolos existen en cada nivel de estas jerarquías, realizando las tareas especificadas por el
nivel. Sin embargo, las tareas de comunicación que tienen que realizar las redes se agrupan en un
tipo de protocolo entre tres. Cada tipo está compuesto por uno o más niveles del modelo OSI.




                                                                                             Pag. 5
Tipos de Protocolos
existen numerosos tipos de protocolos, entre ellos:

                                             TPC/IP
Las siglas TCP/IP se refieren a dos protocolos de red, que son Transmission Control Protocol
(Protocolo de Control de Transmisión) e Internet Protocol (Protocolo de Internet) respectivamente.
Estos protocolos pertenecen a un conjunto mayor de protocolos. Dicho conjunto se denomina suite
TCP/IP.
Los diferentes protocolos de la suite TCP/IP trabajan conjuntamente para proporcionar el transporte
de datos dentro de Internet (o Intranet). En otras palabras, hacen posible que accedamos a los
distintos servicios de la Red. Estos servicios incluyen, transmisión de correo electrónico,
transferencia de ficheros, grupos de noticias, acceso a la World Wide Web, etc.


Hay dos clases de protocolos dentro de la suite TCP/IP que son: protocolos a nivel de red y
protocolos a nivel de aplicación.

Protocolos a Nivel de Red
Estos protocolos se encargan de controlar los mecanismos de transferencia de datos. Normalmente
son invisibles para el usuario y operan por debajo de la superficie del sistema. Dentro de estos
protocolos tenemos:

TCP:
Controla la división de la información en unidades individuales de datos (llamadas paquetes) para
que estos paquetes sean encaminados de la forma más eficiente hacia su punto de destino. En dicho
punto, TCP se encargará de reensamblar dichos paquetes para reconstruir el fichero o mensaje que
se envió. Por ejemplo, cuando se nos envía un fichero HTML desde un servidor Web, el protocolo
de control de transmisión en ese servidor divide el fichero en uno o más paquetes, numera dichos
paquetes y se los pasa al protocolo IP. Aunque cada paquete tenga la misma dirección IP de destino,
puede seguir una ruta diferente a través de la red. Del otro lado (el programa cliente en nuestro
ordenador), TCP reconstruye los paquetes individuales y espera hasta que hayan llegado todos para
presentárnoslos como un solo fichero.

IP:
 Se encarga de repartir los paquetes de información enviados entre el ordenador local y los
ordenadores remotos. Esto lo hace etiquetando los paquetes con una serie de información, entre la
que cabe destacar las direcciones IP de los dos ordenadores. Basándose en esta información, IP
garantiza que los datos se encaminarán al destino correcto. Los paquetes recorrerán la red hasta su
destino (que puede estar en el otro extremo del planeta) por el camino más corto posible gracias a
unos dispositivos denominados encaminadores o routers.


                                                                                             Pag. 6
Protocolos a Nivel de Aplicación
Aquí tenemos los protocolos asociados a los distintos servicios de Internet, como FTP, Telnet,
Gopher, HTTP, etc. Estos protocolos son visibles para el usuario en alguna medida. Por ejemplo, el
protocolo FTP (File Transfer Protocol) es visible para el usuario. El usuario solicita una conexión a
otro ordenador para transferir un fichero, la conexión se establece, y comienza la transferencia.
Durante dicha transferencia, es visible parte del intercambio entre la máquina del usuario y la
máquina remota (mensajes de error y de estado de la transferencia, como por ejemplo cuantos bytes
del fichero se han transferido en un momento dado).

Breve Historia del Protocolo TCP/IP
A principios de los años 60, varios investigadores intentaban encontrar una forma de compartir
recursos informáticos de una forma más eficiente. En 1961, Leonard Klienrock introduce el
concepto de Conmutación de Paquetes (Packet Switching, en inglés). La idea era que la
comunicación entre ordenadores fuese dividida en paquetes. Cada paquete debería contener la
dirección de destino y podría encontrar su propio camino a través de la red.
En 1969 la Agencia de Proyectos de Investigación Avanzada (Defense Advanced Research Projects
Agency o DARPA) del Ejército de los EEUU desarrolla la ARPAnet. La finalidad principal de esta
red era la capacidad de resistir un ataque nuclear de la URSS para lo que se pensó en una
administración descentralizada. De este modo, si algunos ordenadores eran destruidos, la red
seguiría funcionando. Aunque dicha red funcionaba bien, estaba sujeta a algunas caídas periódicas
del sistema. De este modo, la expansión a largo plazo de esta red podría resultar difícil y costosa. Se
inició entonces una búsqueda de un conjunto de protocolos más fiables para la misma. Dicha
búsqueda finalizó, a mediados de los 70, con el desarrollo de TCP/IP.
TCP/IP tenia (y tiene) ventajas significativas respecto a otros protocolos. Por ejemplo, consume
pocos recursos de red. Además, podía ser implementado a un coste mucho menor que otras
opciones disponibles entonces. Gracias a estos aspectos, TCP/IP comenzó a hacerse popular. En
1983, TCP/IP se integró en la versión 4.2 del sistema operativo UNIX de Berkeley y la integración
en versiones comerciales de UNIX vino pronto. Así es como TCP/IP se convirtió en el estándar de
Internet.
En la actualidad, TCP/IP se usa para muchos propósitos, no solo en Internet. Por ejemplo, a menudo
se diseñan intranets usando TCP/IP. En tales entornos, TCP/IP ofrece ventajas significativas sobre
otros protocolos de red. Una de tales ventajas es que trabaja sobre una gran variedad de hardware y
sistemas operativos. De este modo puede crearse fácilmente una red heterogénea usando este
protocolo. Dicha red puede contener estaciones Mac, PC compatibles, estaciones Sun, servidores
Novell, etc. Todos estos elementos pueden comunicarse usando la misma suite de protocolos
TCP/IP. La siguiente tabla muestra una lista de plataformas que soportan TCP/IP:
                            Plataforma             Soporte de TCP/IP
                              UNIX                      Nativo
                            Windows 7                   Nativo
                           Windows NT                   Nativo
                            Macintosh      MacTCP u OpenTransport (Sys 7.5+)
                             LINUX                      Nativo




                                                                                                Pag. 7
Cómo Trabaja TCP/IP
TCP/IP opera a través del uso de una pila. Dicha pila es la suma total de todos los protocolos
necesarios para completar una transferencia de datos entre dos máquinas (así como el camino que
siguen los datos para dejar una máquina o entrar en la otra). La pila está dividida en capas, como se
ilustra en la figura siguiente:
                                 EQUIPO SERVIDOR O CLIENTE
                                                   |
               Capa de          Cuando un usuario inicia una transferencia de datos,
               Aplicaciones     esta capa pasa la solicitud a la Capa de Transporte.
                                                   |
               Capa de          La Capa de Transporte añade una cabecera y pasa
               Transporte       los datos a la Capa de Red.
                                                   |
               Capa de          En la Capa de Red, se añaden las direcciones IP de
               Red              origen y destino para el enrrutamiento de datos.
                                                   |
               Capa de
                                Ejecuta un control de errores sobre el flujo de datos
               Enlace de
                                entre los protocolos anteriores y la Capa Física.
               Datos
                                                     |
                                  Ingresa o egresa los datos a través del medio físico,
                Capa
                                  que puede ser Ethernet vía coaxial, PPP vía módem,
                Física
                                  etc.
Después de que los datos han pasado a través del proceso ilustrado en la figura anterior, viajan a su
destino en otra máquina de la red. Allí, el proceso se ejecuta al revés (los datos entran por la capa
física y recorren la pila hacia arriba). Cada capa de la pila puede enviar y recibir datos desde la capa
adyacente. Cada capa está también asociada con múltiples protocolos que trabajan sobre los datos.




                                                                                                  Pag. 8
HTTP (Hypertext Transfer Protocol)
Es el protocolo usado en cada transacción de la World Wide Web. HTTP fue desarrollado por el
World Wide Web Consortium y la Internet Engineering Task Force, colaboración que culminó en
1999. HTTP define la sintaxis y la semántica que utilizan los elementos de software de la
arquitectura web (clientes, servidores) para comunicarse. Es un protocolo orientado a transacciones
y sigue el esquema petición-respuesta entre un cliente y un servidor. Al cliente que efectúa la
petición (un navegador web) se lo conoce como "user agent" (agente del usuario). A la información
transmitida se la llama recurso y se la identifica mediante un localizador uniforme de recursos
(URL). Los recursos pueden ser archivos, el resultado de la ejecución de un programa, una consulta
a una base de datos, la traducción automática de un documento, etc.
HTTP es un protocolo sin estado, es decir, que no guarda ninguna información sobre conexiones
anteriores. El desarrollo de aplicaciones web necesita frecuentemente mantener estado. Para esto se
usan las cookies, que es información que un servidor puede almacenar en el sistema cliente. Esto le
permite a las aplicaciones web instituir la noción de "sesión", y también permite rastrear usuarios ya
que las cookies pueden guardarse en el cliente por tiempo indeterminado.

Transacciones HTTP
El propósito del protocolo HTTP es permitir la transferencia de archivos (principalmente, en
formato HTML). entre un navegador (el cliente) y un servidor web (denominado, entre otros, httpd
en equipos UNIX) localizado mediante una cadena de caracteres denominada dirección URL.
La comunicación entre el navegador y el servidor se lleva a cabo en dos etapas:
    • El navegador realiza una Solicitud HTTP
    • El servidor procesa la solicitud y después envía una Respuesta HTTP
En realidad, la comunicación se realiza en más etapas si se considera el procesamiento de la
solicitud en el servidor. Dado que sólo nos ocupamos del protocolo HTTP, no se explicará la parte
del procesamiento en el servidor en esta sección del artículo. Si este tema les interesa, puede
consultar el articulo sobre el tratamiento de CGI.




                                                                                               Pag. 9
Solicitud HTTP
Una solicitud HTTP es un conjunto de líneas que el navegador envía al servidor. Incluye:
    • Una línea de solicitud: es una línea que especifica el tipo de documento solicitado, el
      método que se aplicará y la versión del protocolo utilizada. La línea está formada por tres
      elementos que deben estar separados por un espacio:
           • el método
           • la dirección URL
           • la versión del protocolo utilizada por el cliente (por lo general, HTTP/1.0)
    • Los campos del encabezado de solicitud: es un conjunto de líneas opcionales que permiten
      aportar información adicional sobre la solicitud y/o el cliente (navegador, sistema operativo,
      etc.). Cada una de estas líneas está formada por un nombre que describe el tipo de
      encabezado, seguido de dos puntos (:) y el valor del encabezado.
    • El cuerpo de la solicitud: es un conjunto de líneas opcionales que deben estar separadas de
      las líneas precedentes por una línea en blanco y, por ejemplo, permiten que se envíen datos
      por un comando POST durante la transmisión de datos al servidor utilizando un formulario.
Por lo tanto, una solicitud HTTP posee la siguiente sintaxis (<crlf> significa retorno de carro y
avance de línea):
MÉTODO VERSIÓN URL<crlf>
ENCABEZADO: Valor<crlf>
. . . ENCABEZADO: Valor<crlf>
Línea en blanco <crlf>
CUERPO DE LA SOLICITUD

A continuación se encuentra un ejemplo de una solicitud HTTP:
GET http://www.google.com.py HTTP/1.0 Accept : Text/html If-Modified-Since :
Saturday, 15-January-2000 14:37:11 GMT User-Agent : Mozilla/4.0 (compatible;
MSIE 5.0; Windows 7)


Comandos
 Comando                                         Descripción
GET           Solicita el recurso ubicado en la URL especificada
HEAD          Solicita el encabezado del recurso ubicado en la URL especificada
POST          Envía datos al programa ubicado en la URL especificada
PUT           Envía datos a la URL especificada
DELETE        Borra el recurso ubicado en la URL especificada

Encabezados
     Nombre del
                                                     Descripción
     encabezado
                       Tipo de contenido aceptado por el navegador (por ejemplo, texto/html).
Accept
                       Consulte Tipos de MIME

                                                                                            Pag. 10
Accept-Charset         Juego de caracteres que el navegador espera
Accept-Encoding        Codificación de datos que el navegador acepta
Accept-Language        Idioma que el navegador espera (de forma predeterminada, inglés)
Authorization          Identificación del navegador en el servidor
Content-Encoding       Tipo de codificación para el cuerpo de la solicitud
Content-Language       Tipo de idioma en el cuerpo de la solicitud
Content-Length         Extensión del cuerpo de la solicitud
                       Tipo de contenido del cuerpo de la solicitud (por ejemplo, texto/html).
Content-Type
                       Consulte Tipos de MIME
Date                   Fecha en que comienza la transferencia de datos
Forwarded              Utilizado por equipos intermediarios entre el navegador y el servidor
From                   Permite especificar la dirección de correo electrónico del cliente
                       Permite especificar que debe enviarse el documento si ha sido
From
                       modificado desde una fecha en particular
Link                   Vínculo entre dos direcciones URL
Orig-URL               Dirección URL donde se originó la solicitud
Referer                Dirección URL desde la cual se realizó la solicitud
                       Cadena con información sobre el cliente, por ejemplo, el nombre y la
User-Agent
                       versión del navegador y el sistema operativo


Respuesta HTTP
Una respuesta HTTP es un conjunto de líneas que el servidor envía al navegador. Está constituida
por: Incluye:
    • Una línea de estado: es una línea que especifica la versión del protocolo utilizada y el
      estado de la solicitud en proceso mediante un texto explicativo y un código. La línea está
      compuesta por tres elementos que deben estar separados por un espacio: La línea está
      formada por tres elementos que deben estar separados por un espacio:
           • la versión del protocolo utilizada
           • el código de estado
           • el significado del código
    • Los campos del encabezado de respuesta: es un conjunto de líneas opcionales que
      permiten aportar información adicional sobre la respuesta y/o el servidor. Cada una de estas
      líneas está compuesta por un nombre que califica el tipo de encabezado, seguido por dos
      puntos (:) y por el valor del encabezado Cada una de estas líneas está formada por un
      nombre que describe el tipo de encabezado, seguido de dos puntos (:) y el valor del
      encabezado.
    • El cuerpo de la respuesta: contiene el documento solicitado.
Por lo tanto, una respuesta HTTP posee la siguiente sintaxis (<crlf> significa retorno de carro y
avance de línea):




                                                                                            Pag. 11
VERSIÓN-HTTP CÓDIGO EXPLICACIÓN <crlf>
ENCABEZADO: Valor<crlf>
. . . ENCABEZADO: Valor<crlf>
Línea en blanco <crlf>
CUERPO DE LA RESPUESTA


A continuación se encuentra un ejemplo de una respuesta HTTP:
HTTP/1.0 200 OK Date: Sat, 15 Jan 2000 14:37:12 GMT Server : Microsoft-IIS/2.0 Content-
Type : text/HTML Content-Length : 1245 Last-Modified : Fri, 14 Jan 2000 08:25:13 GMT



Encabezados de respuesta
Nombre del encabezado                                  Descripción
Content-Encoding      Tipo de codificación para el cuerpo de la respuesta
Content-Language      Tipo de idioma en el cuerpo de la respuesta
Content-Length        Extensión del cuerpo de la respuesta
                      Tipo de contenido del cuerpo de la respuesta (por ejemplo, texto/html).
Content-Type
                      Consulte Tipos de MIME
Date                  Fecha en que comienza la transferencia de datos
Expires               Fecha límite de uso de los datos
Forwarded             Utilizado por equipos intermediarios entre el navegador y el servidor
Location              Redireccionamiento a una nueva dirección URL asociada con el documento
Server                Características del servidor que envió la respuesta

Los códigos de respuesta
Son los códigos que se ven cuando el navegador no puede mostrar la página solicitada. El código de
respuesta está formado por tres dígitos: el primero indica el estado y los dos siguientes explican la
naturaleza exacta del error.
Código          Mensaje                                     Descripción
               Mensaje de
  10x                               Estos códigos no se utilizan en la versión 1.0 del protocolo
              información
  20x             Éxito            Estos códigos indican la correcta ejecución de la transacción
200      OK                     La solicitud se llevó a cabo de manera correcta
                                Sigue a un comando POST e indica el éxito, la parte restante del
201      CREATED                cuerpo indica la dirección URL donde se ubicará el documento
                                creado recientemente.
                                La solicitud ha sido aceptada, pero el procedimiento que sigue no se
202      ACCEPTED
                                ha llevado a cabo
         PARTIAL                Cuando se recibe este código en respuesta a un comando de GET
203
         INFORMATION            indica que la respuesta no está completa.
                                El servidor ha recibido la solicitud, pero no hay información de
204      NO RESPONSE
                                respuesta
                                El servidor le indica al navegador que borre el contenido en los
205      RESET CONTENT
                                campos de un formulario



                                                                                                   Pag. 12
Es una respuesta a una solicitud que consiste en el encabezado range.
206     PARTIAL CONTENT
                                 El servidor debe indicar el encabezado content-Range

                                   Estos códigos indican que el recurso ya no se encuentra en la
  30x        Redirección
                                                          ubicación especificada
301     MOVED                   Los datos solicitados han sido transferidos a una nueva dirección
                                Los datos solicitados se encuentran en una nueva dirección URL,
302     FOUND
                                pero, no obstante, pueden haber sido trasladados
                                Significa que el cliente debe intentarlo con una nueva dirección; es
303     METHOD
                                preferible que intente con otro método en vez de GET
                                Si el cliente llevó a cabo un comando GET condicional (con la
                                solicitud relativa a si el documento ha sido modificado desde la
304     NOT MODIFIED
                                última vez) y el documento no ha sido modificado, este código se
                                envía como respuesta.
  40x   Error debido al cliente          Estos códigos indican que la solicitud es incorrecta
                                La sintaxis de la solicitud se encuentra formulada de manera errónea
400     BAD REQUEST
                                o es imposible de responder
                                Los parámetros del mensaje aportan las especificaciones de
401     UNAUTHORIZED            formularios de autorización que se admiten. El cliente debe
                                reformular la solicitud con los datos de autorización correctos
        PAYMENT                 El cliente debe reformular la solicitud con los datos de pago
402
        REQUIRED                correctos
403     FORBIDDEN               El acceso al recurso simplemente se deniega
                                Un clásico. El servidor no halló nada en la dirección especificada. Se
404     NOT FOUND
                                ha abandonado sin dejar una dirección para redireccionar... :)
           Error debido al
  50x                             Estos códigos indican que existe un error interno en el servidor
               servidor
                                El servidor encontró una condición inesperada que le impide seguir
500     INTERNAL ERROR
                                con la solicitud (una de esas cosas que les suceden a los servidores...)
501     NOT IMPLEMENTED El servidor no admite el servicio solicitado (no puede saberlo todo...)
                                El servidor que actúa como una puerta de enlace o proxy ha recibido
502     BAD GATEWAY
                                una respuesta no válida del servidor al que intenta acceder
                                El servidor no puede responder en ese momento debido a que se
        SERVICE
503                             encuentra congestionado (todas las líneas de comunicación se
        UNAVAILABLE
                                encuentran congestionadas, inténtelo de nuevo más adelante)
                                La respuesta del servidor ha llevado demasiado tiempo en relación al
504     GATEWAY TIMEOUT tiempo de espera que la puerta de enlace podía admitir (excedió el
                                tiempo asignado...)




                                                                                                     Pag. 13
Telnet (TELecommunication NETwork)
Es uno de los servicios más antiguos de Internet, data de la época de ARPANET, y se utiliza para
conectar ("login") con un equipo remoto a través de la Red, de forma que el ordenador cliente se
comporta como una terminal conectada (on-line) con el ordenador remoto. Todo lo que se necesita
es un cliente Telnet (un programa especial). Utilizando la terminología informática anterior a la
Web, diríamos que un cliente telnet es en realidad un programa de emulación de terminal para
teleproceso adaptado al sistema de Internet, es decir, al protocolo TPC/IP.
Para que la conexión funcione, como en todos los servicios de Internet, la máquina a la que se
acceda debe tener un programa especial que reciba y gestione las conexiones. El puerto que se
utiliza generalmente es el 23.

Funcionamiento
Telnet sólo sirve para acceder en modo terminal, es decir, sin gráficos, pero fue una herramienta
muy útil para arreglar fallos a distancia, sin necesidad de estar físicamente en el mismo sitio que la
máquina que los tenía. También se usaba para consultar datos a distancia, como datos personales en
máquinas accesibles por red, información bibliográfica, etc.
Aparte de estos usos, en general telnet se ha utilizado (y aún hoy se puede utilizar en su variante
SSH) para abrir una sesión con una máquina UNIX, de modo que múltiples usuarios con cuenta en
la máquina, se conectan, abren sesión y pueden trabajar utilizando esa máquina. Es una forma muy
usual de trabajar con sistemas UNIX.

Problemas de seguridad

Su mayor problema es de seguridad, ya que todos los nombres de usuario y contraseñas necesarias
para entrar en las máquinas viajan por la red como texto plano (cadenas de texto sin cifrar). Esto
facilita que cualquiera que espíe el tráfico de la red pueda obtener los nombres de usuario y
contraseñas, y así acceder él también a todas esas máquinas. Por esta razón dejó de usarse, casi
totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como
una versión cifrada de telnet -actualmente se puede cifrar toda la comunicación del protocolo
durante el establecimiento de sesión (RFC correspondiente, en inglés- si cliente y servidor lo
permiten, aunque no se tienen ciertas funcionalidad extra disponibles en SSH).

Manejo básico de telnet

Para iniciar una sesión con un intérprete de comandos de otro ordenador, puede emplear el comando
telnet seguido del nombre o la dirección IP de la máquina en la que desea trabajar, por ejemplo si
desea conectarse a la máquina facitec.mifacultad.edu.com deberá teclear:
telnet facitec.mifacultad.edu.com.
y para conectarse con la dirección IP 1.2.3.4 deberá utilizar:
telnet 1.2.3.4.




                                                                                              Pag. 14
Una vez conectado, podrá ingresar el nombre de usuario y contraseña remoto para iniciar una sesión
en modo texto a modo de consola virtual (ver Lectura Sistema de usuarios y manejo de clave). La
información que transmita (incluyendo su clave) no será protegida o cifrada y podría ser vista en
otros computadores por los que se transite la información (la captura de estos datos se realiza con
un packet sniffer).
Una alternativa más segura para telnet, pero que requiere más recursos del computador, es SSH.
Este cifra la información antes de transmitirla, autentica la máquina a la cual se conecta y puede
emplear mecanismos de autenticación de usuarios más seguros.
Actualmente hay sitios para hackers en los que se entra por telnet y se van sacando las password
para ir pasando de nivel, ese uso de telnet aun es vigente.




                                    File Transfer Protocol
FTP (siglas en inglés de File Transfer Protocol, 'Protocolo de Transferencia de Archivos')es un
protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP 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 TPC/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.

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).




                                                                                            Pag. 15
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.

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 (Hypertext Transfer Protocol)) para almacenar información
textual destinada a la lectura en línea.




                                                                                               Pag. 16
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.
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.

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.

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.




                                                                                              Pag. 17
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.




                                                                                               Pag. 18
Guía de comandos FTP
impresión de caracteres # a medida que se transfieren archivos, a modo de barra de progreso.
-help:        se utiliza para mostrar una lista de comandos que podemos utilizar en el FTP.
-status:      nos muestra el estado actual del FTP.
-binary:      cambia de modo ASCII a modo binario.
-ASCII:       cambia de modo binario a modo ASCII
-type:        nos muestra el modo en el que estamos ya sea binario o ASCII
-user:        nos permite reiniciar el FTP con otro usuario.
-ls:          nos muestra una lista con todos los archivos que hay en el FTP en el directorio
              actual.
-pwd:         nos muestra la ruta actual, donde estamos trabajando.
-cd:          nos cambia de directorio.
- mkdir:      creamos un directorio en el directorio actual.
-rmdir:       elimina un directorio en el directorio actual.
-get:         este comando nos sirve para recuperar archivos del FTP
-put:         nos manda un archivo del ordenador al servidor.
-open:        cierra la sesión actual y abre una nueva sesión en otro FTP
-close:       cierra la sesión, pero deja el software FTP activo.
-bye:         cierra o desconecta el FTP y lo deja en modo inactivo.
-quit:        cierra o desconecta el FTP y lo deja en modo inactivo.



                         POP3, Protocolo de la oficina de correo
El protocolo original fue llamado POP en 1984. En la versión 2 (1985), el POP2, se le asignó el
puerto 109 como predeterminado. Luego, en 1988, se lanza la versión 3, POP3 (revisada múltiples
veces).
Se utilizaen clientes locales de correo para obtener los mensajes de correo electrónico almacenados
en un servidor remoto. Es un protocolo de nivel de aplicación en el Modelo OSI.
Las versiones del protocolo POP (informalmente conocido como POP1) y POP2 se han hecho
obsoletas debido a las últimas versiones de POP3. En general cuando uno se refiere al término POP,
nos referimos a POP3 dentro del contexto de protocolos de correo electrónico.

Características
POP3 está diseñado para recibir correo, no para enviarlo; le permite a los usuarios con conexiones
intermitentes o muy lentas (tales como las conexiones por módem), descargar su correo electrónico
mientras tienen conexión y revisarlo posteriormente incluso estando desconectados. Cabe

                                                                                              Pag. 19
mencionar que la mayoría de los clientes de correo incluyen la opción de dejar los mensajes en el
servidor, de manera tal que, un cliente que utilice POP3 se conecta, obtiene todos los mensajes, los
almacena en la computadora del usuario como mensajes nuevos, los elimina del servidor y
finalmente se desconecta. En contraste, el protocolo IMAP permite los modos de operación
conectado y desconectado.
Los clientes de correo electrónico que utilizan IMAP dejan por lo general los mensajes en el
servidor hasta que el usuario los elimina directamente. Esto y otros factores hacen que la operación
de IMAP permita a múltiples clientes acceder al mismo buzón de correo. La mayoría de los clientes
de correo electrónico soportan POP3 o IMAP; sin embargo, solo unos cuantos proveedores de
internet ofrecen IMAP como valor agregado de sus servicios.
Al igual que otros viejos protocolos de internet, POP3 utilizaba un mecanismo de firmado sin
cifrado. La transmisión de contraseñas de POP3 en texto plano aún se da. En la actualidad POP3
cuenta con diversos métodos de autenticación que ofrecen una diversa gama de niveles de
protección contra los accesos ilegales al buzón de correo de los usuarios. Uno de estos es APOP, el
cual utiliza funciones MD5 para evitar los ataques de contraseñas. Mozilla, Eudora, Novell
Evolution así como Mozilla Thunderbird implementan funciones APOP.

Órdenes
Para establecer una conexión a un servidor POP, el cliente de correo abre una conexión TCP en el
puerto 110 del servidor. Cuando la conexión se ha establecido, el servidor POP envía al cliente POP
y después las dos máquinas se envían entre sí otras órdenes y respuestas que se especifican en el
protocolo. Como parte de esta comunicación, al cliente POP se le pide que se autentifique (Estado
de autenticación), donde el nombre de usuario y la contraseña del usuario se envían al servidor POP.
Si la autenticación es correcta, el cliente POP pasa al Estado de transacción, en este estado se
pueden utilizar órdenes LIST, RETR y DELE para mostrar, descargar y eliminar mensajes del
servidor, respectivamente. Los mensajes definidos para su eliminación no se quitan realmente del
servidor hasta que el cliente POP envía la orden QUIT para terminar la sesión. En ese momento, el
servidor POP pasa al Estado de actualización, fase en la que se eliminan los mensajes marcados y se
limpian todos los recursos restantes de la sesión.
Es posible conectarse manualmente al servidor POP3 haciendo Telnet al puerto 110. Es muy útil
cuando envían un mensaje con un fichero muy largo que no se quiere recibir.


   •   USER <nombre> Identificación de usuario (Solo se realiza una vez).
    • PASS <password> Envía la clave del servidor.
    • STAT Da el número de mensajes no borrados en el buzón y su longitud total.
    • LIST Muestra todos los mensajes no borrados con su longitud.
    • RETR <número> Solicita el envío del mensaje especificando el número (no se borra del
      buzón).
    • TOP <número> <líneas> Muestra la cabecera y el número de líneas requerido del mensaje
      especificando el número.


                                                                                            Pag. 20
• DELE <número> Borra el mensaje especificando el número.
    • RSET Recupera los mensajes borrados (en la conexión actual).
    • UIDL <número> Devuelve una cadena identificadora del mensaje persistente a través de las
      sesiones. Si no se especifica <número> se devuelve una lista con los números de mensajes y
      su cadena identificadora de los mensajes no borrados.
    • QUIT Salir.



Ventajas
La ventaja con otros protocolos es que entre servidor-cliente no se tienen que enviar tantas órdenes
para la comunicación entre ellos. El protocolo POP también funciona adecuadamente si no se utiliza
una conexión constante a Internet o a la red que contiene el servidor de correo.




                                                                                            Pag. 21
Simple Mail Transfer Protocol (SMTP)
Protocolo Simple de Transferencia de Correo, es un protocolo de la capa de aplicación. Protocolo de
red basado en textos utilizados para el intercambio de mensajes de correo electrónico entre
computadoras u otros dispositivos (PDA's, teléfonos móviles, etc.).
En 1982 se diseñó el primer sistema para intercambiar correos electrónicos en ARPANET, con el
tiempo se ha convertido en uno de los protocolos más usados en internet. Para adaptarse a las
nuevas necesidades surgidas por el crecimiento y popularidad de internet se han hecho varias
ampliaciones a este protocolo, como por ejemplo enviar texto con formato.

Funcionamiento
SMTP se basa en el modelo cliente-servidor, donde un cliente envía un mensaje a uno o varios
receptores. La comunicación entre el cliente y el servidor consiste enteramente en líneas de texto
compuestas por caracteres ASCII. El tamaño máximo permitido para estas líneas es de 1000
caracteres.
Las respuestas del servidor constan de un código numérico de tres dígitos, seguido de un texto
explicativo. El número va dirigido a un procesado automático de la respuesta por autómata,
mientras que el texto permite que un humano interprete la respuesta. En el protocolo SMTP todas
las órdenes, réplicas o datos son líneas de texto, delimitadas por el carácter <CRLF>. Todas las
réplicas tienen un código numérico al comienzo de la línea.
En el conjunto de protocolos TCP/IP, el SMTP va por encima del TCP, usando normalmente el
puerto 25 en el servidor para establecer la conexión.
Cuando un cliente establece una conexión con el servidor SMTP, espera a que éste envíe un
mensaje “220 Service ready” o “421 Service non available”
    • Se envía un HELO desde el cliente. Con ello el servidor se identifica. Esto puede usarse
      para comprobar si se conectó con el servidor SMTP correcto.
    • El cliente comienza la transacción del correo con la orden MAIL FROM. Como argumento
      de esta orden se puede pasar la dirección de correo al que el servidor notificará cualquier
      fallo en el envío del correo (Por ejemplo, MAIL FROM:<fuente@host0>). Luego si el
      servidor comprueba que el origen es valido, el servidor responde “250 OK”.
    • Ya le hemos dicho al servidor que queremos mandar un correo, ahora hay que comunicarle a
      quien. La orden para esto es RCPT TO:<destino@host>. Se pueden mandar tantas órdenes
      RCPT como destinatarios del correo queramos. Por cada destinatario, el servidor contestará
      “250 OK” o bien “550 No such user here”, si no encuentra al destinatario.
    • Una vez enviados todos los RCPT, el cliente envía una orden DATA para indicar que a
      continuación se envían los contenidos del mensaje. El servidor responde “354 Start mail
      input, end with <CRLF>.<CRLF>” Esto indica al cliente como ha de notificar el fin del
      mensaje.
    • Ahora el cliente envía el cuerpo del mensaje, línea a línea. Una vez finalizado, se termina
      con un <CRLF>.<CRLF> (la última línea será un punto), a lo que el servidor contestará
      “250 OK”, o un mensaje de error apropiado.

                                                                                           Pag. 22
• Tras el envío, el cliente, si no tiene que enviar más correos, con la orden QUIT corta la
       conexión. También puede usar la orden TURN, con lo que el cliente pasa a ser el servidor, y
       el servidor se convierte en cliente. Finalmente, si tiene más mensajes que enviar, repite el
       proceso hasta completarlos.

Ordenes básicas de SMTP:
     •   HELO, para abrir una sesión con el servidor
     •   MAIL FROM, para indicar quien envía el mensaje
     •   RCPT TO, para indicar el destinatario del mensaje
     •   DATA, para indicar el comienzo del mensaje, éste finalizará cuando haya una línea
         únicamente con un punto.
     •   QUIT, para cerrar la sesión
     •   RSET Aborta la transacción en curso y borra todos los registros.
     •   SEND Inicia una transacción en la cual el mensaje se entrega a una terminal.
     •   SOML El mensaje se entrega a un terminal o a un buzón.
     •   SAML El mensaje se entrega a un terminal y a un buzón.
     •   VRFY Solicita al servidor la verificación del argumento.
     •   EXPN Solicita al servidor la confirmación del argumento.
     •   HELP Permite solicitar información sobre un comando.
     •   NOOP Se emplea para reiniciar los temporizadores.
     •   TURN Solicita al servidor que intercambien los papeles.

Ejemplo de una comunicación SMTP
En primer lugar se ha de establecer una conexión entre el emisor (cliente) y el receptor (servidor).
Esto puede hacerse automáticamente con un programa cliente de correo o mediante un cliente
telnet.
En el siguiente ejemplo se muestra una conexión típica. Se nombra con la letra C al cliente y con S
al servidor.
S:   220 Servidor ESMTP
C:   HELO miequipo.midominio.com
S:   250 Hello, please to meet you
C:   MAIL FROM: <yo@midominio.com>
S:   250 Ok
C:   RCPT TO: <destinatario@sudominio.com>
S:   250 Ok
C:   DATA
S:   354 End data with <CR><LF>.<CR><LF>
C:   Subject: Campo de asunto
C:   From: yo@midominio.com
C:   To: destinatario@sudominio.com
C:
C:   Hola,
C:   Esto es una prueba.
C:   Hasta luego.
C:
C:   .
S:   250 Ok: queued as 12345
C:   quit
S:   221 Bye


                                                                                               Pag. 23
Seguridad y spam
Una de las limitaciones del SMTP original es que no facilita métodos de autenticación a los
emisores, así que se definió la extensión SMTP-AUTH.
A pesar de esto, el spam es aún el mayor problema. No se cree que las extensiones sean una forma
práctica para prevenirlo. Internet Mail 2000 es una de las propuestas para reemplazarlo.



                  Domain Name System o DNS(sistema de nombres de dominio)
el cuál nació en la década de los 80's. Creado por Paúl Mockapetris en colaboración con Jon Postel
de la Universidad del Sur de California y posteriormente, Paúl Vixie. Juntos desarrollaron lo que
hasta ahora conocemos como el DNS (BIND, Barkeley Internet Name Domain), un sistema
cliente/servidor, distribuido y jerárquico.

Se crearon entonces los nombres de dominio genéricos de primer nivel (gTLD, generic Top-level
Domain), .com .net y .org, es decir, se habían creado estas tres clasificaciones con el fin de ubicar el
tipo de entidades que buscaban tener presencia en Internet.

Además de estos gTLD se empezó por delegar los sufijos nacionales (nTLD, national Top-level
Domain) a los países que se fueran conectando a la red.

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.
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 (File Transfer Protocol) de facitec.py es
192.64.128.4, la mayoría de la gente llega a este equipo especificando ftp.facitec.py 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.
Cada dominio es como si terminase con un “.” Por eso nuestro dominio seria “www.facitec.py” y el
punto al final es el elemento raíz de nuestro árbol y lo que indica al cliente que debe de empezar la
búsqueda en los root Server. Estos root Server son los que tienen los registros TLD que son los
dominios de nivel superior ósea los que no pertenecen a otro dominio, como son “com, org, net, es,
etc.” Actualmente hay 13 TLD en todo el mundo y 10 de ellos se encuentran en estados unidos, uno
en Estocolmo, otro en Japón, y el último en Londres. Si alguna catástrofe hiciese que estos 13
servidores dejasen de operar provocaría un gran apagón de Internet y causaría estragos a nivel
mundial.


                                                                                                Pag. 24
NIC (Network Information Center)
NIC (acrónimo de Network Information Center o Centro de Información sobre la Red) es una
institución encargada de asignar los nombres de dominio en Internet, ya sean nombres de dominio
genéricos, o por países, permitiendo personas, o empresas, montar sitios de Internet a través de un
ISP, mediante un DNS. Técnicamente existe un NIC por cada país en el mundo, y cada uno de
éstos es responsable por todos los dominios con la terminación correspondiente a su país. Por
ejemplo: NIC Paraguay es la entidad encargada de gestionar todos los dominios con terminación
.py, la cual es la terminación correspondiente asignada a los dominios de Paraguay.



Componentes de DNS.
DNS opera a través de tres componentes: Clientes DNS, Servidores DNS, y Zonas de Autoridad.

Clientes DNS.
Son programas que ejecuta un usuario y que generan peticiones de consulta para resolver nombres.
Básicamente preguntan por la dirección IP que corresponde a un nombre determinado.

Servidores DNS.
Son servicios que contestan las consultas realizadas por los Clientes DNS. Hay dos tipos de
servidores de nombres:
   •   Servidor Maestro: También denominado Primario. Obtiene los datos del dominio a partir
       de un archivo alojado en el mismo servidor.
   •   Servidor Esclavo: También denominado Secundario. Al iniciar obtiene los datos del
       dominio a través de un Servidor Maestro (o primario), realizando un proceso denominado
       transferencia de zona.
Un gran número de problemas de operación de servidores DNS se atribuyen a las pobres opciones
de servidores secundarios para las zona de DNS. De acuerdo al RFC 2182, el DNS requiere que al
menos tres servidores existan para todos los dominios delegados (o zonas).
Una de las principales razones para tener al menos tres servidores para cada zona, es permitir que
la información de la zona misma esté disponible siempre, y de forma confiable, hacia los Clientes
DNS, a través de Internet cuando un servidor DNS de dicha zona falle, esté fuera de servicio, y/o
esté inalcanzable.
Contar con múltiples servidores también facilita la propagación de la zona y mejoran la eficiencia
del sistema en general al brindar opciones a los Clientes DNS si acaso encontraran dificultades para
realizar una consulta en un Servidor DNS. En otras palabras: tener múltiples servidores para una
zona permite contar con redundancia, y respaldo, del servicio.




                                                                                              Pag. 25
Tipos de consultas

Consultas Iterativas (no recursivas)
       El cliente hace una consulta al Servidor DNS, y éste le responde con la mejor respuesta que
       pueda darse basada sobre su caché, o en las zonas locales. Si es imposible dar una respuesta,
       la consulta se reenvía hacia otro Servidor DNS repitiéndose este proceso hasta encontrar al
       Servidor DNS que tiene la Zona de Autoridad capaz de resolver la consulta.

Consultas Recursivas
       El Servidor DNS asume toda la carga de proporcionar una respuesta completa para la
       consulta realizada por el Cliente DNS. El Servidor DNS desarrolla entonces Consultas
       Iterativas separadas hacia otros Servidores DNS (en lugar de hacerlo el Cliente DNS) para
       obtener la respuesta solicitada.

Zonas de Autoridad.
Permiten al Servidor Maestro o Primario cargar la información de una zona. Cada Zona de
Autoridad abarca al menos un dominio, y, posiblemente, sus sub-dominios, si estos últimos son
imposibles de delegar a otras zonas de autoridad.




                                                                                            Pag. 26
Referencias


✔ http://es.wikipedia.org/wiki/HTTP
✔ http://es.kioskea.net/contents/internet/http.php3
✔ http://arturocasupa.galeon.com/
✔ http://es.kioskea.net/contents/internet/telnet.php3
✔ http://es.wikipedia.org/wiki/File_Transfer_Protocol
✔ http://es.wikipedia.org/wiki/Post_Office_Protocol
✔ http://www.alcancelibre.org/staticpages/index.php/introduccion-protocolo-dns
✔ http://es.wikipedia.org/wiki/Domain_Name_System




                                                                                 Pag. 27

Más contenido relacionado

Destacado

Eye pacs learning community for 10 24 11
Eye pacs learning community for 10 24 11Eye pacs learning community for 10 24 11
Eye pacs learning community for 10 24 11eyepacs
 
Redes Inf..
Redes Inf..Redes Inf..
Redes Inf..pablillo
 
The pony post october v3
The pony post october v3The pony post october v3
The pony post october v3IHKids
 
MARKETING-JAZZ Our Creative and Advisory Retail Mag
MARKETING-JAZZ Our Creative and Advisory Retail MagMARKETING-JAZZ Our Creative and Advisory Retail Mag
MARKETING-JAZZ Our Creative and Advisory Retail MagJAVIER ASPIROZ CÁMARA
 
Intervista a D'Alema - Corriere della Sera - 01 maggio 2013
Intervista a D'Alema - Corriere della Sera - 01 maggio 2013Intervista a D'Alema - Corriere della Sera - 01 maggio 2013
Intervista a D'Alema - Corriere della Sera - 01 maggio 2013PD Monteroduni
 
Proyecto San José - Informe Agosto
Proyecto San José - Informe AgostoProyecto San José - Informe Agosto
Proyecto San José - Informe AgostoMauricio Cardona
 
Graphical symbols booklet-es
Graphical symbols booklet-esGraphical symbols booklet-es
Graphical symbols booklet-es45marimar
 
Almogia y sus Churripampàs y canciones
Almogia y sus Churripampàs y cancionesAlmogia y sus Churripampàs y canciones
Almogia y sus Churripampàs y cancionesAlmogia en Imágenes
 
actesITS2004.doc
actesITS2004.docactesITS2004.doc
actesITS2004.docbutest
 
Universidad UFG las 7P y 12 marcas o productos de el salvador en introducción...
Universidad UFG las 7P y 12 marcas o productos de el salvador en introducción...Universidad UFG las 7P y 12 marcas o productos de el salvador en introducción...
Universidad UFG las 7P y 12 marcas o productos de el salvador en introducción...Stephanie Pinzón
 
Slideshare power point planificacion elvis
Slideshare power point planificacion elvisSlideshare power point planificacion elvis
Slideshare power point planificacion elvisELVIS190179
 
Estrategia digital para la base de la piramide sm digital
Estrategia digital para la base de la piramide sm digitalEstrategia digital para la base de la piramide sm digital
Estrategia digital para la base de la piramide sm digitalSM Digital
 
Catalogue MITT 2016
Catalogue MITT 2016 Catalogue MITT 2016
Catalogue MITT 2016 Yana Kuzmina
 
Mesa redonda dime tu klout y hablamod de reputación después - cèlia hil
Mesa redonda   dime tu klout y hablamod de reputación después - cèlia hilMesa redonda   dime tu klout y hablamod de reputación después - cèlia hil
Mesa redonda dime tu klout y hablamod de reputación después - cèlia hilCèlia Hil
 
Fruit Trees & Useful Plants in Amazonian Life
Fruit Trees & Useful Plants in Amazonian LifeFruit Trees & Useful Plants in Amazonian Life
Fruit Trees & Useful Plants in Amazonian LifeKyle Lima
 

Destacado (20)

Eye pacs learning community for 10 24 11
Eye pacs learning community for 10 24 11Eye pacs learning community for 10 24 11
Eye pacs learning community for 10 24 11
 
Redes Inf..
Redes Inf..Redes Inf..
Redes Inf..
 
The pony post october v3
The pony post october v3The pony post october v3
The pony post october v3
 
MARKETING-JAZZ Our Creative and Advisory Retail Mag
MARKETING-JAZZ Our Creative and Advisory Retail MagMARKETING-JAZZ Our Creative and Advisory Retail Mag
MARKETING-JAZZ Our Creative and Advisory Retail Mag
 
Intervista a D'Alema - Corriere della Sera - 01 maggio 2013
Intervista a D'Alema - Corriere della Sera - 01 maggio 2013Intervista a D'Alema - Corriere della Sera - 01 maggio 2013
Intervista a D'Alema - Corriere della Sera - 01 maggio 2013
 
Proyecto San José - Informe Agosto
Proyecto San José - Informe AgostoProyecto San José - Informe Agosto
Proyecto San José - Informe Agosto
 
Graphical symbols booklet-es
Graphical symbols booklet-esGraphical symbols booklet-es
Graphical symbols booklet-es
 
Trabajo turismo en junín
Trabajo turismo en junínTrabajo turismo en junín
Trabajo turismo en junín
 
Almogia y sus Churripampàs y canciones
Almogia y sus Churripampàs y cancionesAlmogia y sus Churripampàs y canciones
Almogia y sus Churripampàs y canciones
 
Turismo religioso
Turismo religiosoTurismo religioso
Turismo religioso
 
actesITS2004.doc
actesITS2004.docactesITS2004.doc
actesITS2004.doc
 
Universidad UFG las 7P y 12 marcas o productos de el salvador en introducción...
Universidad UFG las 7P y 12 marcas o productos de el salvador en introducción...Universidad UFG las 7P y 12 marcas o productos de el salvador en introducción...
Universidad UFG las 7P y 12 marcas o productos de el salvador en introducción...
 
Slideshare power point planificacion elvis
Slideshare power point planificacion elvisSlideshare power point planificacion elvis
Slideshare power point planificacion elvis
 
Estrategia digital para la base de la piramide sm digital
Estrategia digital para la base de la piramide sm digitalEstrategia digital para la base de la piramide sm digital
Estrategia digital para la base de la piramide sm digital
 
Programaciã“n general encuentro semilleros 2015 (1)
Programaciã“n general encuentro semilleros 2015 (1)Programaciã“n general encuentro semilleros 2015 (1)
Programaciã“n general encuentro semilleros 2015 (1)
 
Catalogue MITT 2016
Catalogue MITT 2016 Catalogue MITT 2016
Catalogue MITT 2016
 
E.t.i. la carucieña
E.t.i.  la carucieñaE.t.i.  la carucieña
E.t.i. la carucieña
 
Mesa redonda dime tu klout y hablamod de reputación después - cèlia hil
Mesa redonda   dime tu klout y hablamod de reputación después - cèlia hilMesa redonda   dime tu klout y hablamod de reputación después - cèlia hil
Mesa redonda dime tu klout y hablamod de reputación después - cèlia hil
 
Fruit Trees & Useful Plants in Amazonian Life
Fruit Trees & Useful Plants in Amazonian LifeFruit Trees & Useful Plants in Amazonian Life
Fruit Trees & Useful Plants in Amazonian Life
 
La imagen pictórica
La imagen pictóricaLa imagen pictórica
La imagen pictórica
 

Similar a Protocolos de red

Similar a Protocolos de red (20)

Redes
RedesRedes
Redes
 
Redes lan y wan
Redes lan y wanRedes lan y wan
Redes lan y wan
 
Informatica
InformaticaInformatica
Informatica
 
Informatica.docx gla
Informatica.docx glaInformatica.docx gla
Informatica.docx gla
 
Internet
InternetInternet
Internet
 
Internet
InternetInternet
Internet
 
Internet
InternetInternet
Internet
 
Internet
InternetInternet
Internet
 
Informatica (1)
Informatica (1)Informatica (1)
Informatica (1)
 
Informatica
InformaticaInformatica
Informatica
 
Informaticagg
InformaticaggInformaticagg
Informaticagg
 
Informatica gladys
Informatica gladysInformatica gladys
Informatica gladys
 
Informatica
InformaticaInformatica
Informatica
 
Herramientas Basicas del Internet
Herramientas Basicas del InternetHerramientas Basicas del Internet
Herramientas Basicas del Internet
 
Informatica
InformaticaInformatica
Informatica
 
Informatica
InformaticaInformatica
Informatica
 
Internet
Internet Internet
Internet
 
Informaticajkj
InformaticajkjInformaticajkj
Informaticajkj
 
Informaticajkj
InformaticajkjInformaticajkj
Informaticajkj
 
IV Unidad Sistemas Operativos 2 Cliente-Servidor
IV Unidad Sistemas Operativos 2 Cliente-Servidor IV Unidad Sistemas Operativos 2 Cliente-Servidor
IV Unidad Sistemas Operativos 2 Cliente-Servidor
 

Más de Aldo Ariel Gómez Ortega (13)

Unidades funcionales de la computadora
Unidades funcionales de la computadoraUnidades funcionales de la computadora
Unidades funcionales de la computadora
 
2011 02 16_informe_autoevaluacion_zm
2011 02 16_informe_autoevaluacion_zm2011 02 16_informe_autoevaluacion_zm
2011 02 16_informe_autoevaluacion_zm
 
Datacenters
DatacentersDatacenters
Datacenters
 
Modeloosi
ModeloosiModeloosi
Modeloosi
 
Modelo osi
Modelo osiModelo osi
Modelo osi
 
Microprocesador
MicroprocesadorMicroprocesador
Microprocesador
 
Microprocesador
MicroprocesadorMicroprocesador
Microprocesador
 
Manual de informatica2[1]
Manual de informatica2[1]Manual de informatica2[1]
Manual de informatica2[1]
 
Taller de hardware
Taller de hardwareTaller de hardware
Taller de hardware
 
La universidad en_la_era_de_las_redes_sociales
La universidad en_la_era_de_las_redes_socialesLa universidad en_la_era_de_las_redes_sociales
La universidad en_la_era_de_las_redes_sociales
 
Sistemasdenumeracin 090513160704-phpapp01
Sistemasdenumeracin 090513160704-phpapp01Sistemasdenumeracin 090513160704-phpapp01
Sistemasdenumeracin 090513160704-phpapp01
 
Computadoras y su arquitectura
Computadoras y su arquitecturaComputadoras y su arquitectura
Computadoras y su arquitectura
 
Clase 01 historia de la computacion2
Clase 01    historia de la computacion2Clase 01    historia de la computacion2
Clase 01 historia de la computacion2
 

Protocolos de red

  • 1. Índice Protocolos de red..................................................................................................................................3 Que es Protocolo..............................................................................................................................3 Propiedades típicas..........................................................................................................................3 Cómo funcionan los protocolos.......................................................................................................3 El equipo origen..........................................................................................................................3 El equipo de destino....................................................................................................................4 Protocolos encaminables..................................................................................................................4 Jerarquías de protocolos...................................................................................................................4 Jerarquías estándar...........................................................................................................................5 Tipos de Protocolos..............................................................................................................................6 TPC/IP.............................................................................................................................................6 Protocolos a Nivel de Red...........................................................................................................6 TCP:........................................................................................................................................6 IP:...........................................................................................................................................6 Protocolos a Nivel de Aplicación................................................................................................7 Breve Historia del Protocolo TCP/IP..........................................................................................7 Cómo Trabaja TCP/IP......................................................................................................................8 HTTP (Hypertext Transfer Protocol)...............................................................................................9 Transacciones HTTP...................................................................................................................9 Solicitud HTTP.....................................................................................................................10 Comandos........................................................................................................................10 Encabezados....................................................................................................................10 Respuesta HTTP...................................................................................................................11 Encabezados de respuesta................................................................................................12 Los códigos de respuesta.................................................................................................12 Telnet (TELecommunication NETwork) ......................................................................................14 Funcionamiento.........................................................................................................................14 Problemas de seguridad............................................................................................................14 Manejo básico de telnet.............................................................................................................14 File Transfer Protocol....................................................................................................................15 Servidor FTP.............................................................................................................................15 Cliente FTP...............................................................................................................................16 Acceso anónimo...................................................................................................................16 Cliente FTP basado en Web..................................................................................................17 Modos de conexión del cliente FTP..........................................................................................17 Modo activo..........................................................................................................................17 Modo pasivo.........................................................................................................................18 Guía de comandos FTP.............................................................................................................19 POP3, Protocolo de la oficina de correo........................................................................................19 Características...........................................................................................................................19 Órdenes.....................................................................................................................................20 Ventajas.....................................................................................................................................21 Simple Mail Transfer Protocol (SMTP).........................................................................................22 Funcionamiento.........................................................................................................................22 Ordenes básicas de SMTP:.......................................................................................................23 Pag. 1
  • 2. Ejemplo de una comunicación SMTP.......................................................................................23 Seguridad y spam......................................................................................................................24 Domain Name System o DNS(sistema de nombres de dominio) .................................................24 NIC (Network Information Center)..........................................................................................25 Componentes de DNS...............................................................................................................25 Clientes DNS........................................................................................................................25 Servidores DNS....................................................................................................................25 Tipos de consultas............................................................................................................26 Consultas Iterativas (no recursivas)............................................................................26 Consultas Recursivas..................................................................................................26 Zonas de Autoridad..............................................................................................................26 Referencias.........................................................................................................................................27 Pag. 2
  • 3. Protocolos de red Que es Protocolo En informática, un protocolo es un conjunto de reglas usadas por computadoras para comunicarse unas con otras a través de una red por medio de intercambio de mensajes. Son reglas de comunicación que permiten el flujo de información entre equipos que manejan lenguajes distintos, por ejemplo, dos computadores conectados en la misma red pero con protocolos diferentes no podrían comunicarse jamás, para ello, es necesario que ambas "hablen" el mismo idioma. Propiedades típicas Si bien los protocolos pueden variar mucho en propósito y sofisticación, la mayoría especifica una o más de las siguientes propiedades: • Detección de la conexión física subyacente (con cable o inalámbrica), o la existencia de otro punto final o nodo. • Negociación de varias características de la conexión. • Cómo iniciar y finalizar un mensaje. • Procedimientos en el formateo de un mensaje. • Qué hacer con mensajes corruptos o formateados incorrectamente (corrección de errores). • Cómo detectar una pérdida inesperada de la conexión, y qué hacer entonces. • Terminación de la sesión y/o conexión. Cómo funcionan los protocolos La operación técnica en la que los datos son transmitidos a través de la red se puede dividir en dos pasos discretos, sistemáticos. A cada paso se realizan ciertas acciones que no se pueden realizar en otro paso. Cada paso incluye sus propias reglas y procedimientos, o protocolo. Los pasos del protocolo se tienen que llevar a cabo en un orden apropiado y que sea el mismo en cada uno de los equipos de la red. En el equipo origen, estos pasos se tienen que llevar a cabo de arriba hacia abajo. En el equipo de destino, estos pasos se tienen que llevar a cabo de abajo hacia arriba. El equipo origen Los protocolos en el equipo origen: 1. Se dividen en secciones más pequeñas, denominadas paquetes. 2. Se añade a los paquetes información sobre la dirección, de forma que el equipo de destino pueda determinar si los datos le pertenecen. 3. Prepara los datos para transmitirlos a través de la NIC (network interface card) y enviarlos a través del cable de la red. Pag. 3
  • 4. El equipo de destino Los protocolos en el equipo de destino constan de la misma serie de pasos, pero en sentido inverso. 1. Toma los paquetes de datos del cable y los introduce en el equipo a través de la NIC. 2. Extrae de los paquetes de datos toda la información transmitida eliminando la información añadida por el equipo origen. 3. Copia los datos de los paquetes en un búfer para reorganizarlos enviarlos a la aplicación. Los equipos origen y destino necesitan realizar cada paso de la misma forma para que los datos tengan la misma estructura al recibirse que cuando se enviaron. Protocolos encaminables Hasta mediados de los ochenta, la mayoría de las redes de área local (LAN) estaban aisladas. Una LAN servía a un departamento o a una compañía y rara vez se conectaba a entornos más grandes. Sin embargo, a medida que maduraba la tecnología LAN, y la comunicación de los datos necesitaba la expansión de los negocios, las LAN evolucionaron, haciéndose componentes de redes de comunicaciones más grandes en las que las LAN podían hablar entre sí. Los datos se envían de una LAN a otra a lo largo de varios caminos disponibles, es decir, se encaminan. A los protocolos que permiten la comunicación LAN a LAN se les conoce como protocolos encaminables. Debido a que los protocolos encaminables se pueden utilizar para unir varias LAN y crear entornos de red de área extensa, han tomado gran importancia. Jerarquías de protocolos Una jerarquía de protocolos es una combinación de protocolos. Cada nivel de la jerarquía especifica un protocolo diferente para la gestión de una función o de un subsistema del proceso de comunicación. Cada nivel tiene su propio conjunto de reglas. Los protocolos definen las reglas para cada nivel en el modelo OSI: Nivel de Inicia o acepta una petición aplicación Nivel de Añade información de formato, presentación y cifrado presentación al paquete de datos Nivel de sesión Añade información del flujo de tráfico para determinar cuándo se envía el paquete Nivel de Añade información para el control de errores transporte Nivel de red Se añade información de dirección y secuencia al paquete Nivel de enlace Añade información de comprobación de envío y de datos prepara los datos para que vayan a la conexión física Nivel físico El paquete se envía como una secuencia de bits Pag. 4
  • 5. Los niveles inferiores en el modelo OSI especifican cómo pueden conectar los fabricantes sus productos a los productos de otros fabricantes, por ejemplo, utilizando NIC de varios fabricantes en la misma LAN. Cuando utilicen los mismos protocolos, pueden enviar y recibir datos entre sí. Los niveles superiores especifican las reglas para dirigir las sesiones de comunicación (el tiempo en el que dos equipos mantienen una conexión) y la interpretación de aplicaciones. A medida que aumenta el nivel de la jerarquía, aumenta la sofisticación de las tareas asociadas a los protocolos. Jerarquías estándar La industria informática ha diseñado varios tipos de protocolos como modelos estándar de protocolo. Los fabricantes de hardware y software pueden desarrollar sus productos para ajustarse a cada una de las combinaciones de estos protocolos. Los modelos más importantes incluyen: • La familia de protocolos ISO/OSI. • La arquitectura de sistemas en red de IBM (SNA). • Digital DECnet. • Novell NetWare. • Apple Talk de Apple. • El conjunto de protocolos de Internet, TCP/IP. Los protocolos existen en cada nivel de estas jerarquías, realizando las tareas especificadas por el nivel. Sin embargo, las tareas de comunicación que tienen que realizar las redes se agrupan en un tipo de protocolo entre tres. Cada tipo está compuesto por uno o más niveles del modelo OSI. Pag. 5
  • 6. Tipos de Protocolos existen numerosos tipos de protocolos, entre ellos: TPC/IP Las siglas TCP/IP se refieren a dos protocolos de red, que son Transmission Control Protocol (Protocolo de Control de Transmisión) e Internet Protocol (Protocolo de Internet) respectivamente. Estos protocolos pertenecen a un conjunto mayor de protocolos. Dicho conjunto se denomina suite TCP/IP. Los diferentes protocolos de la suite TCP/IP trabajan conjuntamente para proporcionar el transporte de datos dentro de Internet (o Intranet). En otras palabras, hacen posible que accedamos a los distintos servicios de la Red. Estos servicios incluyen, transmisión de correo electrónico, transferencia de ficheros, grupos de noticias, acceso a la World Wide Web, etc. Hay dos clases de protocolos dentro de la suite TCP/IP que son: protocolos a nivel de red y protocolos a nivel de aplicación. Protocolos a Nivel de Red Estos protocolos se encargan de controlar los mecanismos de transferencia de datos. Normalmente son invisibles para el usuario y operan por debajo de la superficie del sistema. Dentro de estos protocolos tenemos: TCP: Controla la división de la información en unidades individuales de datos (llamadas paquetes) para que estos paquetes sean encaminados de la forma más eficiente hacia su punto de destino. En dicho punto, TCP se encargará de reensamblar dichos paquetes para reconstruir el fichero o mensaje que se envió. Por ejemplo, cuando se nos envía un fichero HTML desde un servidor Web, el protocolo de control de transmisión en ese servidor divide el fichero en uno o más paquetes, numera dichos paquetes y se los pasa al protocolo IP. Aunque cada paquete tenga la misma dirección IP de destino, puede seguir una ruta diferente a través de la red. Del otro lado (el programa cliente en nuestro ordenador), TCP reconstruye los paquetes individuales y espera hasta que hayan llegado todos para presentárnoslos como un solo fichero. IP: Se encarga de repartir los paquetes de información enviados entre el ordenador local y los ordenadores remotos. Esto lo hace etiquetando los paquetes con una serie de información, entre la que cabe destacar las direcciones IP de los dos ordenadores. Basándose en esta información, IP garantiza que los datos se encaminarán al destino correcto. Los paquetes recorrerán la red hasta su destino (que puede estar en el otro extremo del planeta) por el camino más corto posible gracias a unos dispositivos denominados encaminadores o routers. Pag. 6
  • 7. Protocolos a Nivel de Aplicación Aquí tenemos los protocolos asociados a los distintos servicios de Internet, como FTP, Telnet, Gopher, HTTP, etc. Estos protocolos son visibles para el usuario en alguna medida. Por ejemplo, el protocolo FTP (File Transfer Protocol) es visible para el usuario. El usuario solicita una conexión a otro ordenador para transferir un fichero, la conexión se establece, y comienza la transferencia. Durante dicha transferencia, es visible parte del intercambio entre la máquina del usuario y la máquina remota (mensajes de error y de estado de la transferencia, como por ejemplo cuantos bytes del fichero se han transferido en un momento dado). Breve Historia del Protocolo TCP/IP A principios de los años 60, varios investigadores intentaban encontrar una forma de compartir recursos informáticos de una forma más eficiente. En 1961, Leonard Klienrock introduce el concepto de Conmutación de Paquetes (Packet Switching, en inglés). La idea era que la comunicación entre ordenadores fuese dividida en paquetes. Cada paquete debería contener la dirección de destino y podría encontrar su propio camino a través de la red. En 1969 la Agencia de Proyectos de Investigación Avanzada (Defense Advanced Research Projects Agency o DARPA) del Ejército de los EEUU desarrolla la ARPAnet. La finalidad principal de esta red era la capacidad de resistir un ataque nuclear de la URSS para lo que se pensó en una administración descentralizada. De este modo, si algunos ordenadores eran destruidos, la red seguiría funcionando. Aunque dicha red funcionaba bien, estaba sujeta a algunas caídas periódicas del sistema. De este modo, la expansión a largo plazo de esta red podría resultar difícil y costosa. Se inició entonces una búsqueda de un conjunto de protocolos más fiables para la misma. Dicha búsqueda finalizó, a mediados de los 70, con el desarrollo de TCP/IP. TCP/IP tenia (y tiene) ventajas significativas respecto a otros protocolos. Por ejemplo, consume pocos recursos de red. Además, podía ser implementado a un coste mucho menor que otras opciones disponibles entonces. Gracias a estos aspectos, TCP/IP comenzó a hacerse popular. En 1983, TCP/IP se integró en la versión 4.2 del sistema operativo UNIX de Berkeley y la integración en versiones comerciales de UNIX vino pronto. Así es como TCP/IP se convirtió en el estándar de Internet. En la actualidad, TCP/IP se usa para muchos propósitos, no solo en Internet. Por ejemplo, a menudo se diseñan intranets usando TCP/IP. En tales entornos, TCP/IP ofrece ventajas significativas sobre otros protocolos de red. Una de tales ventajas es que trabaja sobre una gran variedad de hardware y sistemas operativos. De este modo puede crearse fácilmente una red heterogénea usando este protocolo. Dicha red puede contener estaciones Mac, PC compatibles, estaciones Sun, servidores Novell, etc. Todos estos elementos pueden comunicarse usando la misma suite de protocolos TCP/IP. La siguiente tabla muestra una lista de plataformas que soportan TCP/IP: Plataforma Soporte de TCP/IP UNIX Nativo Windows 7 Nativo Windows NT Nativo Macintosh MacTCP u OpenTransport (Sys 7.5+) LINUX Nativo Pag. 7
  • 8. Cómo Trabaja TCP/IP TCP/IP opera a través del uso de una pila. Dicha pila es la suma total de todos los protocolos necesarios para completar una transferencia de datos entre dos máquinas (así como el camino que siguen los datos para dejar una máquina o entrar en la otra). La pila está dividida en capas, como se ilustra en la figura siguiente: EQUIPO SERVIDOR O CLIENTE | Capa de Cuando un usuario inicia una transferencia de datos, Aplicaciones esta capa pasa la solicitud a la Capa de Transporte. | Capa de La Capa de Transporte añade una cabecera y pasa Transporte los datos a la Capa de Red. | Capa de En la Capa de Red, se añaden las direcciones IP de Red origen y destino para el enrrutamiento de datos. | Capa de Ejecuta un control de errores sobre el flujo de datos Enlace de entre los protocolos anteriores y la Capa Física. Datos | Ingresa o egresa los datos a través del medio físico, Capa que puede ser Ethernet vía coaxial, PPP vía módem, Física etc. Después de que los datos han pasado a través del proceso ilustrado en la figura anterior, viajan a su destino en otra máquina de la red. Allí, el proceso se ejecuta al revés (los datos entran por la capa física y recorren la pila hacia arriba). Cada capa de la pila puede enviar y recibir datos desde la capa adyacente. Cada capa está también asociada con múltiples protocolos que trabajan sobre los datos. Pag. 8
  • 9. HTTP (Hypertext Transfer Protocol) Es el protocolo usado en cada transacción de la World Wide Web. HTTP fue desarrollado por el World Wide Web Consortium y la Internet Engineering Task Force, colaboración que culminó en 1999. HTTP define la sintaxis y la semántica que utilizan los elementos de software de la arquitectura web (clientes, servidores) para comunicarse. Es un protocolo orientado a transacciones y sigue el esquema petición-respuesta entre un cliente y un servidor. Al cliente que efectúa la petición (un navegador web) se lo conoce como "user agent" (agente del usuario). A la información transmitida se la llama recurso y se la identifica mediante un localizador uniforme de recursos (URL). Los recursos pueden ser archivos, el resultado de la ejecución de un programa, una consulta a una base de datos, la traducción automática de un documento, etc. HTTP es un protocolo sin estado, es decir, que no guarda ninguna información sobre conexiones anteriores. El desarrollo de aplicaciones web necesita frecuentemente mantener estado. Para esto se usan las cookies, que es información que un servidor puede almacenar en el sistema cliente. Esto le permite a las aplicaciones web instituir la noción de "sesión", y también permite rastrear usuarios ya que las cookies pueden guardarse en el cliente por tiempo indeterminado. Transacciones HTTP El propósito del protocolo HTTP es permitir la transferencia de archivos (principalmente, en formato HTML). entre un navegador (el cliente) y un servidor web (denominado, entre otros, httpd en equipos UNIX) localizado mediante una cadena de caracteres denominada dirección URL. La comunicación entre el navegador y el servidor se lleva a cabo en dos etapas: • El navegador realiza una Solicitud HTTP • El servidor procesa la solicitud y después envía una Respuesta HTTP En realidad, la comunicación se realiza en más etapas si se considera el procesamiento de la solicitud en el servidor. Dado que sólo nos ocupamos del protocolo HTTP, no se explicará la parte del procesamiento en el servidor en esta sección del artículo. Si este tema les interesa, puede consultar el articulo sobre el tratamiento de CGI. Pag. 9
  • 10. Solicitud HTTP Una solicitud HTTP es un conjunto de líneas que el navegador envía al servidor. Incluye: • Una línea de solicitud: es una línea que especifica el tipo de documento solicitado, el método que se aplicará y la versión del protocolo utilizada. La línea está formada por tres elementos que deben estar separados por un espacio: • el método • la dirección URL • la versión del protocolo utilizada por el cliente (por lo general, HTTP/1.0) • Los campos del encabezado de solicitud: es un conjunto de líneas opcionales que permiten aportar información adicional sobre la solicitud y/o el cliente (navegador, sistema operativo, etc.). Cada una de estas líneas está formada por un nombre que describe el tipo de encabezado, seguido de dos puntos (:) y el valor del encabezado. • El cuerpo de la solicitud: es un conjunto de líneas opcionales que deben estar separadas de las líneas precedentes por una línea en blanco y, por ejemplo, permiten que se envíen datos por un comando POST durante la transmisión de datos al servidor utilizando un formulario. Por lo tanto, una solicitud HTTP posee la siguiente sintaxis (<crlf> significa retorno de carro y avance de línea): MÉTODO VERSIÓN URL<crlf> ENCABEZADO: Valor<crlf> . . . ENCABEZADO: Valor<crlf> Línea en blanco <crlf> CUERPO DE LA SOLICITUD A continuación se encuentra un ejemplo de una solicitud HTTP: GET http://www.google.com.py HTTP/1.0 Accept : Text/html If-Modified-Since : Saturday, 15-January-2000 14:37:11 GMT User-Agent : Mozilla/4.0 (compatible; MSIE 5.0; Windows 7) Comandos Comando Descripción GET Solicita el recurso ubicado en la URL especificada HEAD Solicita el encabezado del recurso ubicado en la URL especificada POST Envía datos al programa ubicado en la URL especificada PUT Envía datos a la URL especificada DELETE Borra el recurso ubicado en la URL especificada Encabezados Nombre del Descripción encabezado Tipo de contenido aceptado por el navegador (por ejemplo, texto/html). Accept Consulte Tipos de MIME Pag. 10
  • 11. Accept-Charset Juego de caracteres que el navegador espera Accept-Encoding Codificación de datos que el navegador acepta Accept-Language Idioma que el navegador espera (de forma predeterminada, inglés) Authorization Identificación del navegador en el servidor Content-Encoding Tipo de codificación para el cuerpo de la solicitud Content-Language Tipo de idioma en el cuerpo de la solicitud Content-Length Extensión del cuerpo de la solicitud Tipo de contenido del cuerpo de la solicitud (por ejemplo, texto/html). Content-Type Consulte Tipos de MIME Date Fecha en que comienza la transferencia de datos Forwarded Utilizado por equipos intermediarios entre el navegador y el servidor From Permite especificar la dirección de correo electrónico del cliente Permite especificar que debe enviarse el documento si ha sido From modificado desde una fecha en particular Link Vínculo entre dos direcciones URL Orig-URL Dirección URL donde se originó la solicitud Referer Dirección URL desde la cual se realizó la solicitud Cadena con información sobre el cliente, por ejemplo, el nombre y la User-Agent versión del navegador y el sistema operativo Respuesta HTTP Una respuesta HTTP es un conjunto de líneas que el servidor envía al navegador. Está constituida por: Incluye: • Una línea de estado: es una línea que especifica la versión del protocolo utilizada y el estado de la solicitud en proceso mediante un texto explicativo y un código. La línea está compuesta por tres elementos que deben estar separados por un espacio: La línea está formada por tres elementos que deben estar separados por un espacio: • la versión del protocolo utilizada • el código de estado • el significado del código • Los campos del encabezado de respuesta: es un conjunto de líneas opcionales que permiten aportar información adicional sobre la respuesta y/o el servidor. Cada una de estas líneas está compuesta por un nombre que califica el tipo de encabezado, seguido por dos puntos (:) y por el valor del encabezado Cada una de estas líneas está formada por un nombre que describe el tipo de encabezado, seguido de dos puntos (:) y el valor del encabezado. • El cuerpo de la respuesta: contiene el documento solicitado. Por lo tanto, una respuesta HTTP posee la siguiente sintaxis (<crlf> significa retorno de carro y avance de línea): Pag. 11
  • 12. VERSIÓN-HTTP CÓDIGO EXPLICACIÓN <crlf> ENCABEZADO: Valor<crlf> . . . ENCABEZADO: Valor<crlf> Línea en blanco <crlf> CUERPO DE LA RESPUESTA A continuación se encuentra un ejemplo de una respuesta HTTP: HTTP/1.0 200 OK Date: Sat, 15 Jan 2000 14:37:12 GMT Server : Microsoft-IIS/2.0 Content- Type : text/HTML Content-Length : 1245 Last-Modified : Fri, 14 Jan 2000 08:25:13 GMT Encabezados de respuesta Nombre del encabezado Descripción Content-Encoding Tipo de codificación para el cuerpo de la respuesta Content-Language Tipo de idioma en el cuerpo de la respuesta Content-Length Extensión del cuerpo de la respuesta Tipo de contenido del cuerpo de la respuesta (por ejemplo, texto/html). Content-Type Consulte Tipos de MIME Date Fecha en que comienza la transferencia de datos Expires Fecha límite de uso de los datos Forwarded Utilizado por equipos intermediarios entre el navegador y el servidor Location Redireccionamiento a una nueva dirección URL asociada con el documento Server Características del servidor que envió la respuesta Los códigos de respuesta Son los códigos que se ven cuando el navegador no puede mostrar la página solicitada. El código de respuesta está formado por tres dígitos: el primero indica el estado y los dos siguientes explican la naturaleza exacta del error. Código Mensaje Descripción Mensaje de 10x Estos códigos no se utilizan en la versión 1.0 del protocolo información 20x Éxito Estos códigos indican la correcta ejecución de la transacción 200 OK La solicitud se llevó a cabo de manera correcta Sigue a un comando POST e indica el éxito, la parte restante del 201 CREATED cuerpo indica la dirección URL donde se ubicará el documento creado recientemente. La solicitud ha sido aceptada, pero el procedimiento que sigue no se 202 ACCEPTED ha llevado a cabo PARTIAL Cuando se recibe este código en respuesta a un comando de GET 203 INFORMATION indica que la respuesta no está completa. El servidor ha recibido la solicitud, pero no hay información de 204 NO RESPONSE respuesta El servidor le indica al navegador que borre el contenido en los 205 RESET CONTENT campos de un formulario Pag. 12
  • 13. Es una respuesta a una solicitud que consiste en el encabezado range. 206 PARTIAL CONTENT El servidor debe indicar el encabezado content-Range Estos códigos indican que el recurso ya no se encuentra en la 30x Redirección ubicación especificada 301 MOVED Los datos solicitados han sido transferidos a una nueva dirección Los datos solicitados se encuentran en una nueva dirección URL, 302 FOUND pero, no obstante, pueden haber sido trasladados Significa que el cliente debe intentarlo con una nueva dirección; es 303 METHOD preferible que intente con otro método en vez de GET Si el cliente llevó a cabo un comando GET condicional (con la solicitud relativa a si el documento ha sido modificado desde la 304 NOT MODIFIED última vez) y el documento no ha sido modificado, este código se envía como respuesta. 40x Error debido al cliente Estos códigos indican que la solicitud es incorrecta La sintaxis de la solicitud se encuentra formulada de manera errónea 400 BAD REQUEST o es imposible de responder Los parámetros del mensaje aportan las especificaciones de 401 UNAUTHORIZED formularios de autorización que se admiten. El cliente debe reformular la solicitud con los datos de autorización correctos PAYMENT El cliente debe reformular la solicitud con los datos de pago 402 REQUIRED correctos 403 FORBIDDEN El acceso al recurso simplemente se deniega Un clásico. El servidor no halló nada en la dirección especificada. Se 404 NOT FOUND ha abandonado sin dejar una dirección para redireccionar... :) Error debido al 50x Estos códigos indican que existe un error interno en el servidor servidor El servidor encontró una condición inesperada que le impide seguir 500 INTERNAL ERROR con la solicitud (una de esas cosas que les suceden a los servidores...) 501 NOT IMPLEMENTED El servidor no admite el servicio solicitado (no puede saberlo todo...) El servidor que actúa como una puerta de enlace o proxy ha recibido 502 BAD GATEWAY una respuesta no válida del servidor al que intenta acceder El servidor no puede responder en ese momento debido a que se SERVICE 503 encuentra congestionado (todas las líneas de comunicación se UNAVAILABLE encuentran congestionadas, inténtelo de nuevo más adelante) La respuesta del servidor ha llevado demasiado tiempo en relación al 504 GATEWAY TIMEOUT tiempo de espera que la puerta de enlace podía admitir (excedió el tiempo asignado...) Pag. 13
  • 14. Telnet (TELecommunication NETwork) Es uno de los servicios más antiguos de Internet, data de la época de ARPANET, y se utiliza para conectar ("login") con un equipo remoto a través de la Red, de forma que el ordenador cliente se comporta como una terminal conectada (on-line) con el ordenador remoto. Todo lo que se necesita es un cliente Telnet (un programa especial). Utilizando la terminología informática anterior a la Web, diríamos que un cliente telnet es en realidad un programa de emulación de terminal para teleproceso adaptado al sistema de Internet, es decir, al protocolo TPC/IP. Para que la conexión funcione, como en todos los servicios de Internet, la máquina a la que se acceda debe tener un programa especial que reciba y gestione las conexiones. El puerto que se utiliza generalmente es el 23. Funcionamiento Telnet sólo sirve para acceder en modo terminal, es decir, sin gráficos, pero fue una herramienta muy útil para arreglar fallos a distancia, sin necesidad de estar físicamente en el mismo sitio que la máquina que los tenía. También se usaba para consultar datos a distancia, como datos personales en máquinas accesibles por red, información bibliográfica, etc. Aparte de estos usos, en general telnet se ha utilizado (y aún hoy se puede utilizar en su variante SSH) para abrir una sesión con una máquina UNIX, de modo que múltiples usuarios con cuenta en la máquina, se conectan, abren sesión y pueden trabajar utilizando esa máquina. Es una forma muy usual de trabajar con sistemas UNIX. Problemas de seguridad Su mayor problema es de seguridad, ya que todos los nombres de usuario y contraseñas necesarias para entrar en las máquinas viajan por la red como texto plano (cadenas de texto sin cifrar). Esto facilita que cualquiera que espíe el tráfico de la red pueda obtener los nombres de usuario y contraseñas, y así acceder él también a todas esas máquinas. Por esta razón dejó de usarse, casi totalmente, hace unos años, cuando apareció y se popularizó el SSH, que puede describirse como una versión cifrada de telnet -actualmente se puede cifrar toda la comunicación del protocolo durante el establecimiento de sesión (RFC correspondiente, en inglés- si cliente y servidor lo permiten, aunque no se tienen ciertas funcionalidad extra disponibles en SSH). Manejo básico de telnet Para iniciar una sesión con un intérprete de comandos de otro ordenador, puede emplear el comando telnet seguido del nombre o la dirección IP de la máquina en la que desea trabajar, por ejemplo si desea conectarse a la máquina facitec.mifacultad.edu.com deberá teclear: telnet facitec.mifacultad.edu.com. y para conectarse con la dirección IP 1.2.3.4 deberá utilizar: telnet 1.2.3.4. Pag. 14
  • 15. Una vez conectado, podrá ingresar el nombre de usuario y contraseña remoto para iniciar una sesión en modo texto a modo de consola virtual (ver Lectura Sistema de usuarios y manejo de clave). La información que transmita (incluyendo su clave) no será protegida o cifrada y podría ser vista en otros computadores por los que se transite la información (la captura de estos datos se realiza con un packet sniffer). Una alternativa más segura para telnet, pero que requiere más recursos del computador, es SSH. Este cifra la información antes de transmitirla, autentica la máquina a la cual se conecta y puede emplear mecanismos de autenticación de usuarios más seguros. Actualmente hay sitios para hackers en los que se entra por telnet y se van sacando las password para ir pasando de nivel, ese uso de telnet aun es vigente. File Transfer Protocol FTP (siglas en inglés de File Transfer Protocol, 'Protocolo de Transferencia de Archivos')es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP 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 TPC/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. 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). Pag. 15
  • 16. 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. 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 (Hypertext Transfer Protocol)) para almacenar información textual destinada a la lectura en línea. Pag. 16
  • 17. 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. 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. 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. 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. Pag. 17
  • 18. 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. Pag. 18
  • 19. Guía de comandos FTP impresión de caracteres # a medida que se transfieren archivos, a modo de barra de progreso. -help: se utiliza para mostrar una lista de comandos que podemos utilizar en el FTP. -status: nos muestra el estado actual del FTP. -binary: cambia de modo ASCII a modo binario. -ASCII: cambia de modo binario a modo ASCII -type: nos muestra el modo en el que estamos ya sea binario o ASCII -user: nos permite reiniciar el FTP con otro usuario. -ls: nos muestra una lista con todos los archivos que hay en el FTP en el directorio actual. -pwd: nos muestra la ruta actual, donde estamos trabajando. -cd: nos cambia de directorio. - mkdir: creamos un directorio en el directorio actual. -rmdir: elimina un directorio en el directorio actual. -get: este comando nos sirve para recuperar archivos del FTP -put: nos manda un archivo del ordenador al servidor. -open: cierra la sesión actual y abre una nueva sesión en otro FTP -close: cierra la sesión, pero deja el software FTP activo. -bye: cierra o desconecta el FTP y lo deja en modo inactivo. -quit: cierra o desconecta el FTP y lo deja en modo inactivo. POP3, Protocolo de la oficina de correo El protocolo original fue llamado POP en 1984. En la versión 2 (1985), el POP2, se le asignó el puerto 109 como predeterminado. Luego, en 1988, se lanza la versión 3, POP3 (revisada múltiples veces). Se utilizaen clientes locales de correo para obtener los mensajes de correo electrónico almacenados en un servidor remoto. Es un protocolo de nivel de aplicación en el Modelo OSI. Las versiones del protocolo POP (informalmente conocido como POP1) y POP2 se han hecho obsoletas debido a las últimas versiones de POP3. En general cuando uno se refiere al término POP, nos referimos a POP3 dentro del contexto de protocolos de correo electrónico. Características POP3 está diseñado para recibir correo, no para enviarlo; le permite a los usuarios con conexiones intermitentes o muy lentas (tales como las conexiones por módem), descargar su correo electrónico mientras tienen conexión y revisarlo posteriormente incluso estando desconectados. Cabe Pag. 19
  • 20. mencionar que la mayoría de los clientes de correo incluyen la opción de dejar los mensajes en el servidor, de manera tal que, un cliente que utilice POP3 se conecta, obtiene todos los mensajes, los almacena en la computadora del usuario como mensajes nuevos, los elimina del servidor y finalmente se desconecta. En contraste, el protocolo IMAP permite los modos de operación conectado y desconectado. Los clientes de correo electrónico que utilizan IMAP dejan por lo general los mensajes en el servidor hasta que el usuario los elimina directamente. Esto y otros factores hacen que la operación de IMAP permita a múltiples clientes acceder al mismo buzón de correo. La mayoría de los clientes de correo electrónico soportan POP3 o IMAP; sin embargo, solo unos cuantos proveedores de internet ofrecen IMAP como valor agregado de sus servicios. Al igual que otros viejos protocolos de internet, POP3 utilizaba un mecanismo de firmado sin cifrado. La transmisión de contraseñas de POP3 en texto plano aún se da. En la actualidad POP3 cuenta con diversos métodos de autenticación que ofrecen una diversa gama de niveles de protección contra los accesos ilegales al buzón de correo de los usuarios. Uno de estos es APOP, el cual utiliza funciones MD5 para evitar los ataques de contraseñas. Mozilla, Eudora, Novell Evolution así como Mozilla Thunderbird implementan funciones APOP. Órdenes Para establecer una conexión a un servidor POP, el cliente de correo abre una conexión TCP en el puerto 110 del servidor. Cuando la conexión se ha establecido, el servidor POP envía al cliente POP y después las dos máquinas se envían entre sí otras órdenes y respuestas que se especifican en el protocolo. Como parte de esta comunicación, al cliente POP se le pide que se autentifique (Estado de autenticación), donde el nombre de usuario y la contraseña del usuario se envían al servidor POP. Si la autenticación es correcta, el cliente POP pasa al Estado de transacción, en este estado se pueden utilizar órdenes LIST, RETR y DELE para mostrar, descargar y eliminar mensajes del servidor, respectivamente. Los mensajes definidos para su eliminación no se quitan realmente del servidor hasta que el cliente POP envía la orden QUIT para terminar la sesión. En ese momento, el servidor POP pasa al Estado de actualización, fase en la que se eliminan los mensajes marcados y se limpian todos los recursos restantes de la sesión. Es posible conectarse manualmente al servidor POP3 haciendo Telnet al puerto 110. Es muy útil cuando envían un mensaje con un fichero muy largo que no se quiere recibir. • USER <nombre> Identificación de usuario (Solo se realiza una vez). • PASS <password> Envía la clave del servidor. • STAT Da el número de mensajes no borrados en el buzón y su longitud total. • LIST Muestra todos los mensajes no borrados con su longitud. • RETR <número> Solicita el envío del mensaje especificando el número (no se borra del buzón). • TOP <número> <líneas> Muestra la cabecera y el número de líneas requerido del mensaje especificando el número. Pag. 20
  • 21. • DELE <número> Borra el mensaje especificando el número. • RSET Recupera los mensajes borrados (en la conexión actual). • UIDL <número> Devuelve una cadena identificadora del mensaje persistente a través de las sesiones. Si no se especifica <número> se devuelve una lista con los números de mensajes y su cadena identificadora de los mensajes no borrados. • QUIT Salir. Ventajas La ventaja con otros protocolos es que entre servidor-cliente no se tienen que enviar tantas órdenes para la comunicación entre ellos. El protocolo POP también funciona adecuadamente si no se utiliza una conexión constante a Internet o a la red que contiene el servidor de correo. Pag. 21
  • 22. Simple Mail Transfer Protocol (SMTP) Protocolo Simple de Transferencia de Correo, es un protocolo de la capa de aplicación. Protocolo de red basado en textos utilizados para el intercambio de mensajes de correo electrónico entre computadoras u otros dispositivos (PDA's, teléfonos móviles, etc.). En 1982 se diseñó el primer sistema para intercambiar correos electrónicos en ARPANET, con el tiempo se ha convertido en uno de los protocolos más usados en internet. Para adaptarse a las nuevas necesidades surgidas por el crecimiento y popularidad de internet se han hecho varias ampliaciones a este protocolo, como por ejemplo enviar texto con formato. Funcionamiento SMTP se basa en el modelo cliente-servidor, donde un cliente envía un mensaje a uno o varios receptores. La comunicación entre el cliente y el servidor consiste enteramente en líneas de texto compuestas por caracteres ASCII. El tamaño máximo permitido para estas líneas es de 1000 caracteres. Las respuestas del servidor constan de un código numérico de tres dígitos, seguido de un texto explicativo. El número va dirigido a un procesado automático de la respuesta por autómata, mientras que el texto permite que un humano interprete la respuesta. En el protocolo SMTP todas las órdenes, réplicas o datos son líneas de texto, delimitadas por el carácter <CRLF>. Todas las réplicas tienen un código numérico al comienzo de la línea. En el conjunto de protocolos TCP/IP, el SMTP va por encima del TCP, usando normalmente el puerto 25 en el servidor para establecer la conexión. Cuando un cliente establece una conexión con el servidor SMTP, espera a que éste envíe un mensaje “220 Service ready” o “421 Service non available” • Se envía un HELO desde el cliente. Con ello el servidor se identifica. Esto puede usarse para comprobar si se conectó con el servidor SMTP correcto. • El cliente comienza la transacción del correo con la orden MAIL FROM. Como argumento de esta orden se puede pasar la dirección de correo al que el servidor notificará cualquier fallo en el envío del correo (Por ejemplo, MAIL FROM:<fuente@host0>). Luego si el servidor comprueba que el origen es valido, el servidor responde “250 OK”. • Ya le hemos dicho al servidor que queremos mandar un correo, ahora hay que comunicarle a quien. La orden para esto es RCPT TO:<destino@host>. Se pueden mandar tantas órdenes RCPT como destinatarios del correo queramos. Por cada destinatario, el servidor contestará “250 OK” o bien “550 No such user here”, si no encuentra al destinatario. • Una vez enviados todos los RCPT, el cliente envía una orden DATA para indicar que a continuación se envían los contenidos del mensaje. El servidor responde “354 Start mail input, end with <CRLF>.<CRLF>” Esto indica al cliente como ha de notificar el fin del mensaje. • Ahora el cliente envía el cuerpo del mensaje, línea a línea. Una vez finalizado, se termina con un <CRLF>.<CRLF> (la última línea será un punto), a lo que el servidor contestará “250 OK”, o un mensaje de error apropiado. Pag. 22
  • 23. • Tras el envío, el cliente, si no tiene que enviar más correos, con la orden QUIT corta la conexión. También puede usar la orden TURN, con lo que el cliente pasa a ser el servidor, y el servidor se convierte en cliente. Finalmente, si tiene más mensajes que enviar, repite el proceso hasta completarlos. Ordenes básicas de SMTP: • HELO, para abrir una sesión con el servidor • MAIL FROM, para indicar quien envía el mensaje • RCPT TO, para indicar el destinatario del mensaje • DATA, para indicar el comienzo del mensaje, éste finalizará cuando haya una línea únicamente con un punto. • QUIT, para cerrar la sesión • RSET Aborta la transacción en curso y borra todos los registros. • SEND Inicia una transacción en la cual el mensaje se entrega a una terminal. • SOML El mensaje se entrega a un terminal o a un buzón. • SAML El mensaje se entrega a un terminal y a un buzón. • VRFY Solicita al servidor la verificación del argumento. • EXPN Solicita al servidor la confirmación del argumento. • HELP Permite solicitar información sobre un comando. • NOOP Se emplea para reiniciar los temporizadores. • TURN Solicita al servidor que intercambien los papeles. Ejemplo de una comunicación SMTP En primer lugar se ha de establecer una conexión entre el emisor (cliente) y el receptor (servidor). Esto puede hacerse automáticamente con un programa cliente de correo o mediante un cliente telnet. En el siguiente ejemplo se muestra una conexión típica. Se nombra con la letra C al cliente y con S al servidor. S: 220 Servidor ESMTP C: HELO miequipo.midominio.com S: 250 Hello, please to meet you C: MAIL FROM: <yo@midominio.com> S: 250 Ok C: RCPT TO: <destinatario@sudominio.com> S: 250 Ok C: DATA S: 354 End data with <CR><LF>.<CR><LF> C: Subject: Campo de asunto C: From: yo@midominio.com C: To: destinatario@sudominio.com C: C: Hola, C: Esto es una prueba. C: Hasta luego. C: C: . S: 250 Ok: queued as 12345 C: quit S: 221 Bye Pag. 23
  • 24. Seguridad y spam Una de las limitaciones del SMTP original es que no facilita métodos de autenticación a los emisores, así que se definió la extensión SMTP-AUTH. A pesar de esto, el spam es aún el mayor problema. No se cree que las extensiones sean una forma práctica para prevenirlo. Internet Mail 2000 es una de las propuestas para reemplazarlo. Domain Name System o DNS(sistema de nombres de dominio) el cuál nació en la década de los 80's. Creado por Paúl Mockapetris en colaboración con Jon Postel de la Universidad del Sur de California y posteriormente, Paúl Vixie. Juntos desarrollaron lo que hasta ahora conocemos como el DNS (BIND, Barkeley Internet Name Domain), un sistema cliente/servidor, distribuido y jerárquico. Se crearon entonces los nombres de dominio genéricos de primer nivel (gTLD, generic Top-level Domain), .com .net y .org, es decir, se habían creado estas tres clasificaciones con el fin de ubicar el tipo de entidades que buscaban tener presencia en Internet. Además de estos gTLD se empezó por delegar los sufijos nacionales (nTLD, national Top-level Domain) a los países que se fueran conectando a la red. 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. 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 (File Transfer Protocol) de facitec.py es 192.64.128.4, la mayoría de la gente llega a este equipo especificando ftp.facitec.py 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. Cada dominio es como si terminase con un “.” Por eso nuestro dominio seria “www.facitec.py” y el punto al final es el elemento raíz de nuestro árbol y lo que indica al cliente que debe de empezar la búsqueda en los root Server. Estos root Server son los que tienen los registros TLD que son los dominios de nivel superior ósea los que no pertenecen a otro dominio, como son “com, org, net, es, etc.” Actualmente hay 13 TLD en todo el mundo y 10 de ellos se encuentran en estados unidos, uno en Estocolmo, otro en Japón, y el último en Londres. Si alguna catástrofe hiciese que estos 13 servidores dejasen de operar provocaría un gran apagón de Internet y causaría estragos a nivel mundial. Pag. 24
  • 25. NIC (Network Information Center) NIC (acrónimo de Network Information Center o Centro de Información sobre la Red) es una institución encargada de asignar los nombres de dominio en Internet, ya sean nombres de dominio genéricos, o por países, permitiendo personas, o empresas, montar sitios de Internet a través de un ISP, mediante un DNS. Técnicamente existe un NIC por cada país en el mundo, y cada uno de éstos es responsable por todos los dominios con la terminación correspondiente a su país. Por ejemplo: NIC Paraguay es la entidad encargada de gestionar todos los dominios con terminación .py, la cual es la terminación correspondiente asignada a los dominios de Paraguay. Componentes de DNS. DNS opera a través de tres componentes: Clientes DNS, Servidores DNS, y Zonas de Autoridad. Clientes DNS. Son programas que ejecuta un usuario y que generan peticiones de consulta para resolver nombres. Básicamente preguntan por la dirección IP que corresponde a un nombre determinado. Servidores DNS. Son servicios que contestan las consultas realizadas por los Clientes DNS. Hay dos tipos de servidores de nombres: • Servidor Maestro: También denominado Primario. Obtiene los datos del dominio a partir de un archivo alojado en el mismo servidor. • Servidor Esclavo: También denominado Secundario. Al iniciar obtiene los datos del dominio a través de un Servidor Maestro (o primario), realizando un proceso denominado transferencia de zona. Un gran número de problemas de operación de servidores DNS se atribuyen a las pobres opciones de servidores secundarios para las zona de DNS. De acuerdo al RFC 2182, el DNS requiere que al menos tres servidores existan para todos los dominios delegados (o zonas). Una de las principales razones para tener al menos tres servidores para cada zona, es permitir que la información de la zona misma esté disponible siempre, y de forma confiable, hacia los Clientes DNS, a través de Internet cuando un servidor DNS de dicha zona falle, esté fuera de servicio, y/o esté inalcanzable. Contar con múltiples servidores también facilita la propagación de la zona y mejoran la eficiencia del sistema en general al brindar opciones a los Clientes DNS si acaso encontraran dificultades para realizar una consulta en un Servidor DNS. En otras palabras: tener múltiples servidores para una zona permite contar con redundancia, y respaldo, del servicio. Pag. 25
  • 26. Tipos de consultas Consultas Iterativas (no recursivas) El cliente hace una consulta al Servidor DNS, y éste le responde con la mejor respuesta que pueda darse basada sobre su caché, o en las zonas locales. Si es imposible dar una respuesta, la consulta se reenvía hacia otro Servidor DNS repitiéndose este proceso hasta encontrar al Servidor DNS que tiene la Zona de Autoridad capaz de resolver la consulta. Consultas Recursivas El Servidor DNS asume toda la carga de proporcionar una respuesta completa para la consulta realizada por el Cliente DNS. El Servidor DNS desarrolla entonces Consultas Iterativas separadas hacia otros Servidores DNS (en lugar de hacerlo el Cliente DNS) para obtener la respuesta solicitada. Zonas de Autoridad. Permiten al Servidor Maestro o Primario cargar la información de una zona. Cada Zona de Autoridad abarca al menos un dominio, y, posiblemente, sus sub-dominios, si estos últimos son imposibles de delegar a otras zonas de autoridad. Pag. 26
  • 27. Referencias ✔ http://es.wikipedia.org/wiki/HTTP ✔ http://es.kioskea.net/contents/internet/http.php3 ✔ http://arturocasupa.galeon.com/ ✔ http://es.kioskea.net/contents/internet/telnet.php3 ✔ http://es.wikipedia.org/wiki/File_Transfer_Protocol ✔ http://es.wikipedia.org/wiki/Post_Office_Protocol ✔ http://www.alcancelibre.org/staticpages/index.php/introduccion-protocolo-dns ✔ http://es.wikipedia.org/wiki/Domain_Name_System Pag. 27