Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 506951|Respuesta: 175

[Fuente] Conexión c# M2Mqtt al servidor Apollo MQTT [con código fuente]

  [Copiar enlace]
Publicado en 4/1/2017 15:02:41 | | | |

Comparte una herramienta de pruebas MQTT
http://www.itsvse.com/thread-3905-1-1.html
(Fuente: Arquitecto)
.NET/C# Ejemplo de operación ActiveMQ [Código fuente]
http://www.itsvse.com/thread-3907-1-1.html
(Fuente: Arquitecto)
Resumen de información sobre ActiveMQ y RabbitMQ
http://www.itsvse.com/thread-4659-1-1.html
(Fuente: Architect_Programmer)


Adjunta primero el código de la línea online:

Establece una conexión con el cliente y suscríbete

Libera el mensaje



Es correcto conectarse al servidor MQTT de Mosquito en el código online, pero es necesario cambiar algún código para conectarse al servidor MQTT de Apollo.

Luego, consulté muchos artículos antes de escribirlos yo mismo.

Descarga del código fuente:

Turistas, si queréis ver el contenido oculto de esta publicación, por favorRespuesta


Puntuación

Número de participantes1MB+1 Colapso razón
LXC1118 + 1 ¡Muy poderoso!

Ver todas las valoraciones





Anterior:Desarrollo oficial de cuentas en WeChat VS depuración remota
Próximo:SQL Server sincroniza bases de datos entre servidores o las sincroniza regularmente
 Propietario| Publicado en 4/1/2017 15:04:40 |
Apache Apollo es un servidor proxy que se utiliza principalmente para el reenvío de solicitudes de mensajes, y a continuación se presenta una introducción a algunos de sus archivos de configuración más utilizados
1. Usuarios.propiedades:
Se utiliza para configurar quién puede usar el servidor y las contraseñas correspondientes.
Su método de almacenamiento en el archivo es: nombre de usuario = contraseña, tales como:
Lily=123456
Significa que se añade un nuevo usuario, el nombre de usuario es Lily y la contraseña es 123456
2. grupos.propiedades:
El mapeo de grupos de espera por parte de usuarios simplifica las listas de control de acceso a través de grupos en lugar de usuarios individuales.
Puedes configurar varios usuarios para un grupo definido, y los usuarios pueden usar "| Dividir, tales como:
admins=admin|lily
Indica que hay dos usuarios en el grupo de administradores, admin y Lily
3. black-list.txt:
Se utiliza para almacenar direcciones IP que no pueden conectarse a servidores, lo que equivale a algo como una lista negra.
Por ejemplo:
10.20.9.147
Significa que la IP anterior no puede conectarse al servidor.
4. login.config:
es un perfil de autenticación de servidor que proporciona autenticación para la seguridad de Apollo versión 1.6, solo se puede conectar el nombre de usuario correspondiente y la contraseña correcta
servidor.
5. apollo.xml del archivo de configuración principal del servidor:
Este perfil se utiliza para controlar puertos abiertos, colas, seguridad, configuraciones de alojamiento web y más.
       1. Autenticación: Puedes usar <authenticationdomain="internal" /> para configurar si conectarte a la autenticación; si su habilitación de atributos está configurada como falsa, significa que cualquiera puede conectarse al servidor sin autenticación, el valor por defecto es cierto
       2. access_rule: Puede usarse para definir diversos comportamientos de los usuarios hacia los recursos del servidor en broker o virtual_host. Por ejemplo:
