added config entries for MQTT TLS (#2651)

3 new entries in the config section, for setting file paths for
        - Root CA
        - Client Certificate
        - Client Private Key
 (all set as expert parameters)

- logging cert filenames

added config entries for MQTT TLS

 3 new entries in the config section, for setting file paths for
        - Root CA
        - Client Certificate
        - Client Private Key

- logging cert filenames

MQTT-TLS: Updates for the PR comments

- config.ini now has default values closer to "real" life filenames
- MQTT cert entries are hidden as Expert parameters
- Fixed debug logging at MQTT interface for unhandled messages
This commit is contained in:
LordGuilly
2023-11-07 21:58:16 +00:00
committed by GitHub
parent 36c12b400b
commit 75b15b8e9d
7 changed files with 106 additions and 1 deletions

View File

@@ -62,6 +62,9 @@ CheckDigitIncreaseConsistency = false
RetainMessages = false
HomeassistantDiscovery = false
;MeterType = other
;CACert = /config/certs/RootCA.pem
;ClientCert = /config/certs/client.pem.crt
;ClientKey = /config/certs/client.pem.key
;[InfluxDB]
;Uri = undefined

View File

@@ -753,6 +753,39 @@
<td>$TOOLTIP_MQTT_password</td>
</tr>
<tr class="MQTTItem expert" id="exMqtt">
<td class="indent1">
<input type="checkbox" id="MQTT_CACert_enabled" value="1" onclick = 'InvertEnableItem("MQTT", "CACert")' unchecked >
<label for=MQTT_CACert_enabled><class id="MQTT_CACert_text" style="color:black;">Root CA Certificate file</class></label>
</td>
<td>
<input type="text" id="MQTT_CACert_value1">
</td>
<td>$TOOLTIP_MQTT_CACert</td>
</tr>
<tr class="MQTTItem expert" id="exMqtt">
<td class="indent1">
<input type="checkbox" id="MQTT_ClientCert_enabled" value="1" onclick = 'InvertEnableItem("MQTT", "ClientCert")' unchecked >
<label for=MQTT_ClientCert_enabled><class id="MQTT_ClientCert_text" style="color:black;">Client Certificate file</class></label>
</td>
<td>
<input type="text" id="MQTT_ClientCert_value1">
</td>
<td>$TOOLTIP_MQTT_ClientCert</td>
</tr>
<tr class="MQTTItem expert" id="exMqtt">
<td class="indent1">
<input type="checkbox" id="MQTT_ClientKey_enabled" value="1" onclick = 'InvertEnableItem("MQTT", "ClientKey")' unchecked >
<label for=MQTT_ClientKey_enabled><class id="MQTT_ClientKey_text" style="color:black;">Client Key file</class></label>
</td>
<td>
<input type="text" id="MQTT_ClientKey_value1">
</td>
<td>$TOOLTIP_MQTT_ClientKey</td>
</tr>
<tr class="MQTTItem">
<td class="indent1">
<label><class id="MQTT_RetainMessages_text" style="color:black;">Retain Messages</class></label>
@@ -2089,6 +2122,9 @@ function UpdateInput() {
WriteParameter(param, category, "MQTT", "RetainMessages", false);
WriteParameter(param, category, "MQTT", "HomeassistantDiscovery", false);
WriteParameter(param, category, "MQTT", "MeterType", true);
WriteParameter(param, category, "MQTT", "CACert", true);
WriteParameter(param, category, "MQTT", "ClientCert", true);
WriteParameter(param, category, "MQTT", "ClientKey", true);
WriteParameter(param, category, "InfluxDB", "Uri", true);
WriteParameter(param, category, "InfluxDB", "Database", true);
@@ -2225,6 +2261,9 @@ function ReadParameterAll()
ReadParameter(param, "MQTT", "RetainMessages", false);
ReadParameter(param, "MQTT", "HomeassistantDiscovery", false);
ReadParameter(param, "MQTT", "MeterType", true);
ReadParameter(param, "MQTT", "CACert", true);
ReadParameter(param, "MQTT", "ClientCert", true);
ReadParameter(param, "MQTT", "ClientKey", true);
ReadParameter(param, "InfluxDB", "Uri", true);
ReadParameter(param, "InfluxDB", "Database", true);

View File

@@ -183,6 +183,9 @@ function ParseConfig() {
ParamAddValue(param, catname, "RetainMessages");
ParamAddValue(param, catname, "HomeassistantDiscovery");
ParamAddValue(param, catname, "MeterType");
ParamAddValue(param, catname, "CACert");
ParamAddValue(param, catname, "ClientCert");
ParamAddValue(param, catname, "ClientKey");
var catname = "InfluxDB";
category[catname] = new Object();