lunes, 24 de enero de 2022

IV - Dinamic Host Configuration Protocol (DHCP)

Cada equipo de una red TCP/IP debe tener un nombre y una dirección IP únicos. La dirección IP, junto con su máscara de subred relacionada, identifica al equipo host y a la subred a la que está conectado. DHCP permite asignar dinámicamente los parámetros de red a los clientes, a partir de una base de datos de direcciones IP del servidor DHCP de la red local.



Las estaciones de trabajo solicitan al servidor DHCP su dirección IP y demás configuraciones, el cual les va asignando direcciones del rango que sirve, de entre aquellas que le quedan libres; es necesario que los clientes estén configurados para utilizar un servidor DHCP, en lugar de estar configurados manualmente con una dirección IP estática.


Ventajas
  • Administración centralizada: El administrador de DHCP puede administrar de manera centralizada toda la información de configuración de IP. De esta forma se elimina la necesidad de configurar manualmente los hosts individualmente cuando se implanta por primera vez TCP/IP o cuando se necesitan cambios en la infraestructura de IP.
  • Sencillez y seguridad de configuración: DHCP asegura que los clientes obtienen parámetros de configuración de IP precisos y en tiempo, sin intervención del usuario. Como la configuración es automática se elimina gran parte de los problemas como puedan ser conflictos de direcciones.
  • Flexibilidad. Utilizando DHCP, el administrador aumenta su flexibilidad para el cambio de la información de configuración de IP, lo que permite que el administrador cambie la configuración de IP de manera sencilla cuando se necesitan los cambios.
Observación
Si por error algún equipo de la red estuviera configurado con un direccionamiento IP estático del rango gestionado por nuestro servidor DHCP, podría ocurrir que cuando nuestro servidor DHCP alquilase una dirección IP a la estación de trabajo solicitante, dicha dirección IP estuviese siendo utilizada por el equipo con direccionamiento estático, provocándose un conflicto de direccionamiento IP; en ese caso el cliente DHCP solicitará otra dirección IP y la probará, hasta que obtenga una dirección IP que no esté asignada actualmente a ningún otro equipo de la red; por cada conflicto de direcciones IP, el cliente volverá a intentar configurarse automáticamente hasta con 10 direcciones IP.

Funcionamiento

1) El cliente DHCP ya ha obtenido anteriormente una concesión de licencia de un servidor DHCP.
Cada vez que el cliente arranque de nuevo, se comportará del siguiente modo:
  • Si la concesión de alquiler de licencia ha caducado, el cliente solicitará una nueva licencia al servidor DHCP (la asignación de la dirección IP que haga el servidor podría coincidir con la anterior).
  • Si la concesión de alquiler no ha caducado  intentará que le sea asignada la misma dirección IP. Si no puede localizar un servidor DHCP hará un "ping" a la puerta de enlace. Si el "ping" es satisfactorio, el cliente DHCP supone que sigue ubicado en la misma red en que obtuvo su concesión actual y continuará utilizándola. Si el "ping" es erróneo, el cliente supone que ha sido movido a otra red en que los servicios DHCP no están disponibles, y configura automáticamente su dirección IP a una dirección de la red de clase B reservada de Microsoft, 169.254.0.0, con máscara de subred 255.255.0.0 (obviamente el equipo no conectará con la red). Después buscará un servidor DHCP en segundo plano cada cinco minutos para obtener una concesión.

2) El cliente nunca ha obtenido una concesión de licencia de un servidor DHCP.
El cliente intenta localizar un servidor DHCP y obtener una configuración del mismo. Si no lo encuentra configura automáticamente su dirección IP a una dirección de la red de clase B reservada de Microsoft, 169.254.0.0, con máscara de subred 255.255.0.0 (obviamente el equipo no conectará con la red). Después buscará un servidor DHCP en segundo plano cada cinco minutos para obtener una concesión.
Algunos  términos que utilizaremos a lo largo del proceso de instalación y configuración del DHCP:
  • Ámbito servidor DHCP: Un ámbito es un agrupamiento administrativo de equipos o clientes de una subred que utilizan el servicio DHCP.
  • Rango servidor DHCP: Grupo de direcciones IP en una subred determinada que el servidor DHCP puede conceder a los clientes.
  • Concesión o alquiler de direcciones: Período de tiempo que los servidores DHCP especifican, durante el cual un equipo cliente puede utilizar una dirección IP asignada.
  • Autorización servidor DHCP: Habilitación del servidor DHCP instalado para que sirva direcciones IP a los clientes pertenecientes al dominio gestionado por Active Directory.
  • Servidor WINS: Permite registrar nombres de recursos de red NetBIOS, y resolver éstos a sus direcciones IP correspondientes; se suele utilizar en estaciones de trabajo que ejecutan versiones antiguas de sistemas operativos de Microsoft.
  • Reserva: es un mecanismo que permite a DHCP servir siempre a un equipo la misma dirección IP utilizando la dirección MAC de su tarjeta de red.
  • Exclusión: Dirección o rango de direcciones que el servidor DHCP no va a repartir de forma dinámica y que habitualmente se usan para ser asignadas de forma estática a determinados equipos o periféricos de red.

III - Domain Name System (DNS)

Todos los hosts con TCP/IP tienen una dirección de IP única que se utiliza para la comunicación con otros equipos de la red. Un equipo trabaja fácilmente con direcciones IP, pero estas direcciones son muy difíciles de usar para las personas, ya que los usuarios suelen identificar los sistemas por un nombre. Para facilitar una comunicación efectiva y eficiente, los usuarios deben poder referirse a los equipos por un nombre y permitir que su equipo use su dirección de IP transparentemente.

DNS es un servicio de nombres estándar que permite que un equipo cliente de la red registre y resuelva nombres de dominio de DNS. Estos nombres se utilizan para encontrar y acceder a recursos de otros equipos de la red o de otras redes como Internet.

Los tres componentes principales de DNS son los siguientes: 
  • Clientes DNS: Un programa cliente DNS que se ejecuta en la computadora del usuario y que genera peticiones DNS de resolución de nombres a un servidor DNS (Por ejemplo: ¿Qué dirección IP corresponde al nombre www.asirlasgalletas.com?).
  • Servidores DNS: Que contestan las peticiones de los clientes. Los servidores recursivos tienen la capacidad de reenviar la petición a otro servidor si no disponen de la dirección solicitada.
  • Zonas de autoridad: Son porciones del espacio de nombres de dominio que almacenan los datos. Cada zona de autoridad abarca al menos un dominio y habitualmente sus subdominios siempre que estos no sean delegados a otras zonas de autoridad.

El espacio de nombres de dominio está estructurado de manera jerárquica en un árbol que empieza en una raíz sin nombre para todas las operaciones de DNS. En el espacio de nombres DNS cada nodo y cada hoja en el árbol del espacio de nombres de dominio representan un dominio con nombre. Cada dominio puede tener dominios hijos adicionales.

Ejemplo de Espacio de nombres

Un nombre de dominio concreto es la lista de etiquetas en la ruta desde el nodo nombrado hasta la raíz del árbol de DNS. La convención de DNS es que las etiquetas que componen un nombre de dominio se leen de izquierda a derecha, desde lo más concreto hasta la raíz, por ejemplo, sanson.dit.upm.es

Este nombre completo se denomina  
FQDN (Fully Qualified Domain Name)La parte más a la izquierda del dominio suele expresar el nombre de la máquina (hostname), sanson en el ejemplo de arriba. Más a la izquierda aún se puede colocar un prefijo como www, ftp, etc. Estos prefijos no forman parte real del nombre DNS y solo se utilizan para indicar qué tipo de protocolo se va a usar para la conexión.
En la práctica configuraremos un servidor DNS local, es decir, las entradas existentes en nuestro DNS no serán visibles en Internet y resolverán direcciones de recursos de nuestra red local (equipos, impresoras, servidores web, servidores ftp, etc).
  • Si el usuario intenta acceder a un recurso local, podrá utilizar la resolución creada para tal fin en el DNS local, y acceder así al recurso deseado mediante su nombre en vez de utilizar su dirección IP.
  • Si el usuario desea acceder a algún recurso no perteneciente a nuestra red local, sino situado en Internet, el DNS local nunca podrá llevar a cabo dicha resolución y trasladará dicha solicitud al siguiente servidor DNS (que sí estará en Internet) en su jerarquía de servidores DNS, y así sucesivamente hasta que resuelva dicha resolución.


