8. Configurar el controlador del sistema

Tiempo estimado para completarlo: de 2 a 4 horas

Propietario del componente operativo: OELCM

Perfil de habilidades: ingeniero de implementaciones

El principal caso práctico de esta máquina es interactuar con electrodomésticos cuando los métodos principales no están disponibles. Por ejemplo, se puede conectar al puerto de la consola Switch si el bootstrapper para la conectividad de Switch no funciona correctamente.

Algunos partners de implementación optan por usar un servidor en los racks principales del centro de datos de Google y, después, siguen las instrucciones de recuperación del bootstrapper. Esto es necesario si tu sala de centro de datos prohíbe los servidores, monitores, ratones o teclados que se pueden mover libremente.

Plan A. CD o DVD Live

Un controlador de sistema se ejecuta en un CD o DVD (medio óptico) completamente activo.

  • No lo instales en un disco duro físico.

  • Este sistema no debe tener una unidad física.

  • Usa una imagen en directo de Rocky que haya pasado la prueba de DTO.

  • No utilices una unidad USB.

  • Debe actualizar estas imágenes periódicamente a través de DTO.

Instrucciones

  1. Grabar en un CD o DVD.

  2. Configura el controlador del sistema para que arranque desde un CD o DVD.

  3. Define una dirección IP.

Plan B. Instalar el sistema operativo (SO)

El objetivo de este documento es crear una estación de trabajo que cumpla la guía de implementación técnica de seguridad (STIG) con las herramientas de software necesarias para admitir la opción de air gap de Google Distributed Cloud (GDC).

Resumen

Un controlador de sistema es un carro de emergencia con una estación de trabajo, un teclado, un ratón y un monitor.

Requisitos previos

Consulta esta guía completa y comprueba lo siguiente:

  • El responsable de la transferencia de datos (DTO) estará disponible durante la semana de instalación.
  • El equipo y los medios necesarios para la instalación son los siguientes:
    • Guía de herramientas de habilitación de Distributed Cloud
    • Medios USB
    • Descargas de archivos, incluidos ISOs del SO y RPMs de software adicional
    • Estación de trabajo, pantalla, teclado, ratón y cables.
  • Información de la red del SO de la consola de servicio:
    • Dirección IP
    • Máscara de subred
    • Pasarela predeterminada
    • Información de DNS

Recursos identificados

  • Matriz de conocimientos de Distributed Cloud
DTO Ingeniero Escriba/Comms Instructor Runner/TL/TW
  • Roles del equipo de implementación de Distributed Cloud

Recursos adicionales

  • Descargar la guía de instalación del SO
  • Descargar el procedimiento de configuración de Minicom
  • Descarga las instrucciones de configuración de la COW y del carro de emergencia del edificio.

Crear un medio de arranque

Completa esta tarea con la DTO antes de ir a las instalaciones del cliente.

  1. Descarga la ISO de DVD de Rocky 8 o 9.
  2. Descarga paquetes de software adicionales:

    Paquete URLs
    clamav (opcional) Rocky 8.x / Rocky 9.x
    clamav-data (opcional) Rocky 8.x / Rocky 9.x
    clamav-filesystem (opcional) Rocky 8.x / Rocky 9.x
    clamav-freshclam (opcional) Rocky 8.x / Rocky 9.x
    clamav-lib (opcional) Rocky 8.x / Rocky 9.x
    clamd (opcional) Rocky 8.x / Rocky 9.x
    programación Rocky 8.x / Rocky 9.x
    google-chrome-stable_current Rocky 8.x / Rocky 9.x
    k9s Rocky 8.x / Rocky 9.x
    kubectl Rocky 8.x / Rocky 9.x
    liberation-fonts Rocky 8.x / Rocky 9.x
    libprelude Rocky 8.x / Rocky 9.x
    lm_sensors Rocky 8.x / Rocky 9.x
    lm_sensors_libs Rocky 8.x / Rocky 9.x
    lockdev Rocky 8.x / Rocky 9.x
    lrzsz Rocky 8.x / Rocky 9.x
    minicom Rocky 8.x / Rocky 9.x
    sysstat Rocky 8.x / Rocky 9.x
  3. Sigue el procedimiento de transferencia de software necesario para llevar los paquetes de software y la ISO al espacio seguro de tu sala de datos.

  4. Escribe la imagen ISO en una unidad USB cifrada.

  5. Copia paquetes de software adicionales en la unidad USB cifrada.

    # Set variable to iso file downloaded
    OS_ISO=Rocky-9.5-x86_64-dvd.iso
    
    # cd to directory where iso and additional software rpms are stored
    
    # Determine the device name of the USB drive.
    sudo lsblk
    
    # Set the device name of the USB drive.
    echo "What is the device name of the USB drive? Provide full name for example /dev/sdX"
    read USB_DEVICE
    read -r -p "Proceeding will destroy existing data on ${USB_DEVICE}. Continue with formatting? [y/n] " response
    case "$response" in
      [yY][eE][sS]|[yY])
          echo "Formatting USB drive with ${OS_ISO}..."
          ;;
      *)
          echo "Exiting..."
          exit 0
          ;;
    esac
    
    # Write ISO to USB drive
    sudo dd if=${OS_ISO} of=${USB_DEVICE} bs=4M
    
    echo "Copying additional software packages to USB drive"
    sudo mkdir /mnt/usb
    sudo mount ${USB_DEVICE} /mnt/usb
    sudo mkdir /mnt/usb/opt/
    sudo cp *.rpm /mnt/usb/opt/
    
    # Unmount USB drive
    sudo umount /mnt/usb
    echo "Bootable media creation is complete."
    

