脥ndice

Configuraci贸n del sistema en Linux

La configuraci贸n del sistema en Linux es un aspecto fundamental para personalizar y optimizar el funcionamiento de este sistema operativo de c贸digo abierto. En este art铆culo, exploraremos en qu茅 consiste la configuraci贸n del sistema en Linux y destacaremos algunas de las principales configuraciones que los usuarios pueden ajustar para adaptar su entorno seg煤n sus necesidades.

  1. Configuraci贸n de red: La configuraci贸n de red en Linux abarca la direcci贸n IP, configuraci贸n de conexiones WiFi, establecimiento de DNS, enrutamiento y m谩s. Puedes ajustar la configuraci贸n de red utilizando herramientas como 芦ifconfig芦, 芦ip禄 o 芦NetworkManager芦, permiti茅ndote personalizar y administrar tus conexiones de red de manera eficiente.

  2. Configuraci贸n del sistema de archivos: Linux ofrece una amplia variedad de sistemas de archivos para adaptarse a diferentes necesidades. La configuraci贸n del sistema de archivos te permite formatear discos, particionar unidades, montar sistemas de archivos, configurar permisos de acceso y encriptaci贸n, entre otras opciones. Herramientas como 芦fdisk芦, 芦mkfs禄 y 芦mount禄 son comunes en este contexto.

  3. Configuraci贸n de usuarios y grupos: La gesti贸n de usuarios y grupos en Linux es vital para garantizar la seguridad y el acceso adecuado a los recursos del sistema. Mediante comandos como 芦useradd芦, 芦usermod禄 y 芦groupadd芦, puede crear, modificar y eliminar usuarios y grupos, autorizar permisos y configurar directivas de contrase帽as.

  4. Configuraci贸n de servicios y demonios: Linux se destaca por su enfoque modular, donde los servicios y demonios desempe帽an un papel fundamental. La configuraci贸n de servicios, como Apache, MySQL o SSH, te permite personalizar sus par谩metros, habilitarlos o deshabilitarlos, y establecer su comportamiento de acuerdo con tus necesidades.

  5. Configuraci贸n de seguridad: Linux proporciona diversas medidas de seguridad, y configurarlas correctamente es esencial para proteger su sistema. Esto incluye configurar cortafuegos y reglas de iptables, establecer pol铆ticas de SELinux o AppArmor, configurar el acceso remoto seguro a trav茅s de SSH mediante claves de autenticaci贸n y configurar auditor铆as de seguridad para monitorear y analizar posibles brechas.

Configuraci贸n de red en Linux

En un sistema Linux, algunas de las principales configuraciones de red son:

  • Configuraci贸n de direcciones IP: Permite asignar direcciones IP est谩ticas o din谩micas a interfaces de red espec铆ficas.

  • Configuraci贸n de conexiones WiFi: Permite conectar el sistema a redes inal谩mbricas y configurar par谩metros como SSID, contrase帽a y grabados.

  • Configuraci贸n de DNS: Permite establecer servidores DNS para la resoluci贸n de nombres de dominio.

  • Configuraci贸n de enrutamiento: Permite configurar el enrutamiento de paquetes entre diferentes redes o subredes.

  • Configuraci贸n de interfaces de red: Permite habilitar, deshabilitar o configurar par谩metros espec铆ficos de las interfaces de red, como velocidad, modo d煤plex y MTU.

  • Configuraci贸n de cortafuegos: Permite establecer reglas de filtrado de paquetes para controlar el tr谩fico de red entrante y saliente.

  • Configuraci贸n de VPN: Permite configurar conexiones VPN (Virtual Private Network) para establecer t煤neles seguros y acceder a redes privadas de forma remota.

  • Configuraci贸n de proxy: Permite especificar la configuraci贸n del servidor proxy para redirigir el tr谩fico web a trav茅s de un servidor intermedio.

  • Configuraci贸n de puertos y servicios: Permite configurar puertos espec铆ficos para servicios y aplicaciones, como HTTP (puerto 80) o SSH (puerto 22).

Estas configuraciones ofrecen un amplio control sobre la conectividad y el funcionamiento de la red en un sistema Linux, adapt谩ndolo a los requisitos espec铆ficos de cada entorno y usuario.

Configuraci贸n est谩tica de direcciones IP

  • Para editar la configuraci贸n utilizaremos el archivo de configuraci贸n de red principal, que puede variar dependiendo de la distribuci贸n de Linux. Por ejemplo, en Ubuntu, es posible encontrarlo en /etc/network/interfaces o en distribuciones basadas en Red Hat, como CentOS o Fedora, se encuentra en /etc/sysconfig/network-scripts/ifcfg-<nombre_de_la_interfaz>.

  • Abre el archivo de configuraci贸n correspondiente utilizando un editor de texto, como Nano o Vim.

  • Busca la l铆nea que corresponde a la interfaz de red en la que desea configurar la direcci贸n IP (por ejemplo, 芦eth0禄 o 芦enp0s3芦).

  • Agrega o modifica las l铆neas para incluir la direcci贸n IP, la m谩scara de subred, la puerta de enlace (opcional) y las direcciones de servidores DNS.聽
				
					address 192.168.0.100
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 8.8.8.8 8.8.4.4

				
			
  • Guarda el archivo y reinicia la interfaz de red o reinicia el sistema para que los cambios surtan efecto. Puedes hacerlo sudo systemctl restart networking dependiendo sudo systemctl restart network de la distribuci贸n.

