Tema 7 Redes
Tema 7 Redes
Tema 7 Redes
Uno de los servicios de la capa de sesión es manejar el control del diálogo. Las sesiones
pueden permitir que el tráfico vaya en ambas direcciones al mismo tiempo, o sólo en
una dirección a la vez.
Otra función de la capa de presentación es la de comprimir los datos para que las
comunicaciones sean menos costosas; o la de encriptación para garantizar su
privacidad.
- OSI distingue de forma clara los servicios, las interfaces y los protocolos. TCP/IP no lo
hace así, no dejando de forma clara esta separación.
- OSI fue definido antes de implementar los protocolos, por lo que algunas
funcionalidades necesarias fallan o no existen. En cambio, TCP/IP se creó después que
los protocolos, por lo que se amolda a ellos perfectamente.
- TCP/IP parece ser más simple porque tiene menos capas.
Generalidades:
Los protocolos TCP/IP son los estándares en torno a los cuales se desarrolló la Internet,
de modo que la credibilidad del modelo TCP/IP se debe en gran parte a sus protocolos.
Protocolos de apoyo.
- DHCP: Es un protocolo de red que permite a los nodos de una red IP obtener sus
parámetros de configuración automáticamente.
- DNS: Con DNS es posible identificar a los dispositivos con nombres simbólicos
asociándolos a una dirección de red, para tanto ámbitos privados como públicos.
- SNMP: Este protocolo se definió para supervisar y administrar una red. La estructura
SNMP y su protocolo se implementaron ampliamente y se volvieron los estándares
para la administración de redes.
Aplicaciones.
Además, si un portátil o cualquier tipo de equipo móvil se configura para DHCP, podrá
desplazarse entre distintas oficinas sin tener que volver a configurarlo, siempre y
cuando cada oficina tenga un servidor DHCP que permita su conexión a la red.
Funcionamiento de DHCP
Renovación de la concesión
Transcurrido un 50% del tiempo de la concesión el cliente intenta renovarla
dirigiéndose al mismo servidor DHCP. El servidor decide si le renueva la concesión,
concediéndole un nuevo plazo o no.
Si el cliente no ha renovado su concesión, lo vuelve a intentar de nuevo transcurridos
7/8 (87.5%) del tiempo de concesión, pero esta vez se dirige a todos los servidores
DHCP disponibles mediante un broadcast. Si no logra renovar la concesión ni recibir
una nueva, liberará la concesión cuando se cumpla el tiempo límite.
Si no se obtiene una dirección IP de un servidor DHCP el cliente se puede autoasignar
una en el rango de la red 169.254.0.0/16. En Windows el servicio que se encarga de
realizar esta asignación se denomina APIPA.
Ámbito
Se conoce como ámbito al conjunto de direcciones IP que puede asignar un servidor
DHCP
Reserva
Una reserva es una dirección IP reservada para un dispositivo en concreto, de modo
que a dicho dispositivo se le asigne siempre la misma dirección IP.
Opciones DHCP
En una concesión se pueden incluir varias opciones:
Dirección IP
Máscara
Gateway
Servidores DNS
Servidores WINS
Dominio DNS
Tiempo de la concesión
Liberación de una concesión
Cuando un cliente libera una concesión de dirección IP (porque finaliza su plazo
máximo de concesión o bien porque no la va a usar más) envía un paquete llamado
DHCPRelease.
Cliente DHCP en Linux
En linux la información de las concesiones recibidas se almacena en el fichero
/var/lib/dhcp/dhclient.leases. Consultando este fichero se puede ver el estado de las
concesiones recibidas.
También es posible modificar los parámetros de configuración del cliente modificando
el archivo /etc/dhcp/dhclient.conf
Agente de retransmisión o Relé
Un agente de retransmisión o relé en vía las peticiones DHCP a los servidores que se le
indican, de forma que al no realizarse mediante broadcast puedan atravesar los routers
y alcanzar redes diferentes.
Umbral de recuento de saltos: es el límite de saltos que puede dar un paquete antes de
ser eliminado.
Umbral de inicio: es el tiempo que espera un agente relé antes de enviar la petición a
los servidores DHCP que conoce (para dar tiempo a que conteste el de la propia red
física).
DNS
Para la operación práctica del sistema DNS se utilizan tres componentes principales:
- Los Servidores DNS: Que contestan las peticiones de los clientes. Los servidores
recursivos tienen la capacidad de reenviar la petición a otro servidor si no disponen de
la dirección solicitada.
En cualquier caso, los servidores DNS que reciben la petición, buscan en primer lugar si
disponen de la respuesta en la memoria caché. Si es así, sirven la respuesta; en caso
contrario, iniciarían la búsqueda de manera recursiva. Una vez encontrada la respuesta,
el servidor DNS guardará el resultado en su memoria caché para futuros usos y
devuelve el resultado.
Jerarquía DNS.
Los objetos de un dominio DNS (por ejemplo, el nombre del equipo) se registran en un
archivo de zona, ubicado en uno o más servidores de nombres.
- A = Address – (Dirección) Este registro se usa para traducir nombres de hosts a
direcciones IP.
- CNAME = Canonical Name – (Nombre Canónico) Se usa para crear nombres de hosts
adicionales, o alias, para los hosts de un dominio. Es usado cuando se estan corriendo
multiples servicios (como ftp y web server) en un servidor con una sola direccion ip.
Cada servicio tiene su propia entrada de DNS (como ftp.ejemplo.com. y
www.ejemplo.com.). Esto también es usado cuando corres múltiples servidores http,
con diferente nombres, sobre el mismo host.
- NS = Name Server – (Servidor de Nombres) Define la asociación que existe entre un
nombre de dominio y los servidores de nombres que almacenan la información de
dicho dominio. Cada dominio se puede asociar a una cantidad cualquiera de servidores
de nombres.
- MX (registro) = Mail Exchange – (Registro de Intercambio de Correo) Asocia un
nombre de dominio a una lista de servidores de intercambio de correo para ese
dominio.
- PTR = Pointer – (Indicador) También conocido como 'registro inverso', funciona a la
inversa del registro A, traduciendo IPs en nombres de dominio.
- SOA = Start of authority – (Autoridad de la zona) Proporciona información sobre la
zona.
- HINFO = Host INFOrmation – (Información del sistema informático) Descripción del
host, permite que la gente conozca el tipo de máquina y sistema operativo al que
corresponde un dominio.
- TXT = TeXT - ( Información textual) Permite a los dominios identificarse de modos
arbitrarios.
- LOC = LOCalización - Permite indicar las coordenadas del dominio.
- WKS - Generalización del registro MX para indicar los servicios que ofrece el dominio.
Obsoleto en favor de SRV.
- SRV = SeRVicios - Permite indicar los servicios que ofrece el dominio. RFC 2782
- SPF = Sender Policy Framework - Ayuda a combatir el Spam. En este registro se
especifica cual o cuales hosts están autorizados a enviar correo desde el dominio dado.
El servidor que recibe consulta el SPF para comparar la IP desde la cual le llega, con los
datos de este registro.
Los Servidores DNS utilizan TCP y UDP en el puerto 53 para responder las consultas.
Casi todas las consultas consisten en una sola solicitud UDP desde un Cliente DNS
seguida por una sola respuesta UDP del servidor. TCP interviene cuando el tamaño de
los datos de la respuesta exceden los 512 bytes, tal como ocurre con tareas como
transferencia de zonas.
Consultas DNS
Las consultas que admite un servidor DNS pueden ser de dos tipos:
recursivas: las habituales. En este caso todo el trabajo lo realiza el servidor DNS
al que se le consulta.
iterativa: o mejor dicho, no recursivas. En este caso el cliente debe seguir las
indicaciones del servidor en vez de esperar de forma pasiva a recibir una
respuesta de éste.
Los servidores raíz sólo aceptan consultas no recursivas, pues en caso contrario todo el
mundo los configuraría como su servidor DNS yno podrían soportar la carga de
trabajo.
Podemos solicitar una transferencia de zona completa (todos los registros del DNS
referentes a un dominio usando el comando dig:
En Windows sólo disponemos del comando nslookup y es todo mucho más intuitivo.
Usando ndlookup sólo hay que hacer a continuación:
Dominios genéricos o gTLD (generic Top Level Domain). Como los .com, .gov
(gobierno de EEUU), .edu (para educación), .org (organismos sin ánimo de
lucro), etc
Dominios geográficos o ccTLD (country code Top Level Domain).
Como .es, .fr, .uk, .it, .de o .eu
En 1998 y tras controversia por el intento de EEUU de mantener el control sobre los
organismos que regían Internet se creó ICANN, que se ha quedado con la mayoría de
funciones que antes tenía IANA. IANA mantiene aún el control sobre los root servers y
algunos dominios como el .com.
Subdominios
URL
http://moodle.iescierva.net/mod/page/view.php?id=11385
¿Qué es HTTP?
Se usa no sólo para transmitir documentos de hipertexto (HTML), sino que además, se
usa para transmitir imágenes o vídeos, o enviar datos o contenido a los servidores,
como en el caso de los formularios de datos.
En la versión del protocolo HTTP/1.0, habría una conexión TCP por cada
petición/respuesta intercambiada, presentando esto dos grandes inconvenientes: abrir
y crear una conexión requiere varias rondas de mensajes y por lo tanto resultaba lento.
Esto sería más eficiente si se mandaran varios mensajes.
Para atenuar estos inconvenientes, la versión del protocolo HTTP/2 fue más allá y usa
multiplexación de mensajes sobre una única conexión, siendo así una comunicación
más eficiente.
2. Abre una conexión TCP: la conexión TCP se usará para hacer una petición, o
varias, y recibir la respuesta.
Cookies
Una cookie es una pequeña pieza de datos que un servidor envía al navegador web del
usuario. El navegador guarda estos datos y los envía de regreso junto con la nueva
petición al mismo servidor.
Las cookies permiten recordar la información de estado en vista a que el protocolo
HTTP es un protocolo sin estado.
Gestión de Sesiones
Inicios de sesión, carritos de compras, puntajes de juegos o cualquier otra cosa que el
servidor deba recordar
Personalización
Rastreo
Las cookies se usaron una vez para el almacenamiento general del lado del cliente. Si
bien esto era legítimo cuando eran la única forma de almacenar datos en el cliente, hoy
en día se recomienda preferir las API de almacenamiento modernas.
Las cookies se envían con cada solicitud, por lo que pueden empeorar el rendimiento
(especialmente para las conexiones de datos móviles).
Las APIs modernas para el almacenamiento del cliente son la Web storage
API (localStorage y sessionStorage) e IndexedDB.
HTTP VS HTTPS
HTTPS utiliza una combinación de dos protocolos (HTTP+SSL/TLS) que hace que
cualquier tipo de información que se transmita en la red sea cifrada y nadie pueda
acceder a ella, únicamente navegador y servidor web. Y para ello es necesario que tu
web tenga instalado un Certificado SSL.
La parte más conocida del servicio http son las páginas webs. Están escritas en lenguaje
HTML.
Servicio FTP
El protocolo FTP (File Transfer Protocol) se utiliza para poder compartir ficheros de
forma más o menos fiable. Utiliza los servicios del nivel de transporte, en concreto del
protocolo TCP para establecer dos tipos de conexiones:
Modo de conexión
Modo activo
Modo pasivo
Conexión
Al introducir un nombre de usuario el servidor FTP nos sitúa en el directorio que dicho
usuario tenga configurado como home FTP. Ese directorio puede ser diferente para
cada usuario.
Muchos servidores FTP permiten conexiones anónimas, para las cuales se emplea el
usuario anonymous. Al hacer uso del usuario anonymous hay dos posibilidades: que la
password esté vacía o que al introducir como user anonymous se muestre información
acerca de la password a utilizar. Este segundo método es un poco más seguro ya que
dificulta que un robot busque servicios FTP a los que conectarse. De todas formas la
información accesible mediante usuario anonymous no debería nunca ser relevante.
Tipos de transferencia
Correo electrónico
Los protocolos empleados para el correo electrónico son protocolos con estado, esto
es, responden de diferente forma dependiendo del estado de la conexión.
El MTA del destinatario entrega el correo electrónico al servidor del correo entrante
o MDA (Mail Delivery Agent o Agente de Entrega de Correo o de Recogida de Correo),
que es quien guarda el correo electrónico hasta que lo solicite el usuario final.
La descarga y/o consulta de correo se realiza a través de un MUA o Mail User Agent
(Agente de Usuario de Correo). Es habitual referirse al MUA como cliente de correo
electrónico, aunque esto se reserva más para los MUA que se instalan en ordenadores
cliente (no para la consulta del correo vía web). Ejemplos de clientes de correo
electrónico son: Mozilla Thunderbird (Icedove en Debian), Microsoft Outlook, Outlook
Express, Eudora Mail, etc.
Para recogida se opta por POP (concretamente POP3) o por IMAP. Por defecto POP se
descarga el correo y los borra del servidor mientras que IMAP deja copia de los correos
en el servidor hasta que el cliente expresamente solicita que se borren. Sin embargo
este comportamiento depende hoy día de la configuración del servidor de correo, por
lo que no debemos considerarlo como un comportamiento estándar del servicio.
El protocolo SMTP utiliza por defecto el puerto 25, salvo cuando se emplea
sobre SSL en cuyo caso el puerto reservado a tal fin es el 587.
IMAP utiliza el puerto 143 salvo cuando funciona sobre SSL. En este caso tiene
reservado el 993 según los RFCs.
POP3 emplea el puerto 110. Si se emplea sobre SSL se suele poner en el 995,
puerto reservado a tal fin en los RFCs.
El servidor de correo electrónico es uno de los más preocupantes en cuanto a su
seguridad. Es muy atractivo para los spammers, por lo que debe ser protegido
concienzudamente. Normalmente se incorpora una capa SSL o TLS para encriptar la
comunicación.
Origen del término spam: Originalmente la palabra spam surgió como abreviatura de
“spiced ham” (jamón con especias), y fue la marca usada por la empresa charcutera
estadounidense Hormel Foods en 1957 cuando lanzó al mercado su nuevo producto de
carne. Durante la Segunda Guerra Mundial lo usaron como alimento los soldados
británicos y soviéticos. El grupo británico de humoristas Monty Python se burló de él en
una famosa escena cómica que proporcionó la fama definitiva al término: cuatro
vikingos leen un menú que ofrece muchos platos pero todos contienen SPAM y
empiezan a gritar la palabra: "¡Al rico SPAM!". De ahí vino la asociación con una cosa
abundante que nadie quiere.
usuario@dominio
AMPLIACIÓN
Encabezado: donde están los datos del correo electrónico como el remitente, el
destinatario, la fecha y hora del mismo, etc
Cuerpo: la información que se envía propiamente dicha.
Date: fecha del correo. No se suele mostrar al usuario. La ponen los MTA.
To: Indica a qué dirección o direcciones de correo va dirigido el mensaje
CC: (Copia Carbón) Destinatarios a los que se les envía una copia del mensaje,
pero el mensaje no iba dirigido expresamente para ellos.
BCC: Destinatarios a los que se les envía el mensaje, pero de forma que cada
destinatario no sepa quién más ha recibido el mail. Si el destinatario pulsa
Responder a todos (u opción equivalente) sólo el emisor o los incluidos en el
campo CC recibirán la respuesta; no así los incluidos en BCC. En castellano CCO.
reply-to: sirve para especificar una dirección de respuesta diferente a la cual
envió el mail.
En el cuerpo destaca el Subject (asunto): para incluir una descripción breve del
contenido.
Entre el software para servidores de correo electrónico podemos citar:
MIME (Multipurpose Internet Mail Extension): Como indica su propio nombre, este
estándar se definió para ser usado con el correo electrónico aunque hoy día se emplea
en muchos otros servicios, también en http. En este estándar se definen los tipos de
letra, los formatos y otras características.
Proxy
Los motivos para usar un proxy pueden ser diversos, pero básicamente son dos:
Un proxy transparente es un proxy que reenvía las peticiones que recibe el gateway.
Normalmente el gateway es él mismo. De esta forma el usuario no tiene que tener
conocimiento de la existencia del proxy. Hay discusiones morales respecto a la
conveniencia de emplear un proxy transparente.
Un proxy guarda registro de las conexiones de los usuarios. Esto puede ser importante
ya que cada organismo es responsable de su conexión a Internet y del uso que se hace
de ella, por lo que puede servir para realizar un análisis a posteriori en caso de que se
sospeche de que se puede haber cometido algún delito.
El software para proxy más empleado es Squid. Squid se usa muchas veces en
conjunción con un filtro de sitios y contenidos, como dansguardian. Un servidor proxy
no es un filtro de contenidos en sí, aunque con él se pueda impedir el acceso a
determinados sitios. Si se desea filtrar se debe emplear otro software como
dansguardian.
El puerto por defecto para el proxy es el 3128, aunque para proxy transparente se suele
emplear el 8080.
El servidor proxy cachea contenidos que se transfieren en conexiones sin encriptar. Los
contenidos que se transfieren mediante https, por ejemplo, no los puede cachear un
proxy, obviamente.
LDAP
NFS
Los directorios remotos pueden ser montados con el mismo comando con que se
montan dispositivos del equipo: mount.
NFS usa los puertos 111 (TCP y UDP) y 2049 (TCP y UDP).
Los recursos que se comparten con un nombre que finaliza con un signo dólar son
recursos ocultos, que no se difunden. Por defecto Microsoft comparte con propósitos
administrativos la unidad C: (C$).
Los usuarios de sistemas Microsoft visualizan los recursos compartidos como carpetas
normales de red.
Cada recurso compartido tiene diferentes permisos para su acceso por SMB o Samba,
de tal forma que los permisos resultantes son una combinación de los permisos del
directorio que se comparte con los que se otorgan mediante SMB.
NetBIOS
NetBIOS, Sistema de Entrada Salida Básica de Red es un protocolo estándar de IBM,
que permite que las aplicaciones sobre diferentes computadoras se comuniquen
dentro de una red de área local (LAN). Fue desarrollado en los años 80 para que las
aplicaciones usasen la capa de Sesión del modelo OSI. NetBIOS sobre TCP/IP envía
paquetes NetBIOS sobre TCP y UDP de la pila TCP/IP.
NetBIOS provee los servicios de sesión descriptos en la capa 5 del modelo OSI. Es un
protocolo de aplicación para compartir recursos en red. Se encarga de establecer la
sesión y mantener las conexiones. Pero este protocolo debe transportarse entre
máquinas a través de otros protocolos; debido a que por sí mismo no es suficiente para
transportar los datos en redes LAN como WAN, para lo cual debe usar otro mecanismo
de transporte (Ej: en redes LAN protocolo NetBEUI, en redes WAN protocolo TCP/IP).
Los protocolos que pueden prestar el servicio de transporte a NetBIOS son:
IPC/IPX
NetBEUI
TCP/IP
Nombres NetBIOS
NetBIOS identifica a los que intervienen en una comunicación mediante nombres, el
cual esta formado por 16 caracteres alfanuméricos. Cada byte puede consistir de
cualquier valor entre 0 a 255, excepto el primer y el 15º byte que han de ser
alfanuméricos. Los nombres que tengan una longitud menor a 16 byte son
completados con espacios y ajustados a la derecha. El último campo del nombre
NetBIOS se llama subcódigo y se trata de un código hexadecimal que indica el tipo de
recurso.
Los tipos de recurso más comunes son:
00 Servicio de computadora NetBIOS. Se trata del nombre básico del cliente
NetBIOS. Toda computadora posee uno.
03 Servicio de mensajería.
06 Servidor RAS.
1B Nombre del examinador maestro de dominio. PDC
1C Registra las direcciones de hasta 25 computadoras que son controladoras del
dominio.
1D Registra un examinador maestro.
1E Registra los servidores de exploración de la red.
1F Servicio NetDDE (Intercambio Dinámico de Datos en Red).
20 Servicio servidor. El que permite compartir recursos
21 Cliente RAS
BE Agente de monitor de red
BF La herramienta monitor de red
Existen dos tipos de nombres:
1. Nombre único: es el nombre usado por una única estación en toda la red,
identifica a un host en particular; siendo la red la encargada de chequear que
cuando una estación use un nombre sea la única en hacerlo. Un ejemplo de
nombre único es el que una estación usa para conectarse y comunicarse con el
servidor, este es usualmente el nombre de la estación.
2. Nombre de grupo: es el nombre usado por muchas estaciones
simultáneamente. A este nombre de grupo pueden sumarse cualquier número
de host. Este nombre facilita el multicasting.
El espacio de nombres NetBIOS es plano, lo que significa que todos los nombres se
registran en la misma asociación. Por esta razón se derivan características de NetBIOS:
o No pueden existir dos computadoras que tengan el mismo nombre
NetBIOS, aún cuando estas computadoras pertenezcan a dominios o a
grupos de trabajo distintos.
o No puede existir un ordenador con un nombre NetBIOS usado en un
grupo de trabajo o en un dominio.
o Una red no puede tener un dominio y un grupo de trabajo con el mismo
nombre NetBIOS.
Resolución de nombres NetBIOS: nodos finales
Existen tres tipos de nodos finales, según se refleja en el antiguo RFC 1001:
NODOS B: Broadcast
NODOS P: Punto a Punto
NODOS M: Modo Mixto
Los nodos B usan el broadcasting de la red local par encontrarse con uno o más
receptores; por su parte los nodos P y M se valen de los servidores soportados por
NetBIOS para comunicarse con otros nombres.
Nodos B
Estos nodos se comunican usando una mezcla de datagramas UDP y conexiones TCP.
Pueden operar con otros nodos libremente dentro de un área broadcast.
Los nodos B están limitados a la red local dado que los routers TCP/IP no transmiten el
broadcast de solicitud de nombres a otras redes. Por tal razón es que este modo no
opera con el NBNS y NBDD; sino que por el contrario cuando necesita información de
un nombre usa una lista de computadoras y direcciones almacenadas en el archivo
/etc/inethosts. Si el intento del nodo B falla, el sistema mira en este archivo para
encontrar el nombre.
Nodos P
Estos nodos son punto a punto, unicast y no transmiten el broadcast de mensajes, sino
que se confían de los servidores soportados por NetBIOS (WINS).
Nodos M
Son una combinación de los nodos P y B, ya que usa tanto el broadcast como el
unicast. De este modo primero se hace un broadcast para la solicitud de un nombre,
sino se recibe respuesta hace una solicitud al NBNS.
Si se configura con este nodo, se obtiene una respuesta lenta en el caso que el nombre
solicitado este en otra red.
Nodos H
En el RFC1001 solo se hace mención a estos tres nodos, pero de acuerdo a otra
documentación existe también este nodo H, Hybrid; que es un tipo mixto.
A la inversa de los nodos M, primero solicita un nombre al servidor de nombres y si
este no responde, hace broadcast para la solicitud del nombre. Esta es la configuración
preferida cuando se configura el soporte WINS.
Cabecera NetBIOS
Los campos en la cabecera del datagrama NetBIOS que varían son:
Flags: cuyo primer bit indica si el fragmento es el primero en una secuencia de
fragmentos. Y el bit "More" del campo Flags indica si sigue otro fragmento.
Offset: es igual a la suma de los datos NetBIOS en los fragmentos anteriores. Siendo 0
para el primer fragmento.
De acuerdo a lo anterior son dos los casos posibles que pueden presentarse:
1. Si el datagrama NetBIOS no fue fragmentado
Campo FLAGS:
FIRST: True
MORE: False
Campo OFFSET: 0
2. Si el datagrama NetBIOS fue fragmentado
1er fragmento
Campo FLAGS:
FIRST: True
MORE: True
Campo OFFSET: 0
Fragmento intermedio
Campo FLAGS:
FIRST: False
MORE: True
Campo OFFSET: suma()
Ultimo fragmento
Campo FLAGS:
FIRST: False
MORE: False
Campo OFFSET: suma()
NetBIOS en WINDOWS
NetBIOS da una apariencia uniforme a todas las redes Windows independientemente
de los protocolos que se hayan utilizado para las capas de red y transporte. Permite
compartir archivos e impresoras así como ver los recursos disponibles en Entorno de
red.
NetBIOS utiliza los puertos 137, 138 y 139. Podemos averiguar si nuestro ordenador
tiene NetBIOS activado (en Windows) utilizando el comando netstat -an. Este
comando nos informará si tenemos los tres puertos anteriores en modo LISTENING.
Métodos de resolución de nombres NetBIOS
Caché NetBIOS. Es una tabla dinámica almacenada en cada ordenador que contiene los
últimos nombres que se han resuelto por otros métodos. Esta tabla se puede visualizar
mediante el comando nbtstat –c y será consultada antes de realizar broadcasting.
Broadcasting. Se pregunta el nombre a todos los ordenadores de la red.
Archivo LMHOSTS. Es un archivo de texto, situado en cada ordenador de la red, que
contiene una lista de direcciones IP y nombres NetBIOS.
Servidor WINS. Es un ordenador que contiene una lista centralizada de direcciones IP y
nombres NetBIOS. Esta lista se crea de forma dinámica a medida que se van
conectando y desconectando ordenadores en la red.
El método de resolución que funciona en una red si no se ha configurado otro es
broadcasting. Este método resuelve los nombres de forma correcta, sin embargo
genera un elevado tráfico en la red. Podemos conocer la cantidad de nombres que se
han resuelto mediante broadcasting utilizando el comando nbtstat –r.
Podemos reducir el número de mensajes de broadcasting en una red sin necesidad de
emplear un servidor mediante la creación, en cada máquina, de una lista con todos los
nombres NetBIOS de nuestra red y sus correspondientes direcciones IP. Esta lista se
debe incluir en un archivo llamado LMHOSTS. Sigue la siguiente sintaxis:
# Ejemplo de archivo LMHOSTS
192.168.0.1 router #PRE
192.168.0.5 minerva #PRE
192.168.0.6 saturno #PRE
Si utilizamos Windows 98 o Me encontraremos un archivo de ejemplo en C:\
WINDOWS\LMHOSTS.SAM. Este archivo debemos renombrarlo para que se llame C:\
WINDOWS\LMHOSTS. En Windows NT, 2000 y posteriores versiones la ubicación de
ambos archivos es C:\WINNT\SYSTEM32\DRIVERS\ETC. Después introduciremos los
cambios necesarios mediante el Bloc de notas o cualquier otro editor de textos. Para
que los cambios comiencen a funcionar debemos escribir el comando nbtstat -R. A
continuación podemos comprobar que los nombres se han almacenado correctamente
escribiendo nbtstat -c.
Windows comprobará el archivo LMHOSTS antes de hacer un broadcasting a la red. El
comando nbtstat -r nos permite comprobar cómo no se generan nuevos mensajes a
toda la red para los nombres que hayamos incluido en LMHOSTS. El problema de este
método es su difícil mantenimiento ya que cualquier cambio se debe reflejar en todos
los ordenadores de la red. Sin embargo, se pueden buscar formas para que el archivo
LMHOSTS se actualice automáticamente desde una sola máquina (por ejemplo,
mediante un script de inicio de sesión de Windows NT o mediante la cláusula
#INCLUDE de los archivos LMHOSTS).
El método más recomendable para redes medianas y grandes es utilizar un servidor de
nombres NetBIOS. Este servidor es una máquina Windows NT o 2000 con el Servicio de
nombres de Internet para Windows (WINS) configurado. En la pestaña "Configuración
WINS" de las propiedades de TCP/IP de cada ordenador cliente tenemos que indicar la
dirección IP del servidor WINS que hayamos configurado. Cada vez que escribamos un
nombre, nuestro ordenador preguntará al servidor WINS en lugar de hacer un
broadcasting a toda la red. Un servidor de nombres asegura, además, que los equipos
mostrados en Entorno de red se corresponden con los que realmente están
funcionando en la red.
TELNET (TELecommunication NETwork)
SSH
ssh es el acrónimo de secure shell. El nombre ssh sirve para designar tanto
al protocolo ssh como al programa cliente que permite la conexión remota segura. ssh
es un protocolo del nivel de aplicación, que funciona sobre el puerto 22 de TCP.
ssh utiliza sistemas de cifrado, lo que hacen de este protocolo un sistema seguro.
Además permite múltiples opciones que lo hacen muy importante hoy en día.
ssh es un protocolo relativamente nuevo. Apareció por vez primera en 1995. En 1997
surgió la empresa SSH Communications Security, que permite el uso de ssh a
particulares, pero no a empresas, que deben pagar por su uso.
En 1999 llegó la explosión definitiva de ssh cuando surgió una implementación gratuita
de ssh, el openssh, desarrollado por OpenBSD.
Al instalar ssh (u OpenSSH) se genera un par de claves privada-pública que sirven para
identificar al servidor. Por motivos de seguridad, y si pretendemos evitar que nos
engañen con un 'man-in-the-middle' u otras técnicas semejantes, debemos llevarnos o
bien la clave pública generada, o bien su fingerprint o 'huella dactilar'.
Cuando iniciemos conexión por primera vez contra el server, éste nos presentará su
fingerprint y podremos compararlo con el que habíamos apuntado o bien con el que
generemos en ese momento si tenemos en nuestro poder su clave pública.
Para generar el fingerprint mediante una clave pública se utiliza:
ssh-keygen -lf clave_pública
en la que se asume que el algoritmo a usar es rsa y que el directorio para almacenar las
claves por defecto es .ssh en el home de cada usuario. También se toma como nombre
por defecto para los ficheros de claves id_rsa, pero se puede modificar.
Con esto obtengo dos claves, una privada y otra pública. La clave pública se llama igual
que la privada pero añadiendo una extensión .pub.
Si pretendemos usar este sistema de clave privada clave pública para lanzar un cron
podré dejar la passphrase en blanco.
NOTA: Un buen sistema para volcar la clave pública al fichero authorized_keys de otro
host puede ser:
cat ~/.ssh/clave.pub | ssh user@host 'cat - >> ~/.ssh/auhorized_keys'
Agente ssh
Un agente ssh permite almacenar las claves generadas con el comando ssh-keygen y
recordar sus passphrases para no tener que teclearlas continuamente.
Es más seguro que exportar las claves públicas dejando la passphrase en blanco.
Es más sencillo de usar.
Para agregar las claves al agente se emplea ssh-add. Antes de agregar claves podemos
solicitar un listado de las claves almacenadas con la opción -l:
ssh-add -l
Ahora podremos conectar mediante ssh sin poner contraseña y sin especificar el fichero
de clave privada:
ssh host
El agente ssh funciona con todos los 'derivados' como scp, rsync, etc.
Uno de los programas más útiles en Unix es el cron. Se trata de un demonio que corre
en segundo plano y que permite ejecutar determinados comandos o tareas en la fecha
y hora que se le indique.
Las tareas a ejecutar junto con sus fechas y horas de ejecución se almacenan
normalmente en el fichero crontab.
Una línea de tarea del fichero crontab tiene el siguiente formato:
minuto hora día_del_mes mes día_de_la_semana usuario comando
En los campos de fecha/hora un asterisco (*) representa 'todos', es decir, en todos los
minutos, en todas las horas, etc.
Cada usuario tiene su propio crontab, al que accede utilizando el comando crontab -e.
Esto abre el editor de texto predeterminado y le permite agregar sus propias tareas al
cron utilizando el formato descrito anteriormente, pues sólo el root (en principio)
puede editar el /etc/crontab.
Se puede especificar qué usuarios tienen permitido ejecutar tareas mediante cron en el
fichero cron.allow y qué usuarios lo tienen prohibido en el fichero cron.deny. Además,
cuando se agrega una tarea a cron se envía un mensaje al usuario que tenga
especificado en la variable MAIL TO dentro del fichero crontab, como medida de
seguridad.
Comando rsync
El comando rsync trabaja sobre ssh, por lo que es preciso que exista un servidor ssh
(openssh-server, por ejemplo) en el host remoto para poder emplearlo. Tiene por tanto
las limitaciones de ssh: se puede ejecutar desde el ordenador local hacia un remoto y
viceversa, pero no entre dos hosts remotos.
Opciones típicas:
Se puede utilizar rsync para realizar copias de seguridad automatizadas con cron si
empleamos certificados sin clave para realizar la conexión.