Día de instalación

Recuperar equipos del inventario o del muelle de carga y descarga. Lleva el equipo al espacio de trabajo del centro de datos. Continúa con la creación del carro de emergencia para el controlador del sistema.

Preparar y construir equipos

  1. Unbox Workstation
  2. Verificar números de serie
  3. Crear un carro de emergencia
    • Adjuntar pantalla
    • Incluir teclado
    • Incluir ratón
    • Añade aquí el folleto de configuración del controlador del sistema o el archivo PDF.
  4. Conecta los cables a la estación de trabajo
    • Conecta el cable de la pantalla (VGA, HDMI o DisplayPort)
    • Conectar el ratón
    • Conectar el teclado
  5. Realizar la instalación del SO
    • necesitará contenido multimedia de DTO o DTA.

Instalación del SO

Se espera que el controlador del sistema, con teclado, monitor y ratón, esté configurado y listo para instalar el SO.

Iniciar desde un medio

  1. Arranca el controlador del sistema desde un medio de arranque.
  2. Selecciona Comprobar medios e instalar.
  3. Una vez que se cargue la GUI del instalador de Red Hat, selecciona lo siguiente en cada sección.

En la siguiente imagen se muestra el mensaje inicial con las opciones de instalación del SO que muestra System Controller desde el medio de arranque.

Captura de pantalla del mensaje inicial del medio de arranque

Imagen 1. Mensaje inicial del medio de arranque.

  • Medios ISO iniciados.

Captura de pantalla de la interfaz gráfica de usuario del instalador

Imagen 2. Selección del idioma de la instalación.

Localización

  1. Teclado: inglés (EE. UU.)
  2. Idioma: inglés (EE. UU.)

Redes y nombre de host

  1. Haz clic en Configurar en el dispositivo de red.
  2. En Configuración de IPv4, selecciona Manual.
  3. En Direcciones, haz clic en Añadir.
  4. Introduce la dirección IP, la máscara de subred y la pasarela en los campos correspondientes.
  5. Introduce los servidores DNS.
  6. Haz clic en Guardar y, luego, en Hecho.
  7. En Configuración de IPv4, selecciona Manual.
  8. En Direcciones, haz clic en Añadir.
  9. Introduce la dirección IP, la máscara de subred y la pasarela en los campos correspondientes.
  10. Introduce los servidores DNS.
  11. Haz clic en Guardar y, luego, en Hecho.

Captura de pantalla de las opciones de red y nombre de host del instalador

Imagen 3. Opciones de redes y nombres de host para la instalación.

Hora y fecha

  1. En la esquina superior derecha, haga clic en el icono de configuración.
  2. Introduce la dirección IP del switch de gestión en el campo Nombre de host.
  3. Haz clic en Aceptar.
  4. Define la región y la zona horaria.
  5. Haz clic en Listo.
  6. Introduce la dirección IP del switch de gestión en el campo Nombre de host.
  7. Haz clic en Aceptar.
  8. Define la región y la zona horaria.
  9. Haz clic en Listo.

Captura de pantalla de las opciones de hora y fecha del instalador

Imagen 4. Opciones de fecha y hora de la instalación.

Software

  1. Selección de software: Estación de trabajo
  2. Complementos:
  3. Complementos:

    1. Servidores de red
    2. Herramientas del sistema
    3. Productividad de oficina

En la siguiente imagen se muestra la página SELECCIÓN DE SOFTWARE para la instalación. En la página se muestran dos menús: uno para el entorno base, donde está seleccionada la opción Estación de trabajo. El otro menú es para el software adicional del entorno seleccionado, donde están seleccionadas las opciones Servidores de red y Herramientas del sistema.

Captura de pantalla de la selección de software del instalador

Imagen 5. Entorno base y software adicional para la instalación.

  • Estación de trabajo seleccionada como entorno base
  • Servidores de red seleccionados como instalación de software adicional
  • Herramientas del sistema seleccionadas como software adicional para instalar
  • Se ha seleccionado Office Productivity como software adicional para instalar

Destino de la instalación y partición del disco

En la siguiente imagen se muestra la página DESTINO DE LA INSTALACIÓN, donde se ha seleccionado un dispositivo de disco. La configuración de almacenamiento personalizado también se especifica en esta página.

Captura de pantalla del destino de instalación del instalador

Imagen 6. Selección del destino de instalación y de la configuración del almacenamiento.

  1. Selecciona SSD install target (SSD de destino de la instalación).
  2. Particiones personalizadas:

    1. Crea el siguiente diseño de particiones.
    2. Acepta el tipo de sistema de archivos predeterminado de cada partición.
    3. Modifica el grupo de volúmenes de LVM para usar todo el espacio en disco restante.
  • Escriba o pida al ingeniero que documente que el sistema se ha particionado según la guía de instalación.

El ingeniero debe realizar una revisión manual para comprobar el tamaño de las particiones y validar la existencia del directorio principal.

Para que el grupo de volúmenes se expanda y ocupe todo el SSD, hay que dar un paso adicional después de definir las particiones.

  • En la ventana de la partición, haz clic en el botón Grupo de volumen: modificar.
  • Tamaño: "Lo más grande posible".
Sistema de archivos Tamaño Scribe Verified (if other Update)
/boot Primer curso
/boot/efi 0,5 G
/ 50 G
/tmp Octavo curso
/var 40 G
/var/log 20 G
/var/log/audit 20 G
/var/tmp Cuarto curso
/opt/software-repo 100 G
/home Espacio restante

Política de seguridad

  1. Desplázate por la lista de políticas de seguridad disponibles.

    • Selecciona: STIG de DISA con interfaz gráfica de usuario.
    • Haz clic en Seleccionar perfil.

    • Aplica la política de seguridad seleccionada.

    • Desplázate por el resultado para ver si la política ha detectado algún error.

    • Lee la lista de cambios planificados de la política de seguridad.

    • Si ves errores rojos, haz cambios manualmente para cumplir los requisitos. Normalmente, se trata de problemas de partición de disco.

    • Comprueba que la política de seguridad esté activada.

  2. El escriba debe estar al lado del ingeniero durante este paso.

En la siguiente imagen se muestra la página POLÍTICA DE SEGURIDAD, donde se ha seleccionado DISA STIG con GUI para Red Hat Enterprise Linux 9 como perfil. En esta página también se muestra una descripción del perfil y el botón Seleccionar perfil.

Captura de pantalla de la política de seguridad del instalador

Imagen 7. Selección de perfil para la política de seguridad.

  • La política de seguridad se ha aplicado sin errores.

Configuración de usuario

  1. Configurar el usuario raíz

    • Define la contraseña raíz.
    • Registra la contraseña de administrador en una unidad de almacenamiento cifrada después de completar la instalación.
  2. Configurar la primera cuenta de operador

    • Define el nombre de usuario de la cuenta de usuario del operador inicial.
    • Pide al operador que elija su propia contraseña.
    • Marca "administrador" para añadir la cuenta al grupo %wheel.

En la siguiente imagen se muestra la página CREATE USER (CREAR USUARIO) de la instalación. En la página se muestran los campos que debes rellenar, como el nombre completo, el nombre de usuario, la contraseña y las opciones avanzadas.

Captura de pantalla del instalador Crear usuario

Imagen 8. Campos con la información necesaria para crear un usuario.

  • Configuración de usuarios completada.
  • Credenciales verificadas y guardadas en un archivo de configuración cifrado.

Actualizar sistema

  1. Volver a la pantalla principal
  2. Aparecerá el botón para suscribirse
  3. Empezar la instalación
  4. Tardará un tiempo en actualizarse
  5. Actualizar el software antivirus con las definiciones actuales
  6. Iniciar sesión con la cuenta creada
  7. Aparecerán las pantallas de inicio de sesión por primera vez

Usar dispositivos USB con protección STIG

