Skip to content

This project contains all the files which are needed for the installation process of the ClassInsights API and Dashboard.

Notifications You must be signed in to change notification settings

ClassInsights/Installer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Voraussetzungen

Neben einer ClassInsights-Lizenz benötigen Sie:

  • Private IP des Servers, auf dem Dashboard und lokale API laufen sollen (Linux empfohlen; Windows-Support folgt bald)
  • Windows Active Directory¹ (diese Anleitung setzt eine Windows-AD-Umgebung voraus)
  • Computernamen müssen mithilfe eines Pattern oder Regex den WebUntis Räumen zugeordnet werden können

¹ Wenn Ihre Schule ein anderes Authentifizierungs- oder Verzeichnisdienst-System nutzt, setzen Sie sich bitte vor Beginn mit uns in Verbindung: [email protected]


1. Vorbereitung auf dem Domain Controller

1. ExecutionPolicy ändern Bevor Sie starten, vergewissern Sie sich, dass Sie PowerShell-Skripte ausführen dürfen:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Dadurch sind lokale Skripte und signierte Skripte aus dem Internet erlaubt.

2. Installationsskript herunterladen

Hier finden Sie das PowerShell Installationsskript zum herunterladen und ausführen:

Invoke-WebRequest -Uri https://raw.githubusercontent.com/classinsights/installer/main/classinsights.ps1 -OutFile .\classinsights.ps1

3. Skript starten

.\classinsights.ps1

Der Assistent führt Sie durch die Erstellung aller benötigten Dateien.

4. Lizenz-Key & Server-IP eingeben

Bitte gib deinen ClassInsights Lizenz Key ein
Lizenz: <Ihr-Lizenz-Key>

Was ist die IP Addresse des ClassInsights API Server?
IP: <Server-IP>    # z. B. 172.16.32.104

5. Dateien auf den Server hochladen

Wenn der Assistent fragt:

Wollen Sie die Dateien für die lokale API nun auf den Server hochladen? (J/N) J

geben Sie Ihre SSH-Zugangsdaten für ihren lokalen ClassInsights Server ein, damit alle benötigten Dateien auf den Zielserver kopiert werden:

Username: <Ihr-Username>
IP des Servers: <Server-IP>

Bei Problemen können Sie den Befehl auch manuell eingeben: scp -r api username@server:~/."

Nun können wir uns ein ClassInsights Gruppenrichtlinienobjekt erstellen lassen:

Wollen Sie nun zu der Erstellung des Gruppenrichtlinienobjekts übergehen? (J/N): J

Hierbei wird das generierte gpo_install.ps1 Skript ausgeführt

Verzeichnisstruktur zur Orientierung

api/
├─ api.env
├─ cert.pfx
├─ classinsights.sh
├─ docker-compose.yml
gpo/
├─ gpo_install.ps1
├─ ClassInsights_CA.cer
├─ ClassInsights.msi
classinsights.ps1

2. Konfigurierung der Gruppenrichtlinie (GPO)

1. Dateien für Clients bereitstellen Kopieren Sie in einen freigegebenen Netzwerk-Ordner (z. B.
\\ihre.ad.domain\SYSVOL\ihre.ad.domain\scripts):

  • ClassInsights_CA.cer
  • ClassInsights.msi

Die Dateien befinden sich in dem erstellten gpo Ordner

2. GPO konfigurieren Als nächstes öffnen wir die Gruppenrichtlinienverwaltung und wählen bei den Gruppenrichtlinienobjekte ClassInsights zum Bearbeiten aus:

2.1 Softwareinstallation

Computerkonfiguration
└─ Richtlinien
   └─ Softwareeinstellungen
      └─ Softwareinstallation
  • → Rechtsklick → Neu > PaketClassInsights.msiOK

2.2 Stammzertifikat importieren

Computerkonfiguration
└─ Richtlinien
   └─ Windows-Einstellungen
      └─ Sicherheitseinstellungen
         └─ Richtlinien für öffentliche Schlüssel
            └─ Vertrauenswürdige Stammzertifizierungsstellen
  • Rechtsklick → ImportierenClassInsights_CA.cer
  • Folgen Sie dem Zertifikat-Import-Assistenten

3. GPO aktivieren

  • Weisen Sie das ClassInsights-GPO den gewünschten Organisationseinheiten zu.

Nach der nächsten Gruppenrichtlinienauffrischung installieren sich die Clients automatisch.

3. Installation auf dem ClassInsights API Server

1. SSH-Verbindung herstellen
Verwenden Sie z. B. Putty, PowerShell oder ein anderes Terminal:

ssh <Ihr-Username>@<Server-IP>

2. In das API-Verzeichnis wechseln & Installation starten

cd api
chmod +x classinsights.sh && sudo ./classinsights.sh install
  • Das Skript installiert Docker und startet alle benötigten Container automatisch.
  • Standard-Port für die API: 52001.
  • Standard-Port für das Dashboard: 52000

Hinweis: Stellen Sie sicher, dass Port 52000 und 52001 in Ihrer Firewall geöffnet sind und alle Clients Zugriff haben.

4. URLs und Lehrergruppen festlegen

Rufen Sie im Browser https://classinsights.at auf und melden Sie sich an. Danach wählen Sie bei Ihrer Schule das Einstellungssymbol und fügen Ihre lokalen URLs ein:

  • Lokales Dashboard: https://<DEINE-SERVER-IP>:52000
  • Lokale API: https://<DEINE-SERVER-IP>:52001

Außerdem können Sie hier festlegen, welche Azure Gruppen Lehrer sind und somit Zugriff auf das Dashboard bekommen sollen.

Mit einem Klick auf Zum Dashboard gelangen Sie zum lokalen Dashboard

5. Räume konfigurieren

  • Unter Konfiguration → Raum-Pattern legen Sie ein Namensmuster fest (z. B. DV1*), damit ClassInsights WebUntis-Räume automatisch zuordnet.

Achten Sie darauf, dass das Muster genau zu Ihren Computernamen passt.

Fragen/Probleme?

Bitte senden Sie alle Fehlermeldungen und eine Beschreibung an: [email protected]

FAQ

ClassInsights API Server IP ändern

Führen Sie folgenden Befehl auf Ihrem Domain Controller aus:

Set-GPRegistryValue -Name "ClassInsights" -Key "HKLM\SOFTWARE\ClassInsights" -Type String -ValueName "ApiUrl" -Value "https://<IHRE-NEUE-SERVER-IP>:52001"

Vergessen Sie nicht den Platzhalter mit ihrer IP am Ende des Befehls zu ersetzen!

Nun müssen Sie noch bei https://classinsights.at/schulen unter dem Einstellungssymbol die URLs aktualisieren.

About

This project contains all the files which are needed for the installation process of the ClassInsights API and Dashboard.

Topics

Resources

Stars

Watchers

Forks