<access_rule permite="users" acción="conectar, crear, destruir, enviar, recibir, consumir"/> indica que los usuarios del grupo pueden realizar las siguientes operaciones sobre los recursos del servidor: conectar, crear, destruir, enviar, recibir, consumir. Las instrucciones de funcionamiento detalladas se pueden encontrar en:
http://activemq.apache.org/apollo/documentation/user-manual.html
       3. almacenes de mensajes: Por defecto, Apollo utiliza la tienda LevelDB, pero se recomienda usar la tienda BDB (multiplataforma) para usar solo una de ellas. La configuración para usar la tienda LevelDB es: <leveldb_store directorio="${apollo.base}/data"/> se proporciona por defecto sin ninguna modificación. Para usar la tienda BDB, tienes que ir a la http://download.Oracle.com/maven/com/sleepycat/je/5.0.34/je-5.0.34.jar de soporte de paquetes jar bajo la web, colocar el paquete jar en el directorio de lib del servidor y luego cambiar el archivo de configuración a: <bdb_store directorio="${apollo.base}/data"/>Eso es todo.
       4. Conector: Utilizado para configurar el protocolo de enlace soportado por el servidor y el puerto correspondiente. Por ejemplo:
<conector id="tcp" bind="tcp://0.0.0.0:61613" connection_limit="2000" protocol="mqtt"/>Esto significa que se soportan enlaces TCP, el puerto utilizado es 61613, el límite de enlace es 2000 y el protocolo para la escucha automática es el protocolo MQTT
Publicado en 5/9/2018 10:58:40 |

@小渣渣  Disculpa, me gustaría preguntar sobre el enlace SSL/TLS. Desde que usamos m2mqtt, escribo un cliente en .net y un certificado .crt, Apollo es arquitectura Java y el certificado utilizado está encapsulado en keystore. Así que generé yo mismo el certificado raíz y el certificado del servidor, y empaqueté el certificado del servidor en un almacén de claves para reemplazar el almacén original en Apollo. Primero, usé las pruebas de PAHO y configuré tanto el almacenamiento de claves como la base de confianza en el almacenamiento de claves que generé para la comunicación segura SSL, y el enlace fue exitoso. Luego, programando en C#, quiero implementar autenticación unidireccional, poner SSL Secure en true, cargar el certificado raíz, poner el certificado cliente en vacío y el enlace falla. Luego se descubrió que la autenticación unidireccional parecía requerir establecer client_auth atributos establecidos. Sin embargo, tras establecer esta propiedad (incluso si está configurada en el atributo por defecto, es decir, client_auth=ninguno), no es posible usar el almacén de claves para enlazar a Apollo usando la prueba paho. ¿No sabes lo que sabes tú sobre ello? Gracias, hermano mayor
Publicado en 5/9/2018 10:34:37 |
Perdona, vi que publicaste sobre el servicio proxy de enlace de biblioteca M2mqtt, me gustaría preguntar, usa el certificado .crt en el cliente, usa keystore en Apollo para comunicación segura SSL, quieres implementar autenticación unidireccional, parece que necesitas establecer client_auth atributos. Sin embargo, tras establecer esta propiedad (incluso si está configurada en el atributo por defecto, es decir, client-auth=ninguno), no es posible enlazar a Apollo usando keystore en el lado de la prueba paho. ¿No sabes lo que sabes tú sobre ello? Gracias, hermano mayor
Publicado en 2/5/2017 9:37:33 |
Asdasef pensaba en la corrupción en los jueces

Puntuación

Número de participantes1MB-1 contribuir-1 Colapso razón
La temperatura en la ciudad del norte es de 22 grados -1 -1 Por favor, no eches agua, es deber de cada miembro mejorar la información de la respuesta.

Ver todas las valoraciones

Publicado en 3/5/2017 10:30:56 |
Para aprender, en MQTT necesitas reemplazar a Apollo
 Propietario| Publicado en 3/5/2017 10:31:59 |
ZjpzJP publicado el 3-5-2017 a las 22:30
Para aprender, en MQTT necesitas reemplazar a Apollo

Apollo tiene defectos
Publicado en 24/5/2017 10:43:39 |
Buscando recursos relacionados, MARK
Publicado en 29/5/2017 13:48:05 |
Está bien, es lo que quiero
Publicado en 7/6/2017 10:15:28 |
Aprendiendo, gracias por compartirlo
Publicado en 21/6/2017 12:37:04 |
MQTT para aprender。。。。。
Publicado en 27/6/2017 19:50:07 |
Yo también me he encontrado con este problema, gracias por compartirlo
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com