Configuraci贸n din谩mica de direcciones IP mediante DHCP

La configuraci贸n din谩mica de direcciones IP mediante DHCP en un sistema Linux se realiza de manera autom谩tica al conectarse a una red que ofrece este servicio. A continuaci贸n, le explicar茅 los pasos generales para habilitar la configuraci贸n din谩mica de direcciones IP mediante DHCP en la mayor铆a de las distribuciones de Linux:

  1. Identifica la interfaz de red: Determina el nombre de la interfaz de red en la que desea habilitar el DHCP. Puedes utilizar el comando ifconfigo ip addr showpara listar las interfaces disponibles.

  2. Edita el archivo de configuraci贸n de la interfaz: Utiliza un editor de texto, como Nano o Vim, para editar el archivo de configuraci贸n correspondiente a la interfaz de red. Por ejemplo, en Ubuntu, puedes abrir el archivo /etc/netplan/50-cloud-init.yaml.

  3. Configure el protocolo DHCP: Dentro del archivo de configuraci贸n de la interfaz, agregue o modifique la secci贸n correspondiente al protocolo DHCP. Por lo general, esto implica establecer el par谩metro dhcp4: truepara habilitar la obtenci贸n autom谩tica de una direcci贸n IP.

  4. Guardar: Guarda los cambios y cierra el archivo de configuraci贸n.

  5. Reinicia la interfaz de red: Ejecuta el comando sudo netplan applypara aplicar los cambios en la configuraci贸n de red. Esto reiniciar谩 la interfaz de red y solicitar谩 una direcci贸n IP mediante DHCP.

  6. Verifica la configuraci贸n: Puede utilizar el comando ifconfigo ip addr shownuevamente para verificar si la interfaz de red ha obtenido una direcci贸n IP proporcionada por el servidor DHCP.

Es importante tener en cuenta que los nombres de los archivos de configuraci贸n y los comandos pueden variar dependiendo de la distribuci贸n de Linux que est茅 utilizando. Por lo tanto, te recomendamos consultar la documentaci贸n espec铆fica de tu distribuci贸n para obtener instrucciones precisas sobre la configuraci贸n de DHCP.

6.2. Configuraci贸n de Servicios de Red (DNS, DHCP, SSH)

En esta secci贸n vamos a ver c贸mo configurar tres servicios fundamentales en un sistema Linux: DNS, DHCP y SSH. Estos servicios son esenciales para gestionar la conectividad en redes, desde resolver nombres de dominio hasta asignar direcciones IP y permitir el acceso remoto seguro. Abordaremos las configuraciones m谩s comunes para cada uno de ellos pero no profundizaremos mucho ya que todo este contenido lo veremos en el curso de Redes y Conexiones de forma m谩s completa.

6.2.1. Configuraci贸n de DNS (Domain Name System)

DNS (Domain Name System) es el sistema que traduce nombres de dominio (www.ejemplo.com) en direcciones IP (como 192.168.1.10) que los sistemas inform谩ticos pueden entender. Para que nos hagamos una idea de lo que son los DNS, los sistemas inform谩ticos se comunican entre si mediante las direcciones Ip las cuales vienen representadas por n煤meros, para una computadora no hay problema de trabajar con direcciones Ip, pero para nosotros ser铆a muy engorroso tener que ir buscando cada servicio o p谩gina web mediante estas direcciones, es como si en vez de querer buscar en el navegador por la palabra Google, nosotros escribi茅ramos la direcci贸n de Ip de google. Para que no tengamos que memorizar todos estos n煤meros se creo el sistema DNS, el cual conecta cada nombre o servicio web con una direcci贸n Ip determinada, de esta forma al escribir el nombre de una web, el DNS lo relaciona directamente con una direcci贸n Ip.

  • Un servidor DNS es una m谩quina dedicada a resolver nombres de dominio para una red m谩s amplia, como una empresa, una red interna, o en muchos casos, para internet completo.
  • Existes servidores DNS de grandes proveedores como Google (8.8.8.8) o Cloudflare (1.1.1.1), que sirven a millones de usuarios a nivel global.
  • Los servidores DNS normalmente realizan resoluci贸n recursiva. Esto significa que, si no conocen la respuesta a una consulta, consultar谩n otros servidores DNS hasta encontrar la direcci贸n IP correspondiente y devolverla al cliente que hizo la petici贸n.

聽En Linux, puedes configurar el servicio de DNS usando el software BIND (Berkeley Internet Name Domain).

Instalaci贸n de BIND

En distribuciones basadas en Debian (como Ubuntu):

				
					sudo apt update
sudo apt install bind9

				
			
