Instalar, configurar y ejecutar el servidor Propietario

Instale los paquetes RPM fdo-owner-cli y `fdo-owner-onboarding-server`para habilitar el sistema a recibir el vale generado por el servidor Proveedor durante el primer arranque del dispositivo. El servidor de Rendervous entonces coincide el UUID del dispositivo con la plataforma destino o el cloud e informa al dispositivo sobre cual servidor Propietario es el punto final del dispositivo debe utilizar.

Requisitos previos
  • El dispositivo donde el servidor será desplegado tiene un dispositivo con Módulo de Plataforma Confiada (TPM) para cifrar el disco. Si no, generará un error cuando arranque el dispositivo de Fedora IoT.

  • Ha creado el device_ca_cert.pem, owner_key.der, y owner_cert.pem con claves y certificados y los ha copiado al directorio /etc/fdo/keys.

Procedimiento
  1. Instala los RPM requeridos en este servidor:

    # dnf install -y fdo-owner-cli fdo-owner-onboarding-server
  2. Prepare el archivo de configuración owner-onboarding-server.yml y guárdelo en el directorio /etc/fdo/. Incluya la ruta a los certificados que ya copió y la información sobre donde publicar el servicio del servidor Propio en este archivo.

    Lo siguiente es un ejemplo disponible en /usr/share/doc/fdo/owner-onboarding-server.yml. Puede encontrar referencias para el API Service Info, tal como el URL o el vale de autenticación.

    ---
    ownership_voucher_store_driver:
      Directorio:
        ruta: /etc/fdo/stores/owner_vouchers
    session_store_driver:
      Directory:
        ruta: /etc/fdo/stores/owner_onboarding_sessions
    trusted_device_keys_path: /etc/fdo/keys/device_ca_cert.pem
    owner_private_key_path: /etc/fdo/keys/owner_key.der
    owner_public_key_path: /etc/fdo/keys/owner_cert.pem
    bind: "0.0.0.0:8081"
    service_info_api_url: "http://192.168.122.1:8083/device_info"
    service_info_api_authentication:
      BearerToken:
        vale: Kpt5P/5flBkaiNSvDYS3cEdBQXJn2Zv9n1D50431/lo=
    owner_addresses:
      - transporte: http
        direcciones:
          - ip_address: 192.168.122.1
        puerto: 8081
  3. Crea y configura el API de Servicio Info.

    1. Añade la información automática para incorporar, tal como creación de usuario, archivos a ser copiados o creados, instrucciones para ser ejecutadas, disco a ser cifrado, y demás. Utilice el archivo ejemplo de configuración API de Service Info en /usr/share/doc/fdo/serviceinfo-api-server.yml como una plantilla para crear el archivo de configuración bajo /etc/fdo/.

      ---
      service_info:
        initial_user:
          username: admin
          sshkeys:
            - "ssh-rsa AAAA...."
        diskencryption_clevis:
          - disk_label: /dev/vda3
            binding:
              pin: tpm2
              config: "{}"
            reencrypt: true
      bind: "0.0.0.0:8083"
      device_specific_store_driver:
        Directorio:
          path: /etc/fdo/stores/serviceinfo_api_devices
      service_info_auth_token: Kpt5P/5flBkaiNSvDYS3cEdBQXJn2Zv9n1D50431/lo=
      admin_auth_token: zJNoErq7aa0RusJ1w0tkTjdITdMCWYkndzVv7F0V42Q=
  4. Compruebe el estado de las unidades systemd:

    # systemctl list-unit-files | grep fdo
    fdo-owner-onboarding-server.service        disabled        disabled
    fdo-serviceinfo-api-server.service         disabled        disabled
    1. Si el servicio está detenido y desactivado, active e inícielo:

      # systemctl enable --now fdo-owner-onboarding-server.service
      # systemctl enable --now fdo-serviceinfo-api-server.service
      Debe restablecer los servicios systemd cada vez que cambia los archivos de configuración.
  5. Compruebe que el servidor está escuchando en el puerto 8083 configurado:

    # ss -ltn
  6. Abra el puerto si tiene un cortafuegos configurado en este servidor:

    # firewall-cmd --add-port=8081/tcp --permanent
    # firewall-cmd --add-port=8083/tcp --permanent
    # systemctl restart firewalld