Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
156 commits
Select commit Hold shift + click to select a range
b774126
Doku Benutzerverwaltung
benderl Oct 20, 2025
a5d816a
Ergänzungen
benderl Oct 24, 2025
f3f072a
Meeting 2025-10-23
benderl Oct 24, 2025
e318b3c
Kommentar Kevin - korrigiert
benderl Oct 27, 2025
ef9a29e
dynsec Evaluierung 1
benderl Oct 27, 2025
8fd1b84
restrict access to mosquitto and apache
benderl Nov 3, 2025
5a7626a
move mosquitto setup to own file
benderl Nov 3, 2025
9f48b30
implement dis-/enabling unencrypted access
benderl Nov 3, 2025
b5c3070
migrate simpleAPI
benderl Nov 10, 2025
122dedf
adopt lxde session
benderl Nov 10, 2025
b370c0e
auth-server
benderl Nov 12, 2025
fddcf3b
Reduces client inactivity timeout to 30 minutes
benderl Nov 13, 2025
6044a88
cleanup
benderl Nov 14, 2025
48c6a17
user endpoints / token handling
benderl Nov 14, 2025
0bd982b
modify token handling / cleanup
benderl Nov 17, 2025
e8abcbd
refactoring
benderl Nov 18, 2025
f2bcead
service installation
benderl Nov 18, 2025
8b0bbd7
disable auth server
benderl Nov 21, 2025
0bc3cfb
implement switching between acl and dynsec
benderl Nov 21, 2025
db86bba
fix mosquitto setup
benderl Nov 24, 2025
f3974dc
fix apache setup
benderl Nov 24, 2025
5be3ac6
fix file comparison
benderl Nov 24, 2025
dc965d6
fix dynsec setup
benderl Nov 24, 2025
6a18c7b
migrate simpleAPI to localhost 1884
benderl Nov 24, 2025
8badfa4
add official mosquitto apt repository
benderl Nov 25, 2025
e109d33
configuration changes on boot only
benderl Nov 25, 2025
7557cbb
fix mosquitto.acl ownership
benderl Dec 1, 2025
575633f
fix disabling user management
benderl Dec 2, 2025
9355d11
add resetUserManagement command
benderl Dec 4, 2025
dd918bf
upgrade npm packages
benderl Dec 8, 2025
ce6b960
fix mosquitto.acl permissions
benderl Dec 8, 2025
a52c464
mosquitto: add ws listener on localhost
benderl Dec 8, 2025
ad6f259
Koala: adopt mqtt options
benderl Dec 8, 2025
a67e8e7
upgrade theme and display wrappers to mqtt 5.14.1
benderl Dec 8, 2025
1528c58
roles for theme and display wrapper
benderl Dec 9, 2025
a09b904
koala: login handling
benderl Dec 10, 2025
5a98e64
koala: improve handling of invalid credentials
benderl Dec 10, 2025
ab37466
restructure security topics
benderl Dec 12, 2025
3c73956
update Doku
benderl Dec 15, 2025
371db45
koala: fix charge point display
benderl Dec 15, 2025
c5fe457
classic: migrate mqtt package
benderl Dec 15, 2025
a64264c
draft
LKuemmel Dec 15, 2025
030507e
fix
LKuemmel Dec 15, 2025
3ffddb3
update files
LKuemmel Dec 15, 2025
9cb4383
clean up remove acl
LKuemmel Dec 15, 2025
dc5dbd3
Update role-templates.json
benderl Dec 16, 2025
40f4701
Update command.py
benderl Dec 16, 2025
abdef66
Update default-dynamic-security.json
benderl Dec 16, 2025
ca787eb
restructure dynsec methods
benderl Dec 16, 2025
9f4590a
check acl roles at start
LKuemmel Dec 16, 2025
40dd0b1
ammend
LKuemmel Dec 16, 2025
3caf01f
review
LKuemmel Dec 16, 2025
fbeecd1
typos
benderl Dec 16, 2025
459e1d1
updated default and template acls
benderl Dec 18, 2025
47220f0
add acl roles for components and io
LKuemmel Dec 18, 2025
6f5f209
Apply suggestions from code review
LKuemmel Dec 18, 2025
b833a93
Review
LKuemmel Dec 18, 2025
259e6b2
Apply suggestions from code review
benderl Dec 18, 2025
02bd2a2
access controlled commands (#4)
LKuemmel Dec 18, 2025
ed6eb98
classic theme: fix publishing
benderl Dec 18, 2025
cf6245a
koala: change command topics
benderl Dec 18, 2025
5d71bbe
koala: reset values on publish error
benderl Dec 18, 2025
4a1d97e
allow changing admin password
benderl Dec 18, 2025
e2efb16
fix handling missing topics in shell scripts
benderl Dec 19, 2025
7f65ab2
clean mosquitto.conf after restore to allow downgrading
benderl Dec 19, 2025
a696b3f
include user management specific files in backup/restore process
benderl Dec 19, 2025
c6dd937
fix reload in theme and display wrapper
benderl Dec 19, 2025
58f53b4
remove dynsec settings on factory reset
benderl Dec 22, 2025
8c52587
koala: linting
benderl Dec 22, 2025
de24d9f
detect dynsec plugin path
benderl Dec 22, 2025
edef2e9
resubscribe on reconnect
benderl Dec 22, 2025
9451c9a
fix deleting mosquitto configuration on restore
benderl Dec 22, 2025
fc90ade
fix battery card display for missing permissions
benderl Dec 23, 2025
4cf5043
adjust role acls
benderl Dec 23, 2025
f14ee42
koala: fix manual soc update for charge points
benderl Jan 5, 2026
d0a44e6
fix charge point sum ACL
benderl Jan 6, 2026
e139f7e
ACL migration
benderl Jan 6, 2026
b48265d
add more topics to basic system role
benderl Jan 6, 2026
92a164d
fix counter role ACL
benderl Jan 6, 2026
253508b
add roles for status, charge log, chart and general settings access
benderl Jan 6, 2026
f0035b2
linting
benderl Jan 6, 2026
64bd8de
catch login error
benderl Jan 7, 2026
132ed8a
koala: reload on failed login
benderl Jan 7, 2026
71b0e3e
koala: make grid and home optional in flow chart
benderl Jan 8, 2026
d836eb6
koala: only display datasets with configured ACLs in history chart
benderl Jan 8, 2026
3349049
koala: refactor daily totals chart for individual components
benderl Jan 8, 2026
0340672
koala: linting
benderl Jan 8, 2026
8949a2b
enable apache http on localhost:81
benderl Jan 8, 2026
a0df729
replace router.go(0) with location.reload()
benderl Jan 9, 2026
6fe523b
koala: ward if default credentials are used
benderl Jan 12, 2026
070c144
refactor security topic structure
benderl Jan 12, 2026
a798844
theme/display wrapper: fix missed publish function upgrade
benderl Jan 12, 2026
665a75b
standard-legacy theme: fix missed smart home upgrade to mqtt 5.14.1
benderl Jan 12, 2026
a22a479
linting
benderl Jan 12, 2026
7429c6d
restructure permission topics
benderl Jan 13, 2026
3e72859
Sie -> Du
benderl Jan 14, 2026
92a259e
complete settings roles
benderl Jan 15, 2026
5cb45c8
fix default security roles
benderl Jan 16, 2026
1a6af82
add default user group
benderl Jan 19, 2026
197ddb0
prepare cards theme for mqtt auth
benderl Jan 20, 2026
fb9bdce
add version to default dynamic security roles
benderl Jan 20, 2026
5a14faa
rename some roles for easier parsing
benderl Jan 21, 2026
9ebbf69
typo
LKuemmel Jan 21, 2026
46a351d
update acls (#3106)
LKuemmel Jan 23, 2026
57e4102
clean mosquitto conf.d on update
benderl Jan 23, 2026
8318669
reset password
benderl Jan 23, 2026
50f508c
fix password reset
benderl Jan 26, 2026
c6b2025
fix updating ACLs on startup
benderl Jan 26, 2026
1dfe9e3
fix token request
benderl Jan 26, 2026
2074f6d
minor fixes for password reset
benderl Jan 27, 2026
34c0791
doku
benderl Jan 27, 2026
3395ff0
fix removing outdated ACL roles
benderl Jan 27, 2026
b298570
fix typos password reset
benderl Jan 27, 2026
6ce6431
improve login and password reset dialogues
benderl Jan 27, 2026
167105f
koala: require data protection acknowledge for password reset
benderl Jan 27, 2026
1ee2296
koala: layout enhancements
benderl Jan 29, 2026
ae61694
cards: login handling (temporary)
benderl Jan 29, 2026
1f1f28c
cards: adopt logic for missing topics
benderl Jan 29, 2026
bee2508
linting
benderl Jan 29, 2026
95e5739
Cards: add parameter "hide_login"
benderl Jan 30, 2026
8bcd193
display wrapper: check for stored credentials
benderl Feb 2, 2026
8f6d746
cards display: layout fixes
benderl Feb 2, 2026
ebe747f
cleanup
benderl Feb 2, 2026
144c73d
cards display: improve logout
benderl Feb 2, 2026
36f0aa7
add stored credentials to backup
benderl Feb 2, 2026
b8b2225
fix local display startup
benderl Feb 3, 2026
6805ada
add "userManagementSupported" flag for themes
benderl Feb 3, 2026
c74f6e9
cards: updated dependencies
benderl Feb 3, 2026
4c1900a
koala: remove warning about anonymous connection
benderl Feb 4, 2026
a7b5870
add mqtt chargepoint role
benderl Feb 4, 2026
02ee4cf
add io-device write rule
benderl Feb 4, 2026
6ced432
add mqtt soc write rule (partial)
benderl Feb 4, 2026
6518ee5
integrate mqtt component write rules
benderl Feb 5, 2026
15a2cd4
integrate "others/#" data
benderl Feb 5, 2026
925c658
fix adding roles on startup
benderl Feb 5, 2026
a5d46a8
add display clients
benderl Feb 9, 2026
8a54f7c
fix local display without internal charge point (standalone)
benderl Feb 10, 2026
71be51a
fix factory and user management reset
benderl Feb 10, 2026
89a4778
koala: modify mqtt connect message
benderl Feb 10, 2026
6b33936
koala: updated packages
benderl Feb 16, 2026
44ccb06
cards: updated packages
benderl Feb 16, 2026
c7ad3b4
update default ACLs
benderl Feb 17, 2026
1f7ae56
fix initializing user management
benderl Feb 23, 2026
77c3fd3
display hostname
benderl Feb 23, 2026
bf65c31
HTTP-API: support basic auth for user management
benderl Feb 23, 2026
955e358
update default role for active bat control
benderl Feb 24, 2026
4286dbf
fix surplus charge configuration role
benderl Feb 24, 2026
271818a
modify acls for io configuration
benderl Feb 25, 2026
c8011d7
modify login/-out modals
benderl Feb 26, 2026
40f0313
changes from copilot review
benderl Feb 27, 2026
9c448bd
optimize password reset dialog
benderl Mar 2, 2026
13edc10
fix init_user_management file check
benderl Mar 2, 2026
468ca72
reload display after user management initialization
benderl Mar 2, 2026
c27d548
fix initialization of roles and clients
benderl Mar 3, 2026
0dbef73
remove auth-service
benderl Mar 4, 2026
4e685f5
build settings ui
benderl Mar 4, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .htaccess
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,5 @@
RedirectMatch 404 \.conf$
RedirectMatch 404 \.ini$
RedirectMatch 404 \.py$
RedirectMatch 404 \.sh$
ErrorDocument 404 /openWB/web/error.html
1 change: 1 addition & 0 deletions data/clients/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.json
3 changes: 3 additions & 0 deletions data/clients/.htaccess
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<Files "*.json">
Require all denied
</Files>
8 changes: 4 additions & 4 deletions data/config/apache/000-default.conf
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# openwb-version:5
# openwb-version:6
<VirtualHost *:80>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
Expand Down Expand Up @@ -37,9 +37,9 @@
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf

ProxyPass "/ws" "ws://localhost:9001"
# ToDo: remove the next line when main page is using vue.js
ProxyPass "/mqtt" "ws://localhost:9001"
# Proxy WebSocket and MQTT connections to Mosquitto
# ToDo: remove /mqtt target once all clients use /ws
ProxyPassMatch "^/(ws|mqtt)(/|$)" "ws://127.0.0.1:9003/"
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
9 changes: 5 additions & 4 deletions data/config/apache/apache-openwb-ssl.conf
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# openwb-version:6
# openwb-version:8
<IfModule mod_ssl.c>
<VirtualHost _default_:443>
ServerAdmin webmaster@localhost
Expand Down Expand Up @@ -139,9 +139,10 @@
# nokeepalive ssl-unclean-shutdown \
# downgrade-1.0 force-response-1.0

ProxyPass "/ws" "ws://localhost:9001"
# ToDo: remove the next line when main page is using vue.js
ProxyPass "/mqtt" "ws://localhost:9001"
# Proxy WebSocket and MQTT connections to Mosquitto
# ToDo: remove /mqtt target once all clients use /ws
ProxyPassMatch "^/(ws|mqtt)(/|$)" "ws://127.0.0.1:9003/"

</VirtualHost>
</IfModule>

Expand Down
29 changes: 29 additions & 0 deletions data/config/apache/apache-redirect-ssl.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# openwb-version:1
<VirtualHost *:80>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com

ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn

ErrorLog ${APACHE_LOG_DIR}/error.log
#CustomLog ${APACHE_LOG_DIR}/access.log combined

# redirect all HTTP traffic to HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^/?(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
47 changes: 47 additions & 0 deletions data/config/apache/localhost.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# openwb-version:2
Listen 127.0.0.1:81

<VirtualHost *:81>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com

ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn

ErrorLog ${APACHE_LOG_DIR}/error.log
#CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/>
AllowOverride All
Require all granted
Options -Indexes
</Directory>
<Directory /var/www/html/openWB/ramdisk>
Options +Indexes
</Directory>
<Directory /var/www/html/openWB/data/backup>
Options +Indexes
</Directory>
# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf

# Proxy WebSocket and MQTT connections to Mosquitto
# ToDo: remove /mqtt target once all clients use /ws
ProxyPassMatch "^/(ws|mqtt)(/|$)" "ws://127.0.0.1:9003/"
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
4 changes: 2 additions & 2 deletions data/config/display/lxdeautostart
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# openwb-version:1
# openwb-version:4
# enable screen blanking / power management
xset s 15
# Start Chromium in kiosk mode
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/chromium/'Local State'
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/; s/"exit_type":"[^"]\+"/"exit_type":"Normal"/' ~/.config/chromium/Default/Preferences
chromium --start-fullscreen --kiosk --incognito --noerrdialogs --disable-translate --no-first-run --fast --fast-start --disable-infobars --disable-features=TranslateUI --disk-cache-dir=/dev/null --password-store=basic --disable-pinch --overscroll-history-navigation=disabled --disable-features=TouchpadOverscrollHistoryNavigation http://localhost/openWB/web/display/
chromium --start-fullscreen --kiosk --incognito --noerrdialogs --disable-translate --no-first-run --fast --fast-start --disable-infobars --disable-features=TranslateUI --disk-cache-dir=/dev/null --password-store=basic --disable-pinch --overscroll-history-navigation=disabled --disable-features=TouchpadOverscrollHistoryNavigation --ignore-certificate-errors --allow-insecure-localhost http://127.0.0.1:81/openWB/web/display/
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@ persistence_location /var/lib/mosquitto_local/
log_type error
log_type warning
log_dest file /var/log/mosquitto/mosquitto_local.log
# timestamp format currently not supported in stretch or buster with mosquitto 1.5
# only enable on bullseye and newer
log_timestamp_format %Y-%m-%dT%H:%M:%S

include_dir /etc/mosquitto/conf_local.d
11 changes: 0 additions & 11 deletions data/config/mosquitto/mosquitto.conf

This file was deleted.

44 changes: 0 additions & 44 deletions data/config/mosquitto/openwb.conf

This file was deleted.

Loading