Configuraci贸n de un Servidor DNS Local
  • Edita el archivo de configuraci贸n principal: El archivo principal de configuraci贸n de BIND est谩 en /etc/bind/named.conf (o /etc/named.conf en distribuciones Red Hat).

  • Configura la zona DNS: Define una zona DNS que asocie nombres de dominio con direcciones IP. Aqu铆 hay un ejemplo de una zona llamada example.com:

				
					zone "example.com" {
    type master;
    file "/etc/bind/db.example.com";
};

				
			
  • Crea el archivo de zona: En /etc/bind/db.example.com:
				
					$TTL 604800
@   IN  SOA ns1.example.com. admin.example.com. (
            2         ; Serial
            604800    ; Refresh
            86400     ; Retry
            2419200   ; Expire
            604800 )  ; Negative Cache TTL

@   IN  NS  ns1.example.com.
ns1 IN  A   192.168.1.10
www IN  A   192.168.1.11

				
			
  • Reinicia el servicio:
				
					sudo systemctl restart bind9

				
			

Esto configura un servidor DNS b谩sico que resuelve el dominio example.com en direcciones IP locales. Aqu铆 solo se muestra un peque帽o ejemplo de configuraci贸n para que teng谩is una idea de que se puede configurar y de que existen herramientas como Bind para administrar estos sistemas y redes. Veremos de forma m谩s completa todo este contenido en el curso de Redes y Conexiones.

6.2.2. Configuraci贸n de DHCP (Dynamic Host Configuration Protocol)

DHCP es el protocolo que asigna din谩micamente direcciones IP a los dispositivos en una red, lo que facilita la administraci贸n de direcciones sin necesidad de configurarlas manualmente.

Instalaci贸n del Servidor DHCP

En distribuciones basadas en Debian:

				
					sudo apt install isc-dhcp-server

				
			
Configuraci贸n del Servidor DHCP
  • Edita el archivo de configuraci贸n: El archivo principal de configuraci贸n del servidor DHCP es /etc/dhcp/dhcpd.conf.

  • Define el rango de direcciones IP: A帽ade la configuraci贸n de la red y el rango de direcciones que se pueden asignar:

				
					subnet 192.168.1.0 netmask 255.255.255.0 {
    range 192.168.1.100 192.168.1.200;
    option routers 192.168.1.1;
    option domain-name-servers 192.168.1.10;
    option domain-name "example.com";
}

				
			
  • Reinicia el servicio:
				
					sudo systemctl restart isc-dhcp-server

				
			

Ahora, los dispositivos en tu red que se conecten a trav茅s de eth0 recibir谩n direcciones IP dentro del rango definido (de 192.168.1.100 a 192.168.1.200). Esto tambi茅n lo veremos de forma m谩s completa el siguiente curso de Linux y en el curso de Redes y Conexiones.

6.2.3. Configuraci贸n de SSH (Secure Shell)

SSH es el protocolo que permite acceder y administrar remotamente un sistema Linux de forma segura a trav茅s de la red.

Instalaci贸n del Servidor SSH

En la mayor铆a de las distribuciones de Linux, OpenSSH viene preinstalado. Si no lo tienes, puedes instalarlo con:

				
					sudo apt install openssh-server  # Debian/Ubuntu
sudo yum install openssh-server  # Red Hat/CentOS

				
			
Configuraci贸n del Servidor SSH
  • Edita el archivo de configuraci贸n: El archivo de configuraci贸n principal est谩 en /etc/ssh/sshd_config.

  • Ajustes b谩sicos de seguridad: Para mejorar la seguridad, puedes cambiar el puerto predeterminado (22) y deshabilitar el acceso de root por SSH:

    • Cambiar el puerto:
				
					Port 2222

				
			
    • Deshabilitar acceso root:
				
					PermitRootLogin no

				
			
  • Autenticaci贸n con Claves SSH: En lugar de usar contrase帽as, puedes configurar el uso de claves p煤blicas y privadas para acceder al servidor:
    • Genera una clave SSH en el cliente:
				
					ssh-keygen -t rsa
				
			
    • Copia la clave p煤blica al servidor:
				
					ssh-copy-id usuario@servidor

				
			
  • Reinicia el servicio:
				
					sudo systemctl restart ssh

				
			

Ahora puedes conectarte al servidor de manera remota usando:

				
					ssh usuario@direccion_ip -p 2222

				
			

SSH es muy 煤til ya que permite conectarnos a trav茅s de una terminal con servidores y otros ordenadores de forma seguro y eficiente. Pod茅is ver informaci贸n m谩s detalla en la secci贸n de SSH del curso Redes y Conexiones.

Resumen:

  • DNS: Traducir nombres de dominio a direcciones IP.
  • DHCP: Asignar direcciones IP autom谩ticamente a los dispositivos de una red.
  • SSH: Conexi贸n remota segura para administrar sistemas Linux.

Estos tres servicios son fundamentales para la administraci贸n y gesti贸n de redes en Linux. Con esta configuraci贸n b谩sica, tendr谩s un servidor Linux que puede gestionar nombres de dominio, asignar direcciones IP y permitir conexiones remotas seguras.