[
https://issues.apache.org/jira/browse/ARTEMIS-4956?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
windy updated ARTEMIS-4956:
---------------------------
Description:
!小Q截图-20240729152045.png!
*configurations:*
{color:#ff0000}{{{}broker.xml{}}}:{color}
{color:#172b4d}<acceptor
name="mqtttls">tcp://0.0.0.0:1883?sslEnabled=true;sslProvider=OPENSSL;keyStorePath=/data/mqtt_ssl/mqtt_broker.keystore;keyStorePassword=12345;trustStorePath=/data/mqtt_ssl/mqtt_broker.truststore;trustStorePassword=12345;{color:#de350b}needClientAuth=true{color};tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;{color:#de350b}protocols=MQTT{color};useEpoll=true;producerMaxRate=5;handshake-timeout=120</acceptor>{color}
{color:#ff0000}{color:#de350b}testPage.html{color}:{color}
<!DOCTYPE html>
<html lang="en"> <head> <meta charset="UTF-8" /> <meta
name="viewport" content="width=device-width, initial-scale=1.0" />
<title>MQTT over WebSocket</title> <script
src="https://unpkg.com/mqtt/dist/mqtt.min.js"></script> </head> <body>
</body> <script> const clientId = 'mqttjs_' +
Math.random().toString(16).substring(2, 8) const connectUrl =
'wss://xxxxx:1883' const options = { keepalive: 30, clientId:
clientId, clean: true, connectTimeout: 5000, username:
'test', password: 'test', reconnectPeriod: 1000, key: KEY,
cert: CERT, ca: CA_CERT, } const topic = '/WebSocket/mqtt' const
payload = 'WebSocket mqtt test' const qos = 0 console.log('connecting
mqtt client') const client = mqtt.connect(connectUrl, options)
client.on('connect', () => { console.log('Client connected:' + clientId)
client.subscribe(topic, \{ qos }, (error) => { if (error) {
console.log('Subscribe error:', error) return }
console.log(`Subscribe to topic ${topic}`) })
</script>
</html>
{color:#de350b}Run error: {color}
{color:#de350b}The server always auto disconnect the connection{color}
was:
!小Q截图-20240729152045.png!
*configurations:*
{color:#ff0000}{{{}broker.xml{}}}:{color}
{code:xml}
<acceptor
name="mqtttls">tcp://0.0.0.0:1883?sslEnabled=true;sslProvider=OPENSSL;keyStorePath=/data/mqtt_ssl/mqtt_broker.keystore;keyStorePassword=12345;trustStorePath=/data/mqtt_ssl/mqtt_broker.truststore;trustStorePassword=12345;needClientAuth=true;tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;protocols=MQTT;useEpoll=true;producerMaxRate=5;handshake-timeout=120</acceptor>
testPage.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>MQTT over WebSocket</title>
<script src="https://unpkg.com/mqtt/dist/mqtt.min.js"></script>
</head>
<body>
</body>
<script>
const clientId = 'mqttjs_' + Math.random().toString(16).substring(2, 8)
const connectUrl = 'wss://xxxxx:1883'
const options = {
keepalive: 30,
clientId: clientId,
clean: true,
connectTimeout: 5000,
username: 'test',
password: 'test',
reconnectPeriod: 1000,
key: KEY,
cert: CERT,
ca: CA_CERT,
}
const topic = '/WebSocket/mqtt'
const payload = 'WebSocket mqtt test'
const qos = 0
console.log('connecting mqtt client')
const client = mqtt.connect(connectUrl, options) client.on('connect', ()
=> {
console.log('Client connected:' + clientId)
client.subscribe(topic, { qos }, (error) => {
if (error) {
console.log('Subscribe error:', error)
return
}
console.log(`Subscribe to topic ${topic}`)
}) </script>
</html>
Run error:
The server always auto disconnect the connection
{code}
> How to solve mqtt over websocket when mqtt using tls?
> ------------------------------------------------------
>
> Key: ARTEMIS-4956
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4956
> Project: ActiveMQ Artemis
> Issue Type: Bug
> Components: Broker, MQTT
> Affects Versions: 2.17.0
> Reporter: windy
> Priority: Major
> Attachments: 小Q截图-20240729152045.png
>
>
> !小Q截图-20240729152045.png!
> *configurations:*
> {color:#ff0000}{{{}broker.xml{}}}:{color}
>
> {color:#172b4d}<acceptor
> name="mqtttls">tcp://0.0.0.0:1883?sslEnabled=true;sslProvider=OPENSSL;keyStorePath=/data/mqtt_ssl/mqtt_broker.keystore;keyStorePassword=12345;trustStorePath=/data/mqtt_ssl/mqtt_broker.truststore;trustStorePassword=12345;{color:#de350b}needClientAuth=true{color};tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;{color:#de350b}protocols=MQTT{color};useEpoll=true;producerMaxRate=5;handshake-timeout=120</acceptor>{color}
> {color:#ff0000}{color:#de350b}testPage.html{color}:{color}
> <!DOCTYPE html>
> <html lang="en"> <head> <meta charset="UTF-8" /> <meta
> name="viewport" content="width=device-width, initial-scale=1.0" />
> <title>MQTT over WebSocket</title> <script
> src="https://unpkg.com/mqtt/dist/mqtt.min.js"></script> </head> <body>
> </body> <script> const clientId = 'mqttjs_' +
> Math.random().toString(16).substring(2, 8) const connectUrl =
> 'wss://xxxxx:1883' const options = { keepalive: 30, clientId:
> clientId, clean: true, connectTimeout: 5000, username:
> 'test', password: 'test', reconnectPeriod: 1000, key: KEY,
> cert: CERT, ca: CA_CERT, } const topic = '/WebSocket/mqtt' const
> payload = 'WebSocket mqtt test' const qos = 0 console.log('connecting
> mqtt client') const client = mqtt.connect(connectUrl, options)
> client.on('connect', () => { console.log('Client connected:' +
> clientId) client.subscribe(topic, \{ qos }, (error) => { if
> (error) { console.log('Subscribe error:', error) return
> } console.log(`Subscribe to topic ${topic}`) })
> </script>
> </html>
>
> {color:#de350b}Run error: {color}
> {color:#de350b}The server always auto disconnect the connection{color}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact