Mortuux

Diario de un estudiante geek. Informática, tecnología, programación, redes, sistemas operativos, bases de datos…

Archivos en la Categoría: Redes

Reducir el tiempo de espera para utilizar el DNS Secundario. Balanceo de carga

En el archivo /etc/resolv.conf se encuentran definidos los servidores dns, por ejemplo:

nameserver 192.168.1.10

nameserver 192.168.1.11

Éstos actuarían como dns primario y secundario respectivamente. En caso de que falle el primero, se utilizaría el segundo.

El problema se encuentra en que el tiempo de espera (timeout) es alto, alrededor de unos 5 segundos, por lo que la utilización del segundo dns no será instantánea.

Esto se puede solventar utilizando la directiva options y el parámetro timeout:

nameserver 192.168.1.10

nameserver 192.168.1.11

options timeout:1

Aquí lo que estamos indicando es que el tiempo de espera, sea de 1 segundo.

Si queremos distribuir la carga entre los dos servidores lo haremos de la siguiente manera:

nameserver 192.168.1.10

nameserver 192.168.1.11

options timeout:1 rotate attempts:1

Así, la carga se distribuirá entre los dos servidores evitando saturar siempre el primero.

Vía | rm-rf.es

Script para obtener la dirección ip de uno o varios websites.

Si por algún casual como pasó con Wikileaks, a nuestros websites favoritos les quitan el dominio, sólo podremos acceder mediante ip.

He escrito un sencillo script para obtener la ip de nuestros websites favoritos:

Tiene tres modos

1 – Obtener dirección ip de un sólo dominio

2 – Importar un archivo de texto con varios dominios

3 – Importar un archivo OPML de Google Reader.

Aquí os dejo el enlace para descargar el script: Descargar script

Para ejecutarlo:

chmod +x getip.sh

./getip.sh

Estadísticas del consumo de datos de una interfaz de red.

Debo admitir que soy un gran fan de las estadísticas, así que me gusta también tener controlado el tráfico web de mis descargas.

En Windows utilizo Jc Net Meter, y en linux vnstat

Para instalar vnstat hacemos lo siguiente:

# apt-get install vnstat

Y una vez tengamos datos suficientes, bastará con escribir ‘vnstat’ en la terminal para que nos muestre la cantidad de GB descargados y que nos haga una estimación.

Túnel para el tráfico web. Proxy socks

A través de un compañero de clase, descubrí esta forma de tunelizar nuestro tráfico web de una red insegura. Este túnel encripta cualquier dato, por lo que estaría fuera del alcance de cualquier sniffer también.

Necesitaremos dos máquinas: Una será el servidor SSH que hará el forwarding de puertos, y otro será la máquina que creará el túnel hacia el servidor

En el servidor debe estar instalado openssh.

# apt-get install openssh

En el servidor, editamos el archivo /etc/ssh/sshd_config y al final añadimos las siguientes líneas:

AllowTcpForwarding yes

GatewayPorts yes

Y guardamos el archivo.

Ahora tenemos activado el forwarding de puertos en el servidor.

Ahora en la máquina que creará el túnel y en la cuál queremos que el tráfico sea seguro, hacemos lo siguiente

 

ssh -N -p PORT user@sshserver -D 2080 -v

 

 

Donde:
  • – N -> Impide que se ejecuten comandos
  • -p -> Indica el puerto SSH a usar en caso que no sea el 22
  • -D -> Indica un puerto dinámico. He puesto 2080 sin ningún motivo en especial
  • -v -> Verbose mode.
Y ahora en Mozilla Firefox, establecemos el proxy socks v5 a “localhost” y el puerto “2080”
Y con eso tendríamos nuestro tráfico web protegido.

 

 

Comunicación a través de la red.

2. Comunicación a través de la red

2.1. Plataforma para las comunicaciones

2.1.1. Elementos de la comunicación

La comunicación comienza con un mensaje o información que se debe enviar de una persona o dispositivo a otro. Existen varios elementos

El primero de estos elementos es el origen del mensaje, o emisor. El segundo elemento de la comunicación es el destino o receptor del mensaje. Y el tercer elemento, es el canal, que está formado por los medios que proporcionan el camino por el que el mensaje viaja desde el origen hasta el destino.

Canal: Medio utilizado para transportar información de un emisor a un receptor

 

El término red en este curso se refiere a las redes de datos o información capaces de transmitir muchos tipos diferentes de comunicaciones, incluyendo datos computacionales tradicionales, voz interactiva, vídeo y productos de entretenimiento.

2.1.2.Comunicación de mensajes

Los mensajes no pueden mandarse como grandes streams, porque generarían retrasos, ya que todo sería secuencial.

 

Un método mejor es dividir los datos en partes más pequeñas y manejables para enviarlas por la red. La división del stream de datos en partes más pequeñas se denomina segmentación. La segmentación de mensajes tiene dos beneficios principales.

Primero, al enviar partes individuales más pequeñas del origen al destino, se pueden intercalar diversas conversaciones en la red. El proceso que se utiliza para intercalar las piezas de conversaciones separadas en la red se denomina multiplexación.

Multiplexación: Proceso en el que se combinan múltiples corrientes de datos digitales en una señal.

Segundo, la segmentación puede aumentar la confiabilidad de las comunicaciones de red. No es necesario que las partes separadas de cada mensajes sigan el mismo recorrido a través de la red desde el origen hasta el destino. Si una ruta de satura con el tráfico de datos, se pueden direccionar mediante recorridos alternativos.

La desventaja de utilizar segmentación y multiplexación para transmitir mensajes a través de la red es el nivel de complejidad que se agrega al proceso.

2.1.3. Componentes de la red

Los dispositivos y los medios son los elementos físicos o hardware de la red. El hardware es generalmente el componente visible de la plataforma de red, como una computadora portátil o personal, un switch, o el cableado que se usa conectar estos dispositivos. También existen los medios inalámbricos, que se transmiten a través del aire mediante radio frecuencias.

