La red
Requisitos previos y objetivos
1. Requisitos previos
Tener conocimientos básicos de cómo funciona una red.
Tener una conexión Ethernet.
Poder acceder a otras máquinas de la red.
Tener acceso de administrador root.
2. Objetivos
Al final de este capítulo, será capaz de:
Comprender cómo funcionan las redes IP.
Configurar las interfaces de red.
Conocer los principales comandos para la administración de redes.
Administrar los principales archivos de configuración.
Configurar un cliente DNS.
Configurar los servicios de xinetd.
Utilizar clientes y servidores SSH.
Configurar un agente básico de transferencia de correo.
TCP/IP
El origen de la arquitectura de red TCP/IP (Transmission Control Protocol / Internet Protocol) proviene de la investigación de la DARPA (Defense Advanced Research Project Agency) que comenzó en 1970. En ese momento, la universidad de California Berkeley, integró los protocolos básicos de TCP/IP en su sistema UNIX.
TCP/IP se ha popularizado gracias a su interfaz genérica para programar intercambios de datos entre máquinas conectadas a la red, los primitivos sockets y la integración de protocolos de aplicación. Los protocolos TCP/IP los supervisa el IAB (Internet Architecture Board) que, a su vez, supervisa otras dos organizaciones:
-
IRTF (Internet Research Task Force), que es responsable del desarrollo de los protocolos.
-
IETF (Internet Engineering Task Force), que es responsable de la red de Internet.
Las direcciones de red las distribuye el NIC (Network Information Center) y en España, la RIPE NCC (iniciales de Redes IP Europeas Network Coordination Centre). Todos los protocolos de TCP/IP se describen en documentos RFC (Request For Comments) (ver RFC 793) que incluye, entre otros:
-
La capa de red está gestionada por el IP (Internet Protocol). Puede utilizar una variedad de protocolos a nivel físico y a nivel de enlace.
-
La capa de transporte se gestiona mediante los protocolos TCP (Transmission Control Protocol) o UDP (User Datagram Protocol).
-
Las capas superiores son las correspondientes a los protocolos de aplicación, por ejemplo:
-
HTTP (HyperText Transfer Protocol): protocolo para la Web.
-
NFS (Network File System): uso compartido remoto de archivos.
-
DNS (Domain Name System): asociación de nombres de host o de servicios ó direcciones IP.
-
FTP (File Transfer Protocol): transferencia de archivos.
-
La versión más utilizada del protocolo IP es la versión 4, y se espera que el protocolo IP versión 6 la sustituya en el futuro. IPv6 es compatible con IPv4 y ofrece direccionamiento con 128 bits para ampliar las capacidades de la red, especialmente en términos de tamaño y de direccionamiento.
1. Direccionamiento IPv4
Antes de proceder a la instalación, es importante saber en qué tipo de red TCP/IP debe integrar el nuevo servidor. Al menos, se le debe asignar una dirección IP y una máscara de subred (netmask), un nombre de máquina de red (hostname), eventualmente su nombre de dominio...
Servicios de red xinetd
El demonio xinetd es un "superservicio" que permite controlar el acceso a un conjunto de servicios, telnet, por ejemplo. Muchos servicios de red se pueden configurar para funcionar con xinetd, como los servicios ftp, ssh, samba, rcp, HTTP, etc. Se pueden aplicar opciones de configuración específicas para cada servicio administrado.
systemd, que permite controlar tanto un socket como un servicio, hace que el uso de xineTd quede obsoleto en las distribuciones recientes. Sin embargo, xinetd todavía está presente en algunos sistemas en producción y es necesario conocerlo para poder obtener la certificación LPIC-1.
Cuando un host cliente solicita conectarse a un puerto controlado por xinetd, xinetd recibe la solicitud y comprueba primero los permisos de acceso TCP (ver tcp_wrappers en el siguiente capítulo) y luego las reglas definidas para dicho servicio (permisos específicos, recursos asignados, etc.). A continuación, se inicia una instancia del servicio asociado con el puerto, y xinetd le reenvía la solicitud de conexión. A partir de este momento, xinetd no interfiere más en la conexión entre el cliente y el servidor.
1. Configuración
Los archivos de configuración son:
-
/etc/xinetd.conf: configuración global.
-
/etc/xinetd.d/*: directorio que contiene archivos específicos del servicio. Hay un archivo por servicio, con el mismo nombre que el especificado en /etc/services.
Ejemplo
$ ls -l /etc/xinetd.d
total 92
-rw-r--r-- 1 root root 313 sep 22 2007 chargen
-rw-r--r-- 1 root root 333 sep 22 2007 chargen-udp
-rw-r--r-- 1 root root 256 mar 20 22:11 cups-lpd
-rw-r--r-- 1 root root 409 nov 4 2005 cvs
-rw-r--r-- 1 root root 313 sep 22 2007 daytime
-rw-r--r-- 1 root root 333 sep 22 2007 daytime-udp ...
OpenSSH
OpenSSH es un protocolo de shell seguro, un mecanismo que permite la autenticación segura, la ejecución remota y la conexión remota. También permite el transporte seguro del protocolo X Window. Por último, es capaz de encapsular protocolos no seguros redirigiendo puertos.
Los paquetes de software que se utilizarán para un servidor son openssh, openssl y openssh-clients. La lista de paquetes que se deben instalar depende de cada distribución.
El uso más común es el acceso remoto seguro al servidor, en modo terminal a través del cliente ssh.
1. Configuración del servidor ssh
El archivo de configuración es /etc/ssh/sshd_config, complementado por los archivos *.conf del repertorio /etc/ssh/sshd_config.d/. Hay algunas opciones que puede que sea necesario modificar:
-
Port: número de puerto; por defecto, 22.
-
Protocol: establecido en 2 por defecto. Si se configura con el valor 1, permite SSH1 y SSH2. Es preferible SSH2, por lo que dejaremos el valor 2 solo.
-
ListenAddress: por defecto, ssh escucha en todas las direcciones IP del servidor. Solo se puede permitir la escucha en una interfaz determinada.
-
PermitRootLogin: ssh puede permitir o impedir inicios de sesión con la cuenta de administrador root. Podemos establecer el valor en "no". En este caso, debe iniciar sesión como un simple usuario y usar su o sudo para usar la cuenta de administrador root.
-
Banner: ruta de acceso de un archivo, cuyo contenido se mostrará a los usuarios al iniciar sesión.
ssh puede ser un servicio de System V que se inicia con el comando service o mediante /etc/init.d/sshd, o puede ser administrado por una unidad systemd.
Ejemplo
# service sshd start
A través de systemd:
# systemctl status sshd
● sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; preset:
enabled)
Active: active (running) since Mon 2023-07-24 14:58:27 CEST; 1 day 3h ago
Docs: man:sshd(8)
man:sshd_config(5)
Main PID: 882 (sshd)
Tasks: 1 (limit: 22459)
Memory: 6.3M
CPU:...
Correo electrónico
El correo electrónico implica diferentes servicios entre el emisor y el receptor, operando en modo cliente-servidor:
-
Cuando un cliente (un usuario) envía un mensaje, utiliza un MUA (Mail User Agent), por ejemplo, Thunderbird, Evolution, Kmail, Mutt, Outlook Express, etc.
-
El MUA dirige el mensaje al MTA (Mail Transport Agent). El MTA examina la dirección electrónica para determinar el usuario y el dominio de destino y, a continuación, busca la información de DNS de tipo MX (Mail Xchanger) para el dominio elegido, para saber a qué servidor reenviar el correo. Si no hay ningún MTA remoto disponible, el mensaje se pone en cola y el MTA vuelve a intentar la entrega más tarde (el retraso depende de la configuración del MTA).
-
El MX puede ser otro MTA, que actuará como enrutador (en el caso de una redirección a un subdominio, por ejemplo), o un MDA (Mail Delivery Agent). El MDA coloca el mensaje en un archivo temporal, puede filtrarlo, etc.
-
El destinatario recibe el mensaje: bien lo recupera leyendo directamente el archivo temporal (en el caso del comando mail, por ejemplo), bien pasa por un protocolo de tipo POP o IMAP.
-
El protocolo de transporte de mensajes es el SMTP (Simple Mail Transfer Protocol) en el puerto 25.
-
Los protocolos para recibir mensajes son POP (Post Office Protocol) en el puerto 110 (POP3 o POP4) o IMAP (Internet Message Access Protocol).
Los dos servicios...
Validación de aprendizajes adquiridos: preguntas y respuestas
1. Preguntas
Si cree conocer suficientemente este capítulo, conteste a las siguientes preguntas:
Conceptos básicos de TCP/IP
1 ¿De cuántos bits consta una dirección IPv4?
2 ¿Cuál de las siguientes direcciones es válida para equipos conectados a Internet?
-
A - 171.27.43.10
-
B - 172.18.25.128
-
C - 34.352.28.17
-
D - 192.169.194.69
3 Una empresa utiliza un rango de direcciones IP de tipo 10.x.y.z. ¿Cuál es la clase de IP correspondiente?
4 La misma empresa quiere crear subredes de unas mil máquinas. ¿Cuál es la máscara de subred asociada?
5 ¿Cómo es la pasarela a la que se envían todos los paquetes si no hay otra ruta adecuada?
6 Una empresa opera una red en 10/22 (255.255.252.0). La pasarela predeterminada para cada subred es aquella en la que los últimos 10 bits se establecen con valor 1, excepto el último que tiene valor 0. ¿Cuál es la IP de la pasarela de subred 10.17.32.0?
Configuración IP
7 Con NetworkManager, utilice un comando para configurar la interfaz eth0 con IP 10.17.32.28/22, pasarela 10.17.32.254 y active la interfaz.
8 En una distribución de tipo Red Hat que utiliza el antiguo sistema de configuración de red, ¿cuál es la ruta al archivo de configuración de la interfaz eth1?
9 En una distribución de tipo Red Hat, ¿qué entrada del archivo de configuración del adaptador eth0 permite declarar el adaptador de cliente DHCP?
-
A - ONBOOT=DHCP
-
B - MASTER=DCHP
-
C - BOOTPROTO=DHCP
-
D - IPADDR=DHCP
10 ¿Cómo se detiene y se inicia en Debian la interfaz eth0?
11 En Debian, ¿qué significan las líneas "auto eth2" e "iface eth2 inet dhcp" en el archivo /etc/network/interfaces?
12 ¿Cómo se elimina la ruta predeterminada?
13 ¿Cuál es el puerto predeterminado que se utiliza para conectarse a un servidor FTP?
-
A - 20
-
B - 21
-
C - 22
-
D - 23
Herramientas básicas de red
14 ¿Es recomendable utilizar telnet?
15 ¿Cómo se emiten 10 solicitudes de echo ICMP a todos los dispositivos de la subred 10.17.32.28/22?
16 Parece que se ha interrumpido el tráfico de red en el adaptador eth0. ¿Cómo se comprueba el estado del tráfico?
17 ¿Qué comandos muestran...
Prácticas
1. Configuración TCP/IP
Objetivo: configurar un adaptador de red con una nueva dirección IP estática en una distribución mediante NetworkManager.
1. |
Identifique los parámetros necesarios para la configuración mínima del adaptador de la interfaz de red. |
2. |
Cree un perfil de conexión para el adaptador de red con nmcli, con la nueva dirección IPv4 estática. |
3. |
Habilite el perfil de conexión del adaptador de red con nmcli. Compruebe la conectividad. Elimine el perfil de conexión antiguo del adaptador de interfaz, de haberlo. |
4. |
Reinicie el sistema y compruebe que el adaptador de interfaz esté activo y correctamente configurado. |
Soluciones posibles
Objetivo: configurar un adaptador de red con una nueva dirección IP estática en una distribución que utiliza NetworkManager.
1. |
Identifique los parámetros necesarios para la configuración mínima del adaptador de la interfaz de red. Nuevos parámetros:
Mostrar los adaptadores de interfaz disponibles:
Vea la configuración IPv4 actual del adaptador que desea configurar:
|
2. |
Cree un perfil de conexión para el adaptador de red con nmcli, con la nueva dirección... |