¿Puede un cliente Mosquitto MQTT desconectar por la fuerza a otro?

10

Me he estado preguntando cómo un cliente MQTT podría indicarle al agente que desconecte a un cliente de alguna manera, en caso de que necesite desconectar a la fuerza a un cliente de mi servidor MQTT (por ejemplo, si se está comportando mal de alguna manera y no responde correctamente).

Una pregunta anterior destacó la posibilidad de conectarse con la misma ID de cliente que el cliente que desea matar, pero esto parece poco confiable en el mejor de los casos y me pregunto si hay una opción más confiable que satisfaga mis necesidades:

  • permite que un cliente autorizado desconecte a cualquier otro cliente de la red por ID de cliente
  • idealmente, evita que clientes no autorizados desconecten a otros (para que solo el cliente 'confiable' pueda desconectar a otros)

¿Hay alguna característica que cumpla con estos requisitos?

Aurora0001
fuente

Respuestas:

8

No directamente.

Puede usar un complemento de autenticación como mosquitto-auth-plug para agregar dinámicamente usuarios a una lista prohibida y luego forzar una desconexión conectándose con un ID de cliente duplicado.

ralight
fuente