feat(tls): HTTPS + wss:// для iot.kube5s.ru

- emqx-ws-ingress.yaml: TLS секция + cert-manager letsencrypt-prod, ssl-redirect=true
- router.go: CORS Allow-Origin: http → https://iot.kube5s.ru
- iot-console.html: дефолт MQTT брокера ws:// → wss://
- operator.yaml: v0.1.53 → v0.1.54
- crypto.subtle теперь работает (HTTPS страница)
This commit is contained in:
Naeel
2026-04-04 19:56:31 +03:00
parent 017312f35c
commit fb6f9d48cd
4 changed files with 24 additions and 18 deletions
+3 -3
View File
@@ -194,7 +194,7 @@ const S = {
// ns вычисляется из токена автоматически (SHA256(sub) → "sless-{hex}"), не вводится вручную
ns: localStorage.getItem('iot_ns') || '',
apiBase: localStorage.getItem('iot_api_base') || 'https://sless.kube5s.ru',
mqttBase: localStorage.getItem('iot_mqtt_base')|| 'ws://iot.kube5s.ru/mqtt',
mqttBase: localStorage.getItem('iot_mqtt_base')|| 'wss://iot.kube5s.ru/mqtt',
// Рабочие данные
devices: [],
@@ -479,7 +479,7 @@ function renderLogin() {
</div>
<div class="form-group">
<label>MQTT Broker WebSocket</label>
<input id="f-mqtt" value="${h(S.mqttBase)}" placeholder="ws://iot.kube5s.ru/mqtt">
<input id="f-mqtt" value="${h(S.mqttBase)}" placeholder="wss://iot.kube5s.ru/mqtt">
</div>
<div class="form-group">
<label>Bearer токен</label>
@@ -522,7 +522,7 @@ async function doLogin() {
}
S.apiBase = api || 'https://sless.kube5s.ru';
S.mqttBase = mqtt || 'ws://iot.kube5s.ru/mqtt';
S.mqttBase = mqtt || 'wss://iot.kube5s.ru/mqtt';
S.ns = ns;
S.token = tok;