Switch: Dispositivo de red que filtra, reenvía o inunda frames basándose en la dirección destino de cada frame. Opera en la capa data-link (Nivel 2)

Los servicios y procesos son los programas de comunicación, que se ejecutan en dispositivos conectados a la red. Como por ejemplo servidores de correo, web hosting, etc.

2.1.4. Dispositivos finales y su función en la red

Algunos ejemplos de dispositivos finales son:

  • Máquinas ( estaciones de trabajo, portátiles, servidores, etc)

  • Impresoras de red

  • Teléfonos VoIP

  • Cámaras de seguridad

  • Dispositivos portátiles móviles

 

Dispositivos finales → Hosts

Un host puede ser el origen o el destino.

2.1.5. Dispositivos intermediarios y su función en la red

Algunos dispositivos dependen de dispositivos intermediarios.

Dispositivo intermediario: Dispositivo que conecta de forma directa con los dispositivos de usuario final o brinda enrutamiento de usuario final a otras redes. Como el router.

Ejemplos de dispositivos de red intermediarios:

  • Dispositivos de acceso a la red (hubs, switches y puntos de acceso inalámbricos)

  • Dispositivos de internetwork (routers)

  • Servidores y módems de comunicación

  • Dispositivos de seguridad (firewalls)

 

Estos dispositivos utilizan la dirección de host de destino conjuntamente con información sobre las interconexiones de la red, para determinar la ruta que deben tomar los mensajes a través de la red. Realizan las siguientes funciones:

  • Volver a generar y transmitir las señales de datos

  • Conservar información acerca de las rutas que existen a través de red y de internetwork

  • Notificar a otros dispositivos los errores y las fallas de comunicación

  • Dirigir los datos a lo largo de rutas alternativas cuando hay una falla en el enlace

  • Clasificar y dirigir mensajes de acuerdo a las prioridades de QoS

  • Permitir o denegar el flujo de datos de acuerdo a los parámetros de seguridad

    2.1.6. Medios de red

El medio proporciona el canal por el cual viaje el mensaje desde el origen hasta el destino.

Los medios más comunes son:

  • Hilos metálicos dentro de cables

  • Fibras de vidrio y plástico (cable de fibra óptica)

  • Transmisión inalámbrica

 

Codificación: El proceso de transformación de datos de una forma a otra.

 

Tienen diferentes características y beneficios. Los criterios para elegir un medio de red son:

  • La distancia en la cual el medio puede transportar exitosamente una señal

  • El ambiente en el cual se instalará el medio

  • La cantidad de datos y la velocidad a la que se deben transmitir

  • El costo del medio y de la instalación

    2.2.LAN, WAN e Internetworks

    2.2.1. Redes de área local

Las infraestructuras de red pueden variar en gran medida en términos de:

  • El tamaño del área cubierta

  • El número de usuarios conectados

  • El número y los tipos de servicios disponibles

 

Una red individual generalmente cubre una única área geográfica y proporciona servicios y aplicaciones a personas dentro de una estructura organizacional común.

Este tipo de red se denomina LAN. Una LAN por lo general está administrada por una organización única.

Red de área local (LAN): Red local o grupo de redes locales interconectadas que están bajo el mismo control administrativo.

2.2.2. Redes de área amplia

Estas redes conectan las LAN separadas geográficamente.

Las WAN está utilizan dispositivos de red diseñados específicamente para realizar las interconexiones entre las LAN.

2.2.3. Internet: una red de redes

Internetwork

Una malla mundial de redes interconectadas que cumple estas necesidades de comunicación humana. Internet se crea por la interconexión de redes que pertenecen a los proveedores de servicios de internet (ISP)

Estas redes ISP se conectan entre sí para proporcionar acceso.

Intranet

El término intranet con frecuencia se utiliza para hacer referencia a una conexión privada de LAN y WAN que pertenece a una organización y está diseñada para que accedan a ella sólo los miembros y los empleados.

Intranet: Sistema interno de una organización, como un sitio web, expresamente utilizado por empleados internos o estudiantes. También se puede acceder de forma remota.

2.2.4. Representaciones de red

Términos importantes para recordar son:

  • Tarjeta de interfaz de red(NIC): Una NIC, o adaptador de LAN, proporciona la conexión física a la red en la computadora personal u otra dispositivo host.

  • Puerto físico: Un conector o conexión en un dispositivo de networking donde se conectan los medios a un host u otro dispositivo de networking

  • Interfaz: Puertos especializados en un dispositivo de internetworking que se conecta a redes individuales. Puesto que los routers se utilizan para interconectar redes, los puertos de un router se conocen como interfaces de red.

    2.3. Protocolos

    2.3.1. Reglas que rigen las comunicaciones

Son reglas que rigen la comunicación.

La comunicación exitosa entre los hosts de una red requiere la interacción de gran cantidad de protocolos diferentes. Un grupo de protocolos interrelacionados que son necesarios para realizar una función de comunicación se denomina suite de protocolos. Estos protocolos se implementan en el software y hardware que está cargado en cada host y dispositivo de red.

2.3.2. Protocolos de red

Para que los dispositivos se puedan comunicar en forma exitosa, un nuevo conjunto de aplicaciones de protocolos debe describir los requerimientos e interacciones precisos.

Conjunto de aplicaciones: Grupo de componentes que trabajan de forma cooperativa. TCP/IP es un ejemplo de una suite de protocolos.

 

Las suites de protocolos de networking describen procesos como los siguientes:

  • El formato o estructura del mensaje

  • El método por el cual los dispositivos de networking comparten información sobre las rutas con otras redes.

  • Cómo y cuándo se transmiten mensajes de error y del sistema entre los dispositivos

  • La configuración y la terminación de sesiones de transferencia de datos.

    2.3.3. Interacción de los protocolos

Un ejemplo del uso de una suite de protocolos en comunicaciones de red es la interacción entre un servidor web y un explorador web. Algunos ejemplos de protocolos son:

Protocolo de aplicación:

El protocolo de transferencia de hipertexto (HTTP) es un protocolo común que rige la forma en que interactúan un servidor web y un cliente web. Define el contenido y el formato de las solicitudes web

Protocolo de transporte:

El protocolo de control de transmisión (TCP) es el protocolo de transporte que administra las conversaciones individuales entre servidores web y clientes web. TCP divide los mensajes HTTP en pequeñas partes, denominadas segmentos.

Protocolo de internetwork:

El protocolo de internetwork más común es el protocolo de internet (IP). El IP es responsable de tomar los segmentos formateados del TCP, encapsularlos en paquetes y asignar las direcciones apropiadas y seleccionar la mejor ruta al host de destino.

Protocolos de acceso a la red:

Los protocolos de acceso a la red describen dos funciones principales, la administración de enlace de datos y la transmisión física de datos en los medios. Los protocolos de administración de enlace de datos toman los paquetes IP y los formatean para transmitirlos por los medios.

2.3.4. Protocolos independientes de la tecnología

Los protocolos describen que funciones se requieren en una regla de comunicación, pero no se describe cómo realizarlas, es posible que la implementación de un protocolo sea independiente de la tecnología. Por ejemplo, http no especifica en que lenguaje debe estar escrito una página, ni el software de servidor web, ni el sistema operativo. Significa que se puede acceder a un servidor desde cualquier dispositivo con cualquier sistema operativo, mientras tenga soporte http.

 

2.4. Uso de modelos en capas

2.4.1. Beneficios del uso de un modelo en capas

Beneficios:

Ayuda en el diseño de protocolos, ya que los protocolos que operan en una capa específica tienen información definida según la cual actúan.

Fomenta competencia, ya que los productos de distintos proveedores pueden trabajar en conjunto

Evita que los cambios en la tecnología o en las capacidades de una capa afecten otras capas

Proporciona un lenguaje común para describir las funciones y capacidades de networking

 

2.4.2. Modelos de protocolo y referencia

El modelo de interconexión de sistema abierto (OSI) es el modelo de referencia de internetwork más conocido. Se usa para diseño de redes de datos, especificaciones y resolución de problemas.

 

TCP/IP es un protocolo modelo porque describe las funciones que ocurren en cada capa de protocolos dentro de una suite de TCP/IP

Equivalencia entre ambos:

 

2.4.3 Modelo TCP/IP

 

El modelo TCP/IP (modelo de Internet ) se creó a principios de la década de los setenta y se conoce con el nombre de modelo de Internet.
Define cuatro categorías de funciones, 4 capas.
El modelo TCP/IP es un estándar abierto, ninguna compañía controla la definición del modelo.
Las definiciones del estándar y los protocolos TCP/IP se explican en un foro público y se definen en un conjunto de documentos disponibles al público, denominados Solicitudes de comentarios (RFC, Request For Comments).

Capa Aplicación: datos del usuario, control de codificación y de diálogo.
Capa Transporte: comunicación entre dispositivos de distintas redes (distintas LAN).
Capa Internet: determina la mejor ruta a través de la red.
Capa Acceso a red: dispositivos y medios de la red (comunicación dentro de LAN).

 

2.4.4. Proceso de comunicación

El modelo TCP/IP describe la funcionalidad de los protocolos que forman la suite.

Un proceso de comunicación completo incluye estos pasos:

  1. Creación de datos en la capa de aplicación del dispositivo final de origen

  2. Segmentación y encapsulación de datos a medida que pasan por el stack de protocolos en el dispositivo final de origen

  3. Generación de datos en los medios en la capa de acceso a la red del stack

  4. Transportación de los datos a través de internetwork, la cual está compuesta por medios y por cualquier dispositivo intermediario

  5. Recepción de los datos en la capa de acceso en la red del dispositivo final de destino

  6. Desencapsulación y reensamblaje de los datos a medida que pasan por el stack en el dispositivo final de destino

  7. Transmisión de estos datos a la aplicación de destino en la capa de aplicación del dispositivo final de destino

 

2.4.5. Unidad de datos del protocolo y encapsulación

Proceso de encapsulación.

La forma que adopta una sección de datos en cualquier capa se denomina Unidad de datos del protocolo (PDU). En cada etapa del proceso, una PDU tiene un nombre distinto para reflejar su nuevo aspecto. Se denominan:

Datos: Término general que se utiliza en la capa de aplicación para la PDU

Segmento: PDU de la capa de transporte

Paquete: PDU de la capa de internetwork

Trama: PDU de la capa de acceso de red

Bits: PDU que se utiliza cuando se transmiten datos físicamente por el medio

 

2.4.6. Proceso de envío y recepción

En el ejemplo de la aplicación http:

El protocolo de la capa aplicación, HTTP, comienza el proceso entregando los datos de la página Web con formato HTML a la capa de transporte. Allí, los datos de aplicación se dividen en segmentos de TCP. A cada segmento de TCP se le otorga una etiqueta, denominada encabezado, que contiene información sobre qué procesos que se ejecutan en la computadora de destino deben recibir el mensaje.

La capa de transporte encapsula los datos HTML de la página Web dentro del segmento y los envía a la capa de Internet, donde se implementa el protocolo IP. Aquí, el segmento de TCP se encapsula en su totalidad dentro de un paquete IP que agrega otro rótulo denominado encabezado IP. El encabezado IP contiene las direcciones IP de host de origen y de destino

Luego el paquete IP se envía al protocolo Ethernet de la capa de acceso a la red, donde se encapsula en un encabezado de trama. Cada encabezado de trama contiene una dirección física de origen y de destino. La dirección física identifica de forma exclusiva los dispositivos en la red local. Finalmente, los bits se codifican en el medio Ethernet mediante la NIC del servidor.

Este proceso se invierte en el host receptor. Los datos se desencapsulan mientras suben al stack hacia la aplicación del usuario final.

 

 

2.4.7. Modelo OSI

