¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. Red Hat Enterprise Linux - CentOS
  3. CentOS
Extrait - Red Hat Enterprise Linux - CentOS Puesta en marcha y gestión de servidores
Extractos del libro
Red Hat Enterprise Linux - CentOS Puesta en marcha y gestión de servidores Volver a la página de compra del libro

Redes

Principios generales

Una configuración de red básica en un servidor requiere cuatro elementos:

  • Un nombre de máquina.

  • Una dirección IP y una máscara de red.

  • Una puerta de enlace predeterminada.

  • La dirección de los servidores DNS.

Hay dos formas de obtener estos elementos:

  • Automáticamente: por un servidor DHCP (y, en IPv6, por el router). La máquina solicita un servidor DHCP en la red, que le devuelve estos parámetros en una respuesta exclusiva. La dirección IP puede cambiar regularmente, en el caso de una estación de usuario. El servidor DHCP también puede optar por asignar una dirección IP permanente, en el caso de un servidor: se dice que la dirección IP está reservada.

  • Manualmente: el gestor de la máquina configura estos distintos parámetros. También en este caso, el gestor puede optar (raramente) por cambiar la dirección IP en función de sus necesidades, pero lo más frecuente es que elija una dirección IP estática.

Estos parámetros de red se pueden visualizar y configurar de dos maneras:

  • Con herramientas heredadas (legacy, obsoletas): anteriormente, la configuración de la red se realizaba manualmente, en archivos de configuración comandados por scripts. Los cambios pueden visualizarse mediante comandos como route, ifconfig, etc. Estos comandos siguen existiendo a efectos de análisis, pero la configuración real se lleva a cabo con la nueva herramienta nmcli.

  • Con la nueva herramienta unificada nmcli: dado que los archivos de configuración y los scripts asociados son cada vez más numerosos y heterogéneos en función de la distribución, en las versiones recientes de Linux (incluidas RHEL 7 y superiores), la herramienta nmcli pretende estandarizar la forma de configurar la red.

En la primera parte, examinamos los antiguos comandos aún útiles...

Configurar y diagnosticar redes

1. Nombre del anfitrión

Para comprobar el nombre de anfitrión asignado a la máquina, simplemente escriba el comando hostname en la máquina en cuestión:

[root@cobb ~]# hostname 
cobb.acme.com 

O conéctese desde otra máquina. Debería ver el nombre del host al menos en la línea de comandos:

[root@eames ~]# ssh jdoe@192.168.0.37 
jdoe@192.168.0.37's password: 
Last login: Sun Dec 12 21:31:24 2010 from 192.168.0.1 
[jdoe@cobb ~]$ 
[jdoe@cobb ~]$ hostname 
cobb.acme.com 

2. Estado de las interfaces de red

a. Consultar usando ifconfig

Puede ver las interfaces existentes en su máquina simplemente escribiendo ifconfig:

[root@cobb ~]# ifconfig 
ens33     Link encap:Ethernet  HWaddr 00:0C:29:29:64:96 
          inet adr:192.168.0.37  Bcast:192.168.0.255 
          Netmask:255.255.255.0 
          adr inet6: fe80::20c:29ff:fe29:6496/64 Scope:Link 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1 
          RX packets:14280 errors:0 dropped:0 overruns:0 frame:0 
          TX packets:1676 errors:0 dropped:0 overruns:0 carrier:0 
          collisions:0 lg file transmission:1000 
          RX bytes:1826809 (1.7 MiB)  TX bytes:234914 (229.4 KiB) 
          Interruption:19 Base address:0x2000 
 
lo        Link encap:Bucle local 
          inet adr:127.0.0.1  Netmask:255.0.0.0 
          adr inet6: ::1/128 Scope:Hôte 
          UP LOOPBACK RUNNING  MTU:16436  Metric:1 
          RX packets:4 errors:0 dropped:0 overruns:0 frame:0 
          TX...

Seguridad: configurar el cortafuegos para un servidor

1. Introducción

Sobra repetir lo importante que es la seguridad. A lo largo de este libro, se insiste en que la seguridad de su servidor debería ser una cuestión de rutina. Por supuesto, el cortafuegos (firewall) es la primera línea de defensa que debe instalarse en una máquina.