La capacidad de usar dispositivos USB en un equipo Linux con requisitos STIG está muy limitada y requiere que se añadan dispositivos individuales a una lista de permitidos para poder usarlos.

Los siguientes comandos permiten que los teclados y los ratones se muevan libremente entre los puertos USB físicos. Esto implica actualizar las reglas de usbguard.

  • Habilitar dispositivo de almacenamiento USB
  1. Quita el controlador usb-storage falso:

    sudo rm /etc/modprobe.d/usb-storage.conf
    
Habilitar permanentemente un nuevo dispositivo USB

Para habilitar permanentemente el uso de un dispositivo USB, debes modificar las reglas de usbguard.

  1. Antes de conectar físicamente un nuevo USB, inicia una usbguard watch para obtener la cadena del identificador del nuevo dispositivo:

    sudo usbguard watch list-devices
    
  2. Conecta físicamente el dispositivo USB y copia el resultado:

    deny id 413c:301a serial "" name "Dell MS116 USB Optical Mouse" hash "kYdX3V8dJl2JDRpEA1mRTUMupUaUe4aGUUZcSr7r5EE=" parent-hash "bRXptnzyxb9ThCMx2AmE81vX4L0JJpn0YRy8OPD8K0A=" via-port "1-6.2" with-interface 03:01:02 with-connect-type "unknown
    
  3. Añade una línea nueva a /etc/usbguard/rules.conf con la línea de identificador capturada del reloj:

    sudo vi /etc/usbguard/rules.conf
    
    allow id 413c:301a serial "" name "Dell MS116 USB Optical Mouse" hash "kYdX3V8dJl2JDRpEA1mRTUMupUaUe4aGUUZcSr7r5EE=" parent-hash "bRXptnzyxb9ThCMx2AmE81vX4L0JJpn0YRy8OPD8K0A=" with-interface 03:01:02 with-connect-type "unknown
    
  4. Reinicia el daemon usbguard:

    sudo systemctl restart usbguard.service
    
Habilitar temporalmente un nuevo dispositivo USB
  1. Conecta el nuevo dispositivo USB y determina qué número de dispositivo se le ha asignado:

    usbguard list-devices
    

    El dispositivo más reciente suele ser la última línea de la lista. El número del dispositivo es el primer número de la línea:

    usbguard list-devices | tail -1 | awk '{print $1}'
    
  2. Usa usbguard para añadir a la lista de permitidos el USB seguro:

    sudo usbguard allow-device ${USB_ID}
    
  3. Monta el almacenamiento USB resultante de la forma habitual:

    sudo lsblk # Determine the device name of the USB drive.
    # Set the device name of the USB drive.
    USB_DEVICE=/dev/sdX # replace X with the device number of the USB drive.
    
    sudo mkdir /mnt/usb; chmod 555 /mnt/usb
    sudo mount ${USB_DEVICE} /mnt/usb
    
  4. Ahora deberías ver que la unidad USB segura está montada.

    • El USB se ha montado correctamente.