Es un modelo de referencia. Describe cada interacción entre cada capa.

7. Aplicación: Proporciona los medios para la conectividad de extremo a extremo entre individuos de la red humana que usan redes de datos

6. Presentación: Proporciona una representación común de los datos transferidos entre los servicios de la capa de aplicación

5. Sesión: Proporciona servicios a la capa de presentación para organizar su diálogo y administrar el intercambio de datos.

4. Transporte: Define los servicios para segmentar, transferir y reensamblar los datos para las comunicaciones individuales entre dispositivos finales. (extremo a extremo)

3. Red: Proporciona servicios para intercambiar datos individuales en la red entre dispositivos finales identificados.

2. Enlace de datos: Los protocolos de la capa de enlace de datos describen los métodos para intercambiar tramas de datos entre dispositivos en un medio común.

1. Física: Describen los medios mecánicos, eléctricos, funcionales y de procedimiento para activar, mantener y desactivar conexiones físicas para la transmisión de bits.

 

 


2.5 Direccionamiento de red

2.5.1 Direccionamiento en la red

El modelo OSI describe los procesos de codificación, formateo, segmentación y encapsulación de datos para transmitir por la red. Un flujo de datos que se envía desde un origen hasta un destino se puede dividir en partes y entrelazar con los mensajes que viajan desde otros hosts hacia otros destinos.

 

2.5.2 Envío de datos al dispositivo final

El primer identificador, la dirección física del host, se incluye en el encabezado de la PDU de Capa 2 llamada trama. La Capa 2 está relacionada con la entrega de los mensajes en una red local única. La dirección de la Capa 2 es exclusiva en la red local y representa la dirección del dispositivo final en el medio físico. En una LAN que utiliza Ethernet, esta dirección se denomina dirección de Control de acceso a los medios (MAC). Cuando dos dispositivos se comunican en la red Ethernet local, las tramas que se intercambian entre ellos contienen las direcciones MAC de origen y de destino. Una vez que una trama se recibe satisfactoriamente por el host de destino, la información de la dirección de la Capa 2 se elimina mientras los datos se desencapsulan y suben el stack de protocolos a la Capa 3.

2.5.3 Transporte de datos a través de Internetwork

Los protocolos de Capa 3 están diseñados principalmente pata mover datos desde una red local a otra red local dentro de una internetwork. Mientras las direcciones de Capa 2 sólo se utilizan para comunicar entre dispositivos de una red local única, las direcciones de Capa 3 deben incluir identificadores que permitan a dispositivos de red intermediarios ubicar hosts en diferentes redes

Un dispositivo de red intermediario, por lo general un router, desencapsula la trama para leer la dirección host de destino contenida en el encabezado del paquete, la PDU de Capa 3. Los routers utilizan la porción del identificador de red de esta dirección para determinar qué ruta utilizar para llegar al host de destino. Una vez que se determina la ruta, el router encapsula el paquete en una nueva trama y lo envía por su trayecto hacia el dispositivo final de destino.

2.5.4 Envío de datos a la aplicación correcta

En la Capa 4, la información contenida en el encabezado de la PDU no identifica un host de destino o una red de destino. Lo que sí identifica es el proceso o servicio específico que se ejecuta en el dispositivo host de destino que actuará en los datos que se entregan. Los hosts, sean clientes o servidores en Internet, pueden ejecutar múltiples aplicaciones de red simultáneamente. Cuando los datos se reciben en el host, se examina el número de puerto para determinar qué aplicación o proceso es el destino correcto de los datos.

 

 

Servicio SSH

    1. ¿Qué es el servicio SSH?

Inicialmente la administración remota se hacía con la orden Telnet.

En la actualidad no se debería utilizar Telnet por los importantes agujeros de seguridad que presenta. La transmisión entre cliente y el servidor se realiza completamente en texto plano (sin cifrar), por lo que con cualquier sniffer es posible capturar tramas y obtener de ellas login y la contraseña del usuario.

En la actualidad la herramienta de administración remota más utilizada es Secure Shell (SSH). SSH es un protocolo para iniciar sesiones en máquinas remotas que ofrecen autenticación, confidencialidad e integridad.

SSH es una herramienta que permite realizar conexiones seguras entre equipos unidos mediante una red insegura, como puede ser Internet. Utiliza el puerto 22 y sigue el modelo cliente-servidor.

La seguridad de Ssh se basa en la utilización de mecanismo de criptografía, de forma que toda transmisión de información es cifrada y el mecanismo de autenticación es transparente al usuario.

Ventajas de utilizar SSH

  • Después de la primera conexión, el cliente puede saber que se está conectando al mismo servidor en futuras sesiones.
  • El cliente transmite al servidor la información necesaria para su autenticación en formato cifrado
  • Todos los datos que se envían y se reciben durante la conexión son cifrados
  • El cliente puede ejecutar aplicaciones gráficas desde el Shell.
    1. Encriptación. Tipos de encriptación.

La criptografía es una técnica utilizada para convertir un texto claro en otro, llamado criptograma, cuyo contenido informativo es igual al anterior pero sólo puede ser decodificado por personas autorizadas.

La criptografía se basa en algoritmos cada vez más sofisticados.

SSH utiliza varios algoritmos de encriptación y autenticación:

  • Para establecer la conexión con la máquina remota emplea algoritmos de encriptación asimétrica.
  • Para la transferencia de datos utiliza algoritmos de encriptación simétrica, que son más rápidos.

Los tipos de encriptación son:

  • Encriptación simétrica o de clave compartida.
  • Encriptación asimétrica o de clave pública/privada.

Clave. Una clave es número codificado y encriptado en un archivo que sirve para encriptar/desencriptar los mensajes transmitidos/enviados

      1. Encriptación simétrica o de clave compartida

Esta técnica se basa en la utilización de una clave que es conocida tanto por el emisor como por el receptor o destinatario.

El usuario A y el usuario B conocen la clave K. El mensaje original, utilizando un algoritmo de encriptación simétrico y la clave K, genera el mensaje K que es transmitido al usuario B. Este, aplicando la misma clave y el algoritmo inverso, obtiene el mensaje original.

Ventaja: Es muy eficiente ya que los algoritmos utilizados son muy rápidos.

Desventaja: ambas partes deben conocer la clave.

      1. Encriptación asimétrica o de clave pública

Las técnicas de cifrado asimétrico se basan en el uso de dos claves: una pública y otra privada.

Según esta técnica cada usuario tiene dos claves. La clave privada sólo la conoce el dueño de la clave y no se publica. La clave pública es conocida por otros usuarios en otras máquinas, es decir se publica. Estas claves se generan al mismo tiempo dando lugar a pares biunívocos, de tal forma que la combinación pública-privada es única.

La información que recibe un usuario será segura mientras él controle sus claves privadas. El usuario puede cambiar su clave privada en cualquier momento y puede publicar su clave pública asociada para sustituir la clave pública obsoleta.

Ventaja: La clave privada no se transmite

Desventaja: No utiliza algoritmos eficientes, ya que no son rápidos cifrando y descifrando.

      1. Algoritmos de clave pública

    El algoritmo RSA:

    • Es el algoritmo de cifrado de clave pública más utilizado
    • Puede utilizarse tanto para encriptar como para firmar documentos

    El algoritmo DSA:

    • Puede utilizarse tanto para encriptar como para firmar documentos
    • Mayor grado de seguridad que RSA.

    Servidor DNS

    7 SERVICIO DNS

      1. ¿Qué es el servicio DNS?

    El servicio DNS (Domain Name System), o servicio de nombre de dominio, gestiona y mantiene de forma distribuida las direcciones de Internet y los nombres de sistema.

    En una red TCP/IP las máquinas se identifican mediante su dirección de red o número IP. Sin embargo, para las personas resulta mucho más cómodo recordar un nombre que se asocia a una máquina concreta, ya que la dirección IP puede cambiar.

    Esto hace necesario establecer un mecanismo de traducción de nombres de maquinas a direcciones IP. DNS es el servicio que proporciona este mecanismo de traducción.

      1. El espacio de nombres de dominio

    El servicio DNS se compone de una base de datos distribuida. En esta base de datos se almacenan las asociaciones de nombres de dominios y direcciones IP.

    La base de datos de DNS está clasificada por nombres de dominio, donde cada nombre de dominio es una rama en un árbol invertido llamado espacio de nombres de dominio. El árbol comienza en el nodo raíz situado en el nivel superior. Por debajo de él pueden existir un número indeterminado de nodos de nivel inferior.

    Los nodos se identifican mediante nombres no nulos. El nombre completo de un nodo está formado por el conjunto de de nombres que forman la trayectoria desde ese nodo hasta el nodo raíz. Este nombre de dominio completo se llama nombre de dominio completamente cualificado o Fully Qualified Domain Name. El FQDN de cualquier nodo del árbol debe acabar siempre con un punto.

    Los diferentes servidores DNS que existen en la red almacenan la información relativa a los nombres de dominio DNS en los llamados registros de recursos. Le permiten responder a las peticiones de nombres relativas a la parte del espacio de nombres de dominio.

    Los principales TLD son: .com, .edu, .net, .org, .gov.

    Como parte del espacio de nombres de dominio también existen dominios de primer nivel que designan zonas geográficas.

    Organismo en España → ESNIC

      1. ¿Cuándo se necesita DNS?

    Un servicio DNS se define como:

    • Un espacio de nombres jerárquico para las máquinas y las direcciones IP.
    • Una base de datos distribuida que contiene asociaciones de nombres de dominios a direcciones IP.
    • Un resolvedor (resolver) o biblioteca de rutinas que permite realizar consultas a esa base de datos.
    • Un protocolo para intercambiar información de nombres.

    Los sitios web utilizan el servicio DNS ya que mantener un archivo local /etc/hosts con una relación de todas las máquinas no es viable.

    Cada servidor de DNS mantiene uno o varios elementos de la base de datos distribuida que componen el servicio DNS.

    Si la red es pequeña se puede configurar un servidor en uno de los equipos o pedir al ISP que proporcione este servicio en su nombre.

    Si es el sistema es muy grande, debe tener varios dominios DNS.

      1. ¿Qué es la delegación?

    DNS es una base de datos distribuida y por lo tanto permite su administración descentralizada.

    La delegación de dominios es el mecanismo que permite llevar a cabo es administración descentralizada. Es decir, el dominio puede ser divido en subdominios y el control de cada subdominio puede ser delegado. Debe asumir también la responsabilidad de mantener los datos actualizados.

    La división de un dominio en subdominios no implica siempre la cesión de la autoridad sobre ellos.

      1. Dominios y zonas

    El servidor de nombres almacena información acerca de algunas partes del espacio de nombres de dominio. Cada una de esas partes se llama zona, y se dice que el servidor de nombres tiene autoridad sobre una zona.

    La zona es un archivo que contiene determinados registros de la base de datos del espacio de nombres de dominio.

    Diferencia entre dominio y zona: El dominio es un subárbol del espacio de nombres de dominio, es decir, un nodo con todos los nodos por debajo de él.

    La zona es un archivo que contiene determinados registros de la base de datos del espacio de nombres de dominio.

    Un servidor de nombres de dice que es primario cuando obtiene la información de sus zonas de sus archivos locales. Todas las modificaciones sobre una zona, como añadir dominios, se llevan a cabo en el servidor primario.

    Un servidor de nombres se dice que es secundario cuando obtiene la información de su zona o zonas de otro servidor de nombres.

    Las transferencias de zona son solicitadas por servidores de nombre secundarios con el objetivo de mantener actualizada la información acerca de la zona para tenerla así correctamente duplicada. Es interesante que, para cada zona, exista al menos un servidor primario y otro secundario. En el caso de fallo de alguno de ellos, el otro atiende las peticiones de resolución de nombres.

    Un servidor de nombres de nombres se dice que es caché cuando sólo atiende consultas de los clientes DNS.

      1. Servidor de nombres autoritario

    Se define un servidor de nombres de dominios DNS autoritario para una zona como aquel que contiene los registros de recursos para dicha zona. Para ello se utilizan los registros de recursos SOA y NS.

    Si el servidor es secundario, los registros de recursos de la zona se cargan desde otro servidor de nombres utilizando el proceso de transferencia de zona.

    7.9Base de datos del protocolo DNS

    Cada servidor de nombres de dominio mantiene una base de datos que sirve para asociar los nombres de dominios con direcciones IP llamada archivos de la zona, y una base de datos de resolución inversa llamada archivos de resolución inversa de la zona. El formato de estas bases de datos es de archivos de textos.

    Para resolver nombres los servidores DNS consultan las zonas, las cuales contienen los registros de recursos (RR) que describen la información relativa al dominio DNS.

    La descripción de cada uno de los campos es:

    • Propietario: nombre de máquina o dominio DNS al que pertenece el recurso. Puede contener un nombre de máquina/dominio.
    • TTL: (Time To Live) tiempo de vida o número de segundos que puede estar el registro en la caché. Si contiene un ‘0’ indica que no tiene que ser almacenado en caché.
    • Clase: define la familia de protocolos en uso. Suele ser siempre ‘IN’ de Internet, que representa una red TCP/IP.
    • Tipo: identifica el tipo de registro.
    • RDATA: información específica del tipo de recurso.

    TIPOS DE REGISTRO

    Nombre del recurso Tipo de registro Función
    Inicio de autoridad SOA Identifica al servidor autoritario de una zona y sus parámetros de configuración.
    Servidor de nombres NS Identifica servidores de nombres autorizados para una zona.
    Dirección A Asocia un nombre de dominio FQDN con una dirección IP
    Puntero PTR Asocia una IP a un dominio FQDN. Para búsquedas inversas
    Registro de correo MX Indica máquinas encargadas de la entrega de correo en el dominio
    Nombre canónico CNAME Permite asignar uno o más nombres a una máquina
    Text TXT Almacena cualquier información
    Servicio SRV Ubicación de los servidores para un servicio.

    A) Registro de recurso SOA

    La configuración de cada zona comienza con el registro de recursos de Inicio de Autoridad o SOA (Start of Authority).

    • Propietario: nombre de dominio de la zona
    • Tipo: SOA
    • Persona responsable: contiene la dirección de correo electrónico del responsable de la zona.
    • Número de serie: Número de versión de la zona. Sirve de referencia a los servidores secundarios de la zona para saber cuando deben hacer una transferencia (actualizar la base). Si el número de serie del servidor secundario es menor que el número de serie del primario, significa que en el primario ha cambiado la información de la zona, y por tanto el secundario debe solicitar al primario una transferencia de zona. Este número debe ser incrementado de forma manual por el administrador de la zona cada vez que realiza un cambio en algún registro de la zona. Se suele utilizar el formato AAAA/MM/DD/NN.
    • Actualización (Refresh Time): indica cada cuánto tiempo un servidor secundario debe contactar con el servidor primario para comprobar los cambios en la zona.
    • Reintentos (Retry time): si la transferencia de zona ha fallado, este parámetro indica el tiempo que espera el servidor secundario antes de volver a intentarlo.
    • Caducidad (Expire Time): indica el tiempo de caducidad, en segundos de la información acerca de la zona en un servidor secundario.
    • TTL Mínimo (Minimal Time To Live): indica el tiempo de validez del registro SOA, número de segundos que la información sobre el registro se mantiene en el servidor de nombres de dominio.

    Ejemplo:

    aulaESI.com. IN SOA servidor.aulaESI.com.

    ( 200051701; número de serie

    10800; actualización

    900; reintentos

    604800; caducidad

    86400; valor TTL

    )

    B) Registro de recurso NS (NameServer)

    El registro de recurso NS establece los servidores de nombres autorizados para la zona. Cada zona debe contener registros indicando tanto los servidores primarios como los secundarios. Por tanto, cada zona debe contener registros indicando tanto los servidores primarios como los secundarios. Como mínimo un registro NS por zona.

    Ejemplo:

    aulaESI.com. IN NS servidor.aulaESI.com.

    C)Registro de recurso A (Address)

    Establece una correspondencia entre un FQDN y una dirección IP. Cada registro A identifica un nombre de máquina y el cliente DNS puede obtener a través de él su dirección IP.

    Ejemplo de registro que se asigna una dirección a la maquina pc02:

    pc02.aulaESI.com. IN A 192.168.1.2

    D)Registro de recurso PTR (PoinTeR)

    El registro de recurso PTR hace lo contrario que el registro A, es decir asigna una dirección IP a un FQDN. Este tipo de recursos se utilizan en la resolución inversa.

    Ejemplo:

    2.1.168.192.in-addr-arpa IN PTR pc02.aulaESI.com.

    E)Registro de recurso CNAME (Nombre canónico)

    Crea un alias para el nombre de dominio especificado.

    Por ejemplo, a la maquina pc02 se le asigna el alias prueba:

    prueba.aulaESI.com. IN CNAME pc02.aulaESI.com.

    F)Registro de recurso MX (Mail eXchange)

    Es un registro de correo, e indica una o varias máquinas encargadas de la entrega de correo en el dominio. Si el dominio tiene varias máquinas como registros MX se puede indicar, mediante un valor numérico, el orden de preferencia de máquina que seguirá el servidor que envía el correo para hacer la entrega del mismo.

    Ejemplo:

    AulaESI.com. IN MX 0 mail.aulaESI.com.

    AulaESI.com. IN MX 1 maildos.aulaESI.com.

    G)Registro de recurso SRV (SeRVice)

    Los registros de recursos SRV especifican los servidores disponibles para un servicio o protocolo determinados, como www o FTP.

    http.tcp.aulaESI.com. IN SRV 0 0 80 http://www.aulaESI.com

    ftp.tcp.aulaESI.com. IN SRV0 0 80 ftp.aulaESI.com.

      1. Métodos de búsqueda
        1. Resolución de nombres

    La resolución de nombres es un mecanismo por el que se traducen los nombres de máquinas, dados por los usuarios al conectarse a servidores remotos, a direcciones IP.

    • Búsqueda recursiva: Se realiza una petición de resolución de nombre al servidor DNS local, y si el servidor no dispone de la información solicitada va a buscarla al servidor de nombres con autoridad que la contiene. Para ello, el servidor de nombres local necesita consultar a un servidor raíz y éste le dará la información acerca de aquellos servidores de nombres autoritarios intermedios hasta llegar al servidor que contiene el nombre del dominio objeto de la consulta. En este caso, el servidor local asume la responsabilidad de dar una respuesta al cliente y él consulta a los otros servidores en nombre del cliente.
    • Búsqueda iterativa: el servidor DNS local devuelve la mejor respuesta que puede ofrecer al cliente en función del contenido de su caché, pero si el servidor no dispone de la información solicitada indica la ip del siguiente servidor de nombres autorizado a preguntar, comenzando siempre por un servidor raíz. Éste le refiere al servidor del nivel siguiente que lo contiene, y el servidor local vuelve a lanzar la petición (iteración) al servidor referido, el cual, si no dispone de la información solicitada, le refiere al servidor del nivel siguiente que lo contiene; a continuación, el servidor DNS local vuelve a lanzar la petición al servidor referido y así sucesivamente hasta llegar al servidor de nombres que contiene la información acerca del dominio solicitado.
      1. Configuración de un servidor DNS en Debian GNU/Linux

    El servicio DNS está compuesto por dos programas.

    • El demonio named: es el servidor de nombres de dominio, el que contiene la base de datos y responde a las peticiones
    • el resolver (cliente): es el que genera las peticiones. Es un conjunto de rutinas que permiten que los clientes accedan a los servidores de nombres para resolver la búsqueda de una dirección ip asociada a un nombre

    El archivo de configuración del demonio named es /etc/bind/named.conf.

    Las zonas específicas del servidor DNS se definen en /etc/bind/named.conf.local

    Para lanzar el servicio: /etc/init.d/bind9 start

    Archivos de configuración implicados:

    • /etc/bind/named.conf
    • /etc/bind/named.conf.local
    • /etc/bind/db.aulaESI.com
    • /etc/bind/db.192.168.1

    EJEMPLO NAMED.CONF.LOCAL

    /* resolución normal */

    zone “aulaESI.com” {

    type master;

    allow-query {127.0.0.1 ; 192.168.1.1/24; }

    allow-transfer { slaves;}

    file “/etc/bind/db.aulaESI.com”;

    };

    /*resolucion inversa */

    zona “1.168.192.in-addr.arpa” {

    type master;

    allow-query {127.0.0.1 ; 192.168.1.1/24; }

    allow-transfer { slaves;}

    file “/etc/bind/db.192.168.1”;

    };

    EJEMPLO DB.AULAESI.COM

    aulaESI.com. IN SOA servidor.aulaESI.com.

    ( 1;

    10800;

    900;

    604800;

    86400;)

    aulaESI.com. IN A 192.168.1.1

    aulaESI.com. IN NS servidor.aulaESI.com.

    servidor IN A 192.168.1.1

    cups IN CNAME servidor

    www in CNAME servidor

    pc02 IN A 192.168.1.2

    pc03 IN A 192.168.1.3

    EJEMPLO DB.192.168.1

    aulaESI.com. IN SOA servidor.aulaESI.com.

    (1;

    10800;

    900;

    604800;

    86400;)

    aulaESI.com. IN NS servidor.aulaESI.com.

    1 IN PTR gateway.aulaESI.com.

    1 IN PTR servidor.aulaESI.com.

    2 IN PTR pc02.aulaESI.com.

    3 IN PTR pc03.aulaESI.com.

    Detectar intrusos en nuestra red privada.

    Todos nos hemos preguntado alguna vez si alguien se conectará sin nuestro permiso a nuestra red… Pues para averiguar si hay algún intruso es bastante simple:

    nmap -sP x.x.x.x/xx

    o

    nmap -sP x.x.x.x-xx

    Donde -sP indica que es un simple escaneo por ping, para determinar si un host está online o no. Por ejemplo:

    nmap -sP 172.26.0.0/24

    Para este caso deberemos conocer los bits que se utilizan para construir la subred.

    nmap -sP 172.26.0.1-255

    En este caso basta con indicar un rango de direcciones ip.

    nmap

    Resultado.

    También podemos usar netdiscover:

    netdiscover -i interfaz -r x.x.x.x/xx -s tiempo

    Por ejemplo, en mi caso:

    netdiscover -i wlan0 -r 172.26.0.0/24 -s 0.5

    • -i => Indica el interfaz de red que estamos usando
    • -r => rango a escanear
    • -s => tiempo de espera entre cada petición ARP

    Y sólo con eso podremos estar informados de las conexiones que se produzcan a nuestra red.

    ARP Poisoning – Man in the Middle

    Ahora aprenderemos a hacer y como funciona (básicamente) un ataque MITM.

    Necesitamos ips y macs de los equipos implicados y de la gateway, en mi caso:

    • Atacante
      • IP: 172.26.0.34
      • MAC: 00:80:5a:38:3f:ed
      • S.O: GNU/Linux Ubuntu 9.10
    • Victima
      • IP: 172.26.0.33
      • S.O: Windows 7
    • Gateway
      • IP: 172.26.0.1
      • MAC: 00:60:b3:fb:43:b2

    Bien ahora desde el atacante, abriremos una sesión del sniffer Wireshark con el comando wireshark &

    Si no lo tienes instalado, en distribuciones basadas en Debian basta con un simple:

    sudo apt-get install wireshark

    Wireshark

    Wireshark

    Ahora en la víctima comprobaremos como está la tabla ARP, mediante el comando arp -a:

    tabla arp

    Tabla Arp

    Y ahí podemos observar la IP y MAC del atacante y de la gateway.

     

    Volvemos al equipo atacante y comenzamos el ataque con Ettercap:

    ettercap

    Ettercap

    • -T => Ataque desde consola
    • -q => “Quiet Mode”… Es decir no mostrará nada.
    • -i => Especificamos nuestra interfaz de red
    • -M => Selección de MITM
    • /172.26.0.33/ y /172.26.0.1/ son las víctimas.

    Replays Falsos

    Replays Falsos. Click para ampliar

     

    Vemos como se envían Replays Falsos.

    Ahora comprobemos la tabla ARP de la víctima:

    Envenenado.

    Equipo envenenado.

    La tabla está envenenada. La MAC del gateway queda cambiada a nuestra dirección MAC, por lo que podremos interceptar el tráfico de la víctima.

    Desde la víctima, por ejemplo abrimos una página web.

    La victima en Internet

    La victima en Internet

    Ahora desde el atacante vamos a mirar si Wireshark a interceptado algo:

    Tráfico interceptado

    Tráfico interceptado. Click para ampliar

    Y efectivamente, estamos interceptando el tráfico de la víctima.

    Ahora sólo nos queda terminar el ataque:

    Terminando el ataque

    Terminando el ataque

    Como vemos, Ettercap se encarga de restablecer los parámetros originales de la víctima.

    Restablecido

    Todo restablecido.

    Una vez finalizado el ataque, las MACs se reestablecen.

    Algunos tipos de xDSL

    ADSL son las siglas de Asymmetric Digital Subscriber Line (“Línea de Suscripción Digital Asimétrica”). ADSL es un tipo de línea DSL. Consiste en una transmisión de datos digitales (la transmisión es analógica) apoyada en el par simétrico de cobre que lleva la línea telefónica convencional o línea de abonado, siempre y cuando el alcance no supere los 5,5 km. medidos desde la Central Telefónica, o no haya otros servicios por el mismo cable que puedan interferir.

    ADSL2 y ADSL2+ son unas tecnologías preparadas para ofrecer tasas de transferencia sensiblemente mayores que las proporcionadas por el ADSL convencional, haciendo uso de la misma infraestructura telefónica basada en cables de cobre. Así, si con ADSL tenemos unas tasas máximas de bajada/subida de 8/1 Mbps, con ADSL2 se consigue 12/2 Mbps y con ADSL2+ 24/2 Mbps. Además de la mejora del ancho de banda, este estándar contempla una serie de implementaciones que mejoran la supervisión de la conexión y la calidad de servicio (QoS) de los servicios demandados a través de la línea.

    HDSL es el acrónimo de High bit rate Digital Subscriber Line o Línea de abonado digital de alta velocidad binaria.

    Ésta es una más de las tecnologías de la familia DSL, las cuales han permitido la utilización del clásico bucle de abonado telefónico, constituido por el par simétrico de cobre, para operar con tráfico de datos en forma digital.

    Los módems HDSL permiten el establecimiento por un par telefónico de un circuito digital unidireccional de 1,544 Mbps (T1) ó 2,048 Mbps (E1), por lo que para la comunicación bidireccional son necesarios dos pares. En este caso por cada par se transmite y recibe un flujo de 1024Kbps.

    HDSL2 es la segunda generación de HDSL con un margen de ruido de 6dB, es otra forma proveer una línea T-1

    IDSL son las siglas de ISDN Digital Subscriber Line, proporciona la tecnología DSL sobre líneas ISDN, o dicho de otro modo, ofrece un servicio básico de RDSI utilizando la tecnología DSL. Los circuitos de IDSL llevan los datos (no voz).

    MSDSL es una tecnología con una distancia máxima de 8.800 m. Es capaz de transmitir a múltiples velocidades estipuladas por isp, típicamente basados en el servicio/precio. La velocidad máxima 2MBit/s

    Power Line Communications, también conocido por sus siglas PLC, es un término inglés que puede traducirse por comunicaciones mediante cable eléctrico y que se refiere a diferentes tecnologías que utilizan las líneas de energía eléctrica convencionales para transmitir señales de radio para propósitos de comunicación. La tecnología PLC aprovecha la red eléctrica para convertirla en una línea digital de alta velocidad de transmisión de datos, permitiendo, entre otras cosas, el acceso a Internet mediante banda ancha.

    RADSL ( Velocidad adaptativa DSL ) es una variación de la tecnología ADSL. Con RADSL el MODEM ajusta la velocidad de subida de la conexión dependiendo de la duración y calidad de la línea entre el DCE o la centralita y el DTE.

    Symmetric Digital Subscriber Line (SDSL). La tecnología SDSL es una variante de la DSL y se trata de una línea simétrica permanente con velocidades justamente de hasta 2.048 kbps.

    Uni-DSL (UDSL) es una tecnología DSL desarrollada por Texas Instruments la cual proveerá  una velocidad de hasta 200 mbits.

    VDSL (o VHDSL) son las siglas de Very high bit-rate Digital Subscriber Line (DSL de muy alta tasa de transferencia). Transmiten los impulsos sobre pares de cobre.

    Se trata de una evolución del ADSL, que puede suministrarse de manera asimétrica (52 Mbit/s de descarga y 12 Mbit/s de subida) o de manera simétrica (26 Mbit/s tanto en subida como en bajada), en condiciones ideales sin resistencia de los pares de cobre y con una distancia nula a la central.

    La tecnología VDSL utiliza 4 canales para la transmisión de datos, dos para descarga y 2 para subida, con lo cual se aumenta la potencia de transmisión de manera sustancial.

    VDSL2 (Very-High-Bit-Rate Digital Subscriber Line 2) Línea digital de abonado de muy alta tasa de transferencia, que aprovecha la actual infraestructura telefónica de pares de cobre.