Lo primero que debe hacer después de instalar un sistema operativo Linux como servidor es configurar la interfaz de red para tener acceso remoto y desde su estación de trabajo/portátil y una taza de café puede administrar su servidor a su conveniencia.
En este tutorial, utilizaremos nmcli, que significa herramienta de línea de comandos del administrador de red, para configurar nuestras interfaces de red.
Nota Preliminar
La particularidad de este comando es que no necesita ningún requisito, sin embargo, se ejecuta como root
El formato básico de nmcli:
nmcli [OPTIONS] OBJECT { COMMAND | help }
OBJETO podría ser una de estas opciones:conexión, dispositivo, general, red, radio, agente y monitor y podemos usar un prefijo de estas opciones:
nmcli -p dispositivo --> nmcli -p dev --> nmcli -p d
Nota:-p significa --pretty es una opción
En esta parte del tutorial, cubriremos dos objetos:Conexión y Dispositivo
Dispositivo de red
Podemos usar este objeto con los comandos más usados:estado, mostrar y establecer
Comenzaremos mostrando nuestras interfaces (dispositivos) si tenemos muchas con su estado:
nmcli device status
Salida:
La primera columna es el nombre de las interfaces, mi interfaz física es ens33, puede ser diferente de su entorno, la última columna es el nombre del perfil, también se llama "perfil de conexión".
Otra forma:
nmcli -p device
La opción -p significa Pretty es una salida legible por humanos.
Salida:
Usamos nmcli dev show para enumerar toda la información sobre todas las interfaces (es mucha información), así que especificaremos una interfaz que usaremos ens33:
nmcli dev show ens33
Salida:
Toda la información aquí es bastante explícita, no necesitamos pasar por esta salida.
Podríamos configurar cualquier dispositivo para que se administre con nmcli o no, usando el comando set.
Para enumerar nuestros dispositivos y verificar si está administrado o no.
nmcli device status
Salida:
Observe la columna ESTADO.
Ahora cambiaré ens33 a una interfaz no administrada.
sudo nmcli device set ens33 managed no
Salida:
Tenga en cuenta que ya no podemos administrar la interfaz ens33 con NetworkManager, pero el dispositivo aún está conectado.
Habilitemos la gestión de la interfaz ens33:
sudo nmcli device set ens33 managed yes
Verificar el estado de mis interfaces:
nmcli device status
salida:
Finalmente, veremos cómo activar y desactivar nuestros dispositivos (interfaces) con comandos de desconexión y conexión.
sudo nmcli dev disconnect ens33
Debería tener un mensaje exitoso:Dispositivo "ens33" desconectado con éxito.
Mostrar el estado de los dispositivos:
nmcli dev status
Salida:
Observe que el dispositivo ens33 está marcado en rojo, el estado es desconectado y no hay ningún perfil de conexión adjunto. El dispositivo se activará automáticamente después de reiniciar o podemos activarlo manualmente.
Para activar nuestros dispositivos:
sudo nmcli dev connect ens33
Salida:
El mensaje con la activación exitosa y un UUID de la conexión del perfil al final.
Estado de nuestras interfaces:
nmcli dev status
Salida:
La interfaz ya no está desactivada.
Conexión de perfil
Ahora centrémonos en el perfil mostrando la información:
nmcli connection show
Salida:
La primera columna es el nombre de la conexión (no el nombre del dispositivo), la segunda es el UUID o Universal Unique Identifier y la última es el nombre del dispositivo.
Los perfiles son la configuración guardada de las interfaces, se almacena en /etc/sysconfig/network-scripts/ y se nombra con un prefijo ifcfg- y luego el nombre del perfil, veamos:
Los perfiles con el nombre de los dispositivos se generan automáticamente, ifcfg-amine se crea manualmente.
Ahora vamos a crear algunos perfiles.
Nota:tengo dos interfaces físicas conectadas a mi máquina virtual ens33 y ens37.
Crearemos un perfil de configuración de ethernet con una dirección IP dinámica.
sudo nmcli con add type ethernet con-name HomeDHCP ifname ens37
La interfaz es de tipo ethernet, HomeDHCP es el nombre del perfil, ens37 es la interfaz a la que está conectado el perfil.
Salida:
Vamos a ver perfiles ahora:
Observe aquí que el perfil se crea pero no se adjunta a la interfaz ens37, tenemos que activar nuestro nuevo perfil mediante:
sudo nmcli con up HomeDHCP
Cuidado, el nombre del perfil distingue entre mayúsculas y minúsculas.
Salida:
Veamos de nuevo:
Observe que la primera columna NOMBRE HomeDHCP está adjunta a la interfaz ens37. Y el perfil ens37 (generado automáticamente) no está adjunto a ninguna de las interfaces.
Veamos dentro del perfil:
nmcli con show HomeDHCP
Y verifique el archivo creado en /etc/sysconfig/network-scripts/ifcfg-HomeDHCP
Desactivemos el perfil HomeDHCP desde la interfaz ens37.
sudo nmcli con down HomeDHCP
salida:
Tenga en cuenta que el perfil predeterminado se adjunta a la interfaz ens37.
Borremos el perfil de HomeDHCP:
sudo nmcli con delete HomeDHCP
Salida:
No más perfiles de HomeDHCP.
Ahora vamos a crear un perfil de configuración de ethernet llamado HomeStatic con una dirección IP estática.
sudo nmcli con add type ethernet con-name HomeStatic ifname ens37 ip4 192.168.0.10/24 gw4 192.168.0.1
Salida:
Compruebe nuestra conexión de interfaces:
nmcli con s
Salida:
Recuerda que tenemos que adjuntar el perfil a la interfaz activando el perfil:
sudo nmcli con up HomeStatic
Salida:
Mostrar la configuración del perfil:
nmcli dev show ens33
Salida:
Otra forma pero hay mucha información así que nos centraremos en lo que queremos ver.
Salida:
Tenga en cuenta que aquí no tenemos ninguna información de los servidores DNS, por lo que agregaremos un servidor DNS con otro comando:
sudo nmcli con modify HomeStatic ipv4.dns "8.8.8.8 8.8.4.4"
comprobar:
nmcli c s HomeStatic
Otra forma de agregar una dirección de servidor dns:
sudo nmcli c mod HomeStatic +ipv4.dns "192.168.0.1"
Y, por supuesto, para eliminar una dirección de servidor dns:
sudo nmcli c mod HomeStatic -ipv4.dns "192.168.0.1"
Hasta ahora repasamos las operaciones básicas de red para comunicarnos con nuestros servidores con esos dos Objetos y sus comandos en el próximo tutorial continuaremos explorando e intentaremos terminar con un script para resumir lo que hemos hecho.