@ueb_team161 One way to do it would be a nextcloud instance for user & calendar management. The calendars can then be accessed through web interface or CalDAV clients (e.g. DavX5 + Fossify Calendar on Android). Integrates nicely with Ubuntu (e.g. Gnome Calendar or Thunderbird).
Not sure what the best CalDAV clients for iOS or Windows are, as I don't use them.