Ejemplo de jerarquía DNS

Cada vez que una estación de trabajo se agregue al dominio quedará registrada una entrada en el DNS
del servidor Windows Server 2008 con el nombre de dicha máquina y su dirección IP, de modo que podremos acceder a dicho equipo desde nuestro dominio a través de su nombre en vez de utilizar su dirección IP.

El servicio DNS es extremadamente útil cuando las estaciones de trabajo reciben su dirección IP dinámicamente mediante el servicio DHCP ya que el comando "ping" podría fallar al ejecutarlo sobre la IP pero no fallaría si se ejecuta contra el nombre del equipo en el dominio, pues dicho nombre de equipo es invariable, y por lo tanto el comando "ping" siempre obtendría respuesta positiva en este segundo caso.
Antes de comenzar con los procesos de instalación y configuración de nuestro DNS, vamos a definir algunos términos que utilizaremos a lo largo de dicho proceso.
  • Zona de Búsqueda Directa: Este tipo de zona realiza las resoluciones que esperan como respuesta la dirección IP de un determinado recurso en función de su nombre.
  • Zona de Búsqueda Inversa: Este tipo de zona realiza la resoluciones que esperan como respuesta un nombre de recurso en función de su dirección IP.
  • Reenviador DNS: Servidor DNS designado por otros servidores DNS para ser invocado en consultas de resolución de recursos que se encuentran ubicados en dominios que no son gestionados por el DNS local.

DNS y el Directorio activo
DNS es el ubicador de Active Directory en Windows. Los clientes y las herramientas de cliente de Active Directory usan DNS para ubicar los controladores de dominio para tareas de administración e inicios de sesión. Para que AD funcione correctamente, deberá tener un servidor DNS instalado y configurado.

jueves, 20 de enero de 2022

II - Active Directory (AD)

Directorio activo es el término que usa Microsoft para referirse a su implementación de servicio de directorio en una red distribuida de computadores. Utiliza distintos protocolos (como LDAP, DNS, DHCP, Kerberos, etc.). Su estructura jerárquica permite mantener una serie de objetos relacionados con componentes de una red, como usuarios, grupos de usuarios, permisos y asignación de recursos y políticas de acceso.

Características
  • Se basa en el uso de dominios, cada dominio contiene una serie de máquinas clientes, unos recursos y al menos un servidor que domina a los equipos clientes, este servidor se conoce como Controlador de Dominio (DC).
  • Podemos agrupar varios dominios formando árboles de dominio, estructuras donde cada uno de estos dominios cuenta con su propio DC. Esta agrupación de dominios se realiza de forma anidada, de la misma forma que anidamos carpetas en un volumen de datos. Cada dominio puede tener dominios padres y dominios hijos, y todos los dominios tienen un dominio padre menos el dominio raíz, que es el primero de todos.
  • Es posible crear una estructura que cuente con más de un árbol, estas estructuras de carácter superior al árbol se conocen como Bosque.
  • Para facilitar la administración podemos a su vez dividir un dominio en partes más pequeñas conocidas como Unidades Organizativas (OU).
  • Estas divisiones que hemos visto hasta ahora son divisiones “lógicas”, es decir, no tienen en cuenta donde están situados los equipos físicamente. AD también nos permite crear Sitios, estructuras de equipos “bien conectados” (que tienen un gran ancho de banda entre ellos).



Observación: Windows 2008 utiliza una nueva versión de AD conocida como Active Directory Domain Server (ADDS). Además para la comprensión del AD es necesario definir algunos elementos muy importantes: Catálogo global y Esquema.


Catálogo Global

El Catálogo global (CG) contiene una réplica completa de todos los objetos de directorio del dominio en que se aloja además de una réplica parcial de todos los objetos de directorio de cada dominio del bosque.
El objetivo de un CG es proporcionar autenticación a los inicios de sesión. Además, como un CG contiene información sobre todos los objetos de todos los dominios del bosque, la búsqueda de información en el directorio no requiere consultas innecesarias a los dominios. Una única consulta al CG produce la información sobre donde se puede encontrar el objeto.
El primer controlador de dominio Windows Server de un bosque es automáticamente un servidor de Catálogo global. De forma predeterminada, habrá un CG, pero cualquier controlador de dominio se puede configurar como servidor de Catalogo global. Si se necesitan servicios de inicio de sesión y búsqueda adicionales, se pueden tener múltiples servidores de Catalogo global en el dominio.


Esquema

Es una lista general de clases de objetos y atributos que se utilizan para crear todos los objetos de Active Directory como, por ejemplo, usuarios, equipos, impresoras...
Es un archivo de texto que los usuarios pueden leer y así saber que objetos y propiedades del AD se encuentran disponibles. El esquema se puede desactivar o cambiar, para que administradores avanzados puedan personalizar sus características. Solo hay un esquema para todo un bosque.
Árbol de Dominios

Es una estructura jerárquica de dominios que comparten un espacio de nomenclatura contiguo (1), un esquema común y un catálogo global común.
Por ejemplo, los dominios dominio.local y subdominio.dominio.local pueden formar parte de un árbol ya que comparten una nomenclatura contigua y puede tener un esquema y catálogo global comunes.


(1) Espacio de nomenclatura es el conjunto de nombres que representan a un dominio y que sea contiguo significa que la primera parte del nombre del dominio es común (por ejemplo, dominio.local).
Bosque

Colección de árboles de dominio que aunque no comparten un espacio de nomenclatura contiguo, tienen un esquema común y un catálogo global. Por ejemplo, los dominios de dominio.local y s3v.local pueden formar parte de un bosque ya que no comparten una nomenclatura contigua, pero pueden tener un esquema común y un catálogo global común.


Unidades Organizativas

Es la unidad más pequeña en la que se divide un dominio y a la que se puede delegar el control administrativo. Son contenedores del AD en los que se pueden colocar usuarios, grupos, equipos y otras unidades organizativas del dominio donde se encuentran definidas (Una OU no puede contener objetos de otros dominios)

Con las Unidades Organizativas se pueden crear contenedores dentro del dominio que representen las estructuras lógicas y jerárquicas de la organización. De esta forma, el control administrativo de cada OU se puede delegar en personas específicas, distribuyendo las tareas del dominio entre varios administradores.


Si se necesita dividir una parte de la red en dominios o unidades organizativas se deben tener en cuenta las siguientes recomendaciones:
  • Si se trata de una organización descentralizada en la que los distintos usuarios y recursos son administrados por grupos totalmente diferentes de administradores, es conveniente dividir la red en dominios independientes.
  • Si dos partes de la misma red están separadas por un vínculo lento que hace prácticamente imposible que el tráfico de una replicación completa pueda atravesarlo, conviene dividir la red en dominios independientes.
  • Si se desea delegar el control administrativo en pequeños conjuntos de usuarios, grupos y recursos conviene dividir el dominio en unidades organizativas.
  • Si se necesita reflejar la estructura de la organización, conviene dividir el dominio en unidades organizativas.
  • Si la estructura de esa parte específica de la organización puede sufrir modificaciones futuras, conviene dividir el dominio en unidades organizativas.

domingo, 9 de enero de 2022

I - Introducción a las técnicas de red

Los diseñadores de redes han ido construyendo diferentes estrategias con la idea de simplificar el uso de redes complejas y facilitar la ubicación de los recursos de cara a los usuarios. Una LAN (Local Área Network, red de área local) puede ofrecer servicios de muy diversas maneras dependiendo del método empleado por la red. En esta entrada se describen 3 técnicas que han sido utilizadas para organizar los recursos en red: Servicios individuales, Grupos de trabajo y Servicios de directorio (LDAP)

-- Servicios individuales

La gran mayoría de las primeras redes incorporaban un solo servidor, de manera que los usuarios tenían poca dificultad para ubicar archivos, impresoras u otros recursos compartidos. Todo estaba situado en el servidor central, y los equipos individuales no podían compartir absolutamente nada con el resto de la red.

NetWare fue el SO dominante en redes pequeñas, normalmente con un único servidor y 30 o menos estaciones de trabajo. N
o requería un sofisticado servicio de administración de recursos, dado que todos los recursos que se compartían estaban conectados directamente al servidor pero si se necesitaba agregar un segundo servidor, el acceso a los recursos por parte de los usuarios y la administración se complicaban significativamente.

Como cada servidor individual mantenía su propia lista de usuarios y recursos, los usuarios tenían que tener cuentas independientes y también saber que recursos se alojaban en cada servidor. Por ello, no es una solución válida para la mayoría de las situaciones actuales y ha hecho que este tipo de redes hayan quedado obsoletas.

Esquema de Servicio individual

-- Grupos de trabajo

Los grupos de trabajo son conceptualmente opuestos a los servicios individuales. Los servicios individuales son formales y están administrados de forma centralizada por un único servidor; los grupos de trabajo son informales y operados por los usuarios que comparten sus propios recursos locales y no cuentan con ningún servidor. Este tipo de redes se conocen como redes peer to peer, entre pares o entre iguales (no confundir con punto a punto).


Las redes entre iguales se topan con dos problemas en las grandes organizaciones: hay tantos recursos disponibles que los usuarios pueden tener problemas para su localización y los usuarios no disponen de un método fácil para compartir los recursos sólo con un grupo limitado de compañeros

Una posible solución sería el uso de contraseñas para restringir el acceso a los recursos, por ejemplo mediante el cifrado. Sin embargo no es buena idea porque habría tantas contraseñas como recursos y si cambiamos alguna tendríamos que informar a todos los usuarios del recurso. Sería complicada la administración y no tendríamos buen nivel de seguridad.

Otra posible solución sería usar las ACL para controlar el acceso a los recursos sin tener que establecer contraseñas a los recursos. Para cada recurso indicaríamos que usuarios pueden acceder al mismo, pero tenemos el problema que sólo podremos escoger usuarios locales. Esto implica que si queremos acceder desde la red a un recurso compartido de una máquina tenemos que usar el nombre de usuario y la contraseña de un usuario local de dicha maquina.

Las organizaciones grandes o las que quieren más control sobre sus redes requieren algo más que grupos de trabajo. Por ello, Microsoft ha incorporado el concepto de dominio desde Windows NT Server. 

Observación

Los grupos de trabajo de Windows utilizan SMB (Server Message Block) como software para la conexión en red. Este software SMB corre sobre otro software conocido como NetBIOS (Network Basic Input Output System), y a su vez NetBIOS estaba diseñado para funcionar sobre el protocolo NetBEUI (NetBIOS Extended User Interface) aunque también existen implementaciones de NetBIOS sobre IPX/SPX y sobre TCP/IP que es la más usada hoy en día. Este software NetBIOS al ser muy antiguo (1984) es un protocolo de red bastante inseguro y sobre todo, tremendamente ruidoso (utiliza mucho el broadcast en red).
-- Servicios de directorio

Bajo este sistema, los recursos pueden estar situados en varios equipos, tanto servidores como no servidores, pero se recogen todos en una única lista o directorio (1). Los recursos pueden agruparse de manera lógica en dicho directorio para que los usuarios los localicen más fácilmente.

Los usuarios en vez de conectarse a los recursos de diversos servidores por separado tienen acceso a los recursos de la red a través del servicio de directorio, sin importar cuál servidor ofrezca el servicio o recurso.
El usuario ve el directorio de la red de una forma lógica y puede acceder a los recursos sin preocuparse de quien comparte dichos recursos e iniciar sesión una única vez en cualquier servidor siendo reconocido automáticamente por todos los servidores.
 
Algunos ejemplos de servicios de directorios de red son Banyan, X.500 o NetWare Directory Services, pero por su importancia actual estudiaremos LDAP, un estándar basado en X.500, pero bastante mejorado y simplificado, y que está diseñado para trabajar sin problemas en TCP/IP. 

(1) Directorio es un conjunto de objetos con atributos organizados en una manera lógica y jerárquica. Un ejemplo podría ser la guía telefónica, que consiste en una serie de nombres (personas u organizaciones) ordenadas alfabéticamente y a las que le corresponden una dirección y un número de teléfono adjuntos. 

LDAP 

LDAP (Lightweight Directory Access Protocol, Protocolo Ligero de Acceso a Directorios) es un protocolo a nivel de aplicación que permite el acceso a un servicio de directorio ordenado y distribuido para buscar diversa información en un entorno de red.
 
Los despliegues actuales de LDAP tienden a usar Sistema de Nombres de Dominio (DNS) para estructurar los niveles más altos de la jerarquía. Conforme se desciende en el directorio desde los componentes del dominio (dc) pueden aparecer entradas que representan organizaciones (o), unidades organizacionales (ou), impresoras, documentos, grupos de personas o cualquier cosa que representa una entrada dada en el árbol (o múltiples entradas).

Jerarquía LDAP

Habitualmente almacena la información de autenticación (usuario y contraseña) y es utilizado para autenticarse aunque es posible almacenar otra información (datos de contacto del usuario, ubicación de diversos recursos de la red, permisos, certificados, etc.). A manera de síntesis, LDAP es un protocolo de acceso unificado a un conjunto de información sobre una red.
 
Existen diversas implementaciones y aplicaciones reales del protocolo LDAP como pueden ser: 
  • Active Directory (Directorio Activo)
  • OpenLDAP
  • Red Hat DS.
  • Novell Directory Services
  • IPLanet, 
La implementación que vamos a estudiar en este tema es la de Active Directory, utilizada por Microsoft en sus versiones servidores y basada en LDAP versión 3. AD permite integrar otros sistemas que soporten el protocolo. En este LDAP se almacena información de usuarios, recursos de la red, políticas de seguridad, configuración, asignación de permisos, etc.
DOMINIO 

En los grupos de trabajo todas las cuentas de usuario son locales y se almacenan en cada equipo individual. Al ser una red entre iguales, ningún equipo confía en los demás y no se permite entrar en la maquina a usuarios que no estén en la lista de usuarios locales de dicha máquina. 

Una solución para este problema es crear cuentas globales o comunes, es decir cuentas que no pertenezcan a una sola máquina, sino que sean reconocidas en todas las máquinas de la red. Para hacer esto, necesitamos establecer un ordenador especial que va a ser el encargado de almacenar todas estas cuentas globales, mientras que las cuentas locales seguirán estando almacenadas en cada equipo normal.
Este ordenador especial en el que todos los demás ordenadores confían pasa a ser un servidor y nuestro grupo de trabajo se convierte en un dominio, dado que se ha establecido una relación de dominio de un equipo sobre los demás.

Dominio frente a Grupo de trabajo

Si queremos trabajar en un dominio, hay que indicar en todos los equipos que dejamos de trabajar en un grupo de trabajo, y queremos conectarnos a un dominio. Podemos decir que los equipos deben decidir dejar de ser independientes para pasar a ser dominados por el servidor.
Es importante visualizar que un dominio toma conceptos de los grupos de trabajo y de los servicios de directorio. Por tanto el hecho de que una máquina pase a formar parte de un dominio y disfrutar de los recursos puestos por el servidor no significa que ya no pueda compartir sus propios recursos. Ahora podrá hacer las dos cosas. Los usuarios reciben privilegios de conexión a un dominio más que a un servidor individual. Debido a que un dominio controla los recursos de varios servidores, es más fácil de administrar que una red con muchos servidores individuales.

Los servidores, dentro del dominio, anuncian sus servicios a los usuarios, que se conectan a todos los recursos del dominio para el cual han recibido autorización de acceso, sin importar desde que servidor se conectaron ni que servidor está prestando el recurso.

Cuando las redes se vuelven lo suficientemente amplias como para requerir varios dominios, los administradores pueden establecer relaciones de confianza (trust) entre los dominios. Estas relaciones simplifican la administración, ya que un usuario sólo requiere una cuenta en uno de los dominios. Los otros dominios que confían en el dominio de conexión del usuario pueden depender de que el dominio de conexión autentifique dicha conexión.

Esquema de dominio con un DC

Los servidores dentro del dominio pueden tener uno de los papeles siguientes:
  • Controladores de dominio: Pertenecen al dominio y contienen una copia de las cuentas de usuario y otros datos del Directorio Activo. Es obligatorio que haya al menos un controlador de dominio.
  • Servidores miembro: Pertenecen al dominio y no contienen una copia de las cuentas de usuario y de otros datos del Directorio Activo. Se usan para almacenar archivos y otros recursos de la red.
  • Servidores independientes: Otros servidores fuera del dominio que pueden pertenecer a otros grupos de trabajo.