"Landingpage" für Benutzer

Hi Michael,

Doch, im Moment schon, hättest du das gerne anders?

VG, Dorian

Ich hätte es (glaube ich?) lieber, wenn die Landingpage frei verfügbar wäre und ohne Login aufrufbar wäre. Warum muss man sich SOFORT anmelden? Da gibt’s doch nichts zu verbergen, oder?

Übrigens habe ich LDAP gerade aktiviert – und kann mich leider nicht anmelden. In der config.php habe ich (entsprechend den Einträgen für Nextcloud!) ausprobiert:

[...]
$ldapconfig['basedn'] = 'ou=default-school,ou=SCHOOLS,dc=linuxmuster,dc=lan';
$ldapconfig['binduser'] = 'global-binduser';
$ldapconfig['binduserPassword'] = 'supergeheim';
$ldapconfig['userFilter'] = '(&(objectClass=person)(|(sophomorixRole=teacher)(sophomorixRole=student)))';
[...]

Das scheint nicht zu gehen??!
Ich erhalte Fehler 0001

Hi Michael,

Bei uns ist das so, damit unsere Nutz als aller erstes ihr Passwort ändern und ihre Mail-Adresse hinterlegn, bevor sie irgendwo anders hinkommen.
Aber ich denke, ich kann das ohne großen Aufwand auch optional konfigurierbar machen.

Probier es mal bitte ohne die Klammern außenrum :slight_smile:
Also:
$ldapconfig['userFilter'] = '&(objectClass=person)(|(sophomorixRole=teacher)(sophomorixRole=student))'

VG, Dorian

Geht leider weiterhin nicht – die äußeren Klammern sind weg.
Hab’s! Der Eintrag für den global-binduser musste vollständig da stehen – also auch mit Angabe der domain. Danach klappte der Login! Sieht echt cool aus! :+1:

(Jetzt rätsel’ ich nur noch, wie/wo ich das Blau der Buttons an unserer Schulfarbe anpassen kann… :thinking:)

Fände ich super! Andererseits … man könnte die Seite auch NUR zum Ändern von Passwort und/oder eMail-Adresse hinterlegen und dort sonst gar nichts weiteres anbieten. Das hätte den charmanten Vorteil, dass man die WebUI nicht nach außen öffnen muss aber dennoch diese beiden zentralen Punkte von außen für alle erreichbar macht!

Ok – aber das ist ja dann bei jedem Besuch der Seite so, dass man sich zunächst anmelden muss. Also auch, wenn man diese Schritte längst erledigt hat?!?

Nein, beim Login wird überprüft, ob das Erstpasswort noch gesetzt ist, falls ja, wird man aufgefordert, es zu ändern. Bei der Mail-Adresse ist es ähnlich: Wenn sie beim Login dem in der config festgelegten regex entspricht, wir die Änderungen gefordert, sonst nicht:
$ldapconfig['firstEmailPattern'] = '/.*\@linuxmuster\.lan$/'; (Das ist die Standardeinstellung)

Das ist auch eine der Hauptintentionen: Angriffsvektoren auf den Domänencontroller minimieren :wink:

VG, Dorian

Ok, das ist natürlich super so!!

Hi Michael,

Das hab ich ganz überlesen, tut mir leid. Ich weiß im Moment nicht, ob sich das ohne weiteres machen lässt, da ich einfach die Bootstrap css benutze, aber ich schau heute Abend mal rein, dann mache ich vielleicht auch gleich eine Option, den Login optional zu machen.

VG, Dorian

Hi.
Ich habe in den translations.php ein paar Anpassungen gemacht, da dort vorher noch an einigen Stellen deine Domain stand. Das ganze sieht jetzt schon echt gut aus :+1:

Wie sieht es aus, wenn ich

To update, just go to your installation folder and pull
cd /var/www/landingpage
git reset --hard
git pull

verwende – ist das dann alles wieder weg oder bleibt es erhalten?
Viele Grüße.
Michael

Hi Michael,

Die wird in der Tat beim nächsten Update überschrieben. Aber das lässt sich leicht ändern. Ich überlege mir gleich noch eine Config Option dafür.

VG, Dorian

Hi Michael,

Das wird leider so schnell nichts, Bootstrap ist da noch nicht so weit, siehe Use custom properties (CSS variables) in bootstrap · Issue #26596 · twbs/bootstrap · GitHub
Aber die Anmeldung mache ich optional :slight_smile:

VG, Dorian

Ist nicht schlimm – bzw ein echtes Luxus"problem". Funktion geht vor :slight_smile:

Hi Michael,

Ich habe gerade eine neue Version gepusht. Nach dem Update gibt es ein paar neue config optionen:
Hier fürs Ersetzen der Domain und co:

Hier um die Standardwerte der Spracheinstellungen zu überschreiben:

Und hier um die Links auch public zu machen, wenn ldap aktiv ist:

Aber Achtung: Beim Update wird die bisherige translations.php gelöscht, also falls du da was wichtiges drin hattest, bitter vorher ein Backup machen :wink:

Ich hoffe, das behebt alles, was du noch brauchst, viel Spaß damit!

VG, Dorian

1 „Gefällt mir“

Hab’s mit git nochmal überschrieben und die paar Änderungen nochmal vorgenommen.

  • Es sieht echt super aus!
  • In der translations.php ist Dir ein Wort zuviel reingerutscht. Da steht Generiere Generate jitsi-Link oder sowas ähnliches.
  • Ich habe das Rocket.chat bei uns gegen moodle getauscht.
  • als footnote habe ich $translations['login']['footnote'] = "<a href=https://meine-schule.de>zurück zur Homepage</a>"; verwendet…

Viele Grüße,
Michael

Hab ich korrigiert :slight_smile:

Hast Du das in der translations.php eingetragen? Falls ja, solltest Du es in Form von
$translationOverrides['login']['footnote'] = "<a href=https://meine-schule.de>zurück zur Homepage</a>";
in die config.php eintragen, sonst wird es überschrieben :wink:

VG, Dorian

OK.

Noch eine Idee - vielleicht wäre es sogar ratsam, dass man über dieses Portal das Passwort des global-admin nicht antasten kann – weder absichtlich noch versehentlich??

Das geht schon, wenn du einfach den LDAP Filter so baust, dass er den global-admin ignoriert, z.B. mit
(!(samaccountname=global-admin))

VG, Dorian

1 „Gefällt mir“

Gerade nachgesehen – die Datei gibt es ja jetzt nicht mehr. Ich hatte es in de-DE.php eingetragen. Kann die Syntax aber schnell ändern…

Aber diese LDAP-Syntax ist echt zum … ich glaube allerdings, dass der global-admin und auch alle anderen Admin-Zugänge mit diesem Filter eh schon raus sind und sich eh nicht anmelden können. Zumindest erhalte ich: Ungültige Zugangsdaten!

$ldapconfig['userFilter'] = '&(objectClass=person)(|(sophomorixRole=teacher)(sophomorixRole=student))';

Falls das zusätzliche !(sAMAccountName=global-admin) doch noch rein sollte – wie lautet die richtige Syntax? Kombination von 3 Bedingungen … Operatoren?

Hi Michael,

Da der global-admin weder Rolle student noch rolle teacher ist, fällt der eh schon raus, ab es würde so aussehen:
&(objectClass=person)(|(sophomorixRole=teacher)(sophomorixRole=student))(!(sAMAccountName=global-admin))

VG, Dorian

Hi.
Wäre es sehr viel Aufwand, dass man per default auch bei Klick auf das Icon (im Bsp Wikipedia) dem Link folgen kann? Also sowas wie

<a href="https://www.w3schools.com">
<img border="0" alt="W3Schools" src="logo_w3s.gif" width="100" height="100">
</a>

Viele Grüße,
Michael

Hi Michael,

Schon erledigt, bitte einmal updaten :wink:

VG, Dorian