Instalar todas las herramientas

  • Inserta la unidad USB que contiene el software adicional.

    sudo lsblk # Determine the device name of the USB drive.
    # Set the device name of the USB drive.
    USB_DEVICE=/dev/sdX # replace X with the device name of the USB drive.
    
    sudo mkdir /mnt/usb
    sudo mount ${USB_DEVICE} /mnt/usb
    sudo rpm -ihv /mnt/usb/opt/*.rpm
    sudo umount /mnt/usb
    

Usar Minicom para acceder a consolas serie

El programa minicom es antiguo y da por hecho que quieres conectarte a un módem telefónico cuando lo invocas. Debes cambiar los valores predeterminados para usar un cable USB a serie.

  1. Inicia minicom en el modo de configuración:

    sudo minicom -s
    
  2. De esta forma, se abre la interfaz de usuario de texto de configuración para que puedas cambiar los ajustes.

    En la siguiente imagen se muestra la opción Configuración del puerto serie seleccionada en la interfaz de usuario de texto de configuración.

    Captura de pantalla de la configuración del puerto serie de Minicom

  3. Cambia el dispositivo serie a /dev/ttyUSB0 y la velocidad de transmisión (velocidad) según corresponda.

    En la siguiente imagen se muestra el dispositivo serie configurado como /dev/ttyUSB0.

    Captura de pantalla del dispositivo serie Minicom

  4. Para guardar este cambio de forma permanente, usa Save setup as dfl.

  5. Seleccione Salir para salir del menú de configuración y acceder a la consola serie.

    En la siguiente imagen se muestra la opción Salir seleccionada en la interfaz de usuario de texto de configuración. Captura de pantalla de la salida de Minicom

  6. En la conexión serie, usa las hiperteclas para cambiar los ajustes y salir:

    CTRL+A, Z
    X = exit minicom and return to bash shell
    P = modify config settings
    

Configurar la rotación de registros de Auditd

La configuración de STIG implica que auditd crea muchos registros. Si se queda sin espacio en disco, es posible que apague el sistema y lo ponga en modo de un solo usuario. Para evitarlo, configura una rotación de registros de auditoría de auditd. Dado que auditd no se puede reiniciar sin reiniciar el sistema, debes configurar auditd y logrotate.

  1. Crea un archivo /etc/logrotate.d/auditlog

    cat << EOF | sudo tee /etc/logrotate.d/auditlog
    /var/log/audit/audit.log.1
    /var/log/audit/audit.log.2
    /var/log/audit/audit.log.3
    /var/log/audit/audit.log.4
    /var/log/audit/audit.log.5
    {
        missingok
        compress
    }
    EOF
    
  2. Modifica los ajustes de /etc/audit/auditd.conf file's max_log_file:

    sudo vi /etc/audit/auditd.conf
    
  3. Cambia las líneas por los ajustes actualizados:

    max_log_file = 1024
    max_log_file_action = rotate
    
  4. Reinicia la estación de trabajo:

    sudo shutdown -r now
    

Wi-Fi

  1. Desactiva la conexión Wi-Fi una vez que se haya completado la instalación mediante la interfaz de usuario o ejecutando la utilidad Nmcli nmcli radio wifi off.
  2. Confirma que la conexión Wi-Fi está inhabilitada o que el componente no existe.

Después de la instalación

Una vez configurado el controlador del sistema, el siguiente paso es copiar los repositorios del medio de instalación en el sistema de archivos local.

Configurar un repositorio yum local

Copia toda la distribución de Rocky Linux en el disco local para crear un repositorio local. Esto permite que el comando yum se pueda usar para instalar y actualizar software.

Copiar contenido multimedia

  1. Monta el medio USB en /mnt/repo. Copia los repositorios de los archivos multimedia transferidos con DTO al directorio /opt/software-repo/. Si los directorios no existen, créalos.

    sudo lsblk # Determine the device name of the USB drive.
    # Set the device name of the USB drive.
    USB_DEVICE=/dev/sdX # replace X with the device name of the USB drive.
    
    sudo mkdir -m 555 /mnt/usb
    sudo mkdir -p /opt/software-repo/Rocky
    sudo mount ${USB_DEVICE} /mnt/usb
    sudo cp -a /mnt/usb/AppStream /opt/software-repo/Rocky
    sudo cp -a /mnt/usb/BaseOS /opt/software-repo/Rocky
    

Crear un repositorio de contenido multimedia local

Solo tienes que hacer lo siguiente una vez.

  1. Mueve todos los archivos .repo de /etc/yum.repos.d/ a un directorio de copia de seguridad.

    sudo mkdir /root/repobackup
    sudo mv /etc/yum.repos.d/* /root/repobackup/
    
  2. Crear archivos de repositorio local

    cat << EOF | sudo tee /etc/yum.repos.d/local_Rocky-AppStream.repo
    [appstream]
    name=Rocky Linux $releasever - AppStream
    #baseurl=http://dl.rockylinux.org/$contentdir/$releasever/AppStream/$basearch/os/
    baseurl=file:///opt/software-repo/Rocky/AppStream
    gpgcheck=1
    enabled=1
    countme=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial
    EOF
    
    cat << EOF | sudo tee /etc/yum.repos.d/local_Rocky-BaseOS.repo
    [baseos]
    name=Rocky Linux $releasever - BaseOS
    #baseurl=http://dl.rockylinux.org/$contentdir/$releasever/BaseOS/$basearch/os/
    baseurl=file:///opt/software-repo/Rocky/BaseOS
    gpgcheck=1
    enabled=1
    countme=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial
    EOF
    
    sudo dnf clean all
    

Lista de comprobación posterior a la instalación

  • Los problemas detectados se han documentado.
  • La credencial sensible se ha transferido y documentado de forma segura.
  • La tarea de instalación del SO y las herramientas se ha actualizado correctamente en el seguimiento de tareas.
  • Lista de comprobación posterior a la configuración de System Controller:
    • ip a # muestra la IP correcta
    • kubectl version
    • k9s version
    • minicom --help
    • tmux -V
    • chronyc sources