Un cortafuegos es una herramienta de filtrado de paquetes, es decir, criba los paquetes entrantes y salientes de una máquina o red. Existen dos tipos principales de cortafuegos:

  • Cortafuegos de la máquina (o cortafuegos del sistema): se trata de un filtro de paquetes instalado en la máquina. Cierne los paquetes que entran y salen de la máquina.

  • Cortafuegos de red: se trata de una máquina situada a la entrada de la red, que filtra el tráfico de red entrante y saliente.

Aunque las tecnologías son bastante similares entre los dos tipos de cortafuegos, las configuraciones son relativamente diferentes. Conscientes de que existen herramientas especializadas en el filtrado de redes y de que Red Hat Enterprise Linux no es una de ellas, aquí le mostraremos cómo configurar un cortafuegos para un servidor.

La presencia de un cortafuegos en el servidor no impide establecer una sólida seguridad de red si se utiliza lo siguiente:

  • Cortafuegos de red.

  • IDS (Intrusion Detection System, Sistema de Detección de Intrusos): un sistema que detecta comportamientos anómalos en la red y le alerta en caso de sospecha de intrusión.

  • Proxy: utilización de un servidor proxy para las conexiones a Internet. Esto proporciona una mayor seguridad para los flujos salientes.

  • VPN: (Virtual Private Network, red privada virtual) conexión segura entre dos sitios remotos.

Configurar un cortafuegos en un servidor implica principalmente filtrar el tráfico entrante. Decidimos qué puede entrar en la máquina para conectarse a los servicios de la máquina. Todo lo demás está prohibido.

Netfilter es el conjunto de componentes que forman el cortafuegos dentro del núcleo Linux.

El hecho de que el cortafuegos opere dentro del núcleo significa que se puede supervisar constantemente el flujo de datos que entran, salen y transitan por la máquina.

Anteriormente, hasta la versión 6 de RHEL, el usuario controlaba Netfilter con el comando iptables para la versión IPv4 e ip6tables...

Acceso seguro al servidor

1. SSH para la gestión remota

a. Presentación

SSH (Secure Shell, intérprete de comandos seguro) es una línea de comandos remota segura que permite conectarse a otro sistema Linux (entre otros). Esto le permite administrar la máquina a distancia, sin estar físicamente frente a ella y sin necesidad de recursos gráficos importantes.

Una conexión SSH tiene una serie de ventajas:

  • Seguridad:

  • Los datos que pasan a través de la conexión SSH se encriptan, es decir, se hacen ilegibles.

  • La máquina a la que se está conectando está autenticada, es decir, puede estar seguro de que es la máquina correcta (y no la máquina de un pirata informático que se está haciendo pasar por usted).

  • Compresión: los datos pueden comprimirse para mejorar la velocidad de transferencia.

  • Tunelización (tunneling): dentro de la conexión SSH, se pueden pasar datos de otras aplicaciones además de la línea de comandos. Por lo tanto, estos datos están protegidos e incluso comprimidos. El concepto no está tan alejado de la VPN.

b. Uso simple

El uso simple de SSH consiste en conectarse a otra máquina con una simple contraseña o, más exactamente, un par nombre de usuario/contraseña.

Cuando se conecte a otra máquina con un nombre de usuario, la cuenta debe existir en la máquina remota. Esta es la cuenta que utilizará una vez conectado.

En inglés, hablamos de login / password (a menudo abreviado como l/p), lo que es un uso indebido. De hecho, «login» viene de «to log in» (conectarse) y se refiere al aviso de conexión que pide el nombre de usuario.

Para conectarse a una máquina remota, escriba el siguiente comando:

ssh login@machine 

o:

ssh machine -l login 
  • machine es la dirección IP o el nombre de host de la máquina remota.

  • login es un nombre de usuario existente en la máquina remota (la opción -l significa login).

En el siguiente ejemplo, nos conectamos a la máquina eames con su dirección IP, utilizando la cuenta de guest:

[jdoe@cobb ~]$ ssh guest@192.168.0.1 
The authenticity of host '192.168.0.1 (192.168.0.1)' can't be 
established. 
RSA key fingerprint is 
52:b3:c1:72:eb:01:e4:94:57:69:49:25:b2:8b:b4:ec. 
Are you sure you want to continue...