Anbindung Nextcloud Anleitung

Hallo,

in Ermangelung von Zeit hier eine kurze Beschreibung, wie man eine Nextcloud per ldap an die lmn7 anbindet. Voraussetzung ist, dass der Zugriff von außen auf den Port 636 zum Server in der Opnsense freigeschaltet ist:

1. Server:

  • ldaps://ExterneIP
  • Port: 636
  • Benutzerdn: holt man sich aus /etc/linuxmuster/webui/config.yml bei binddn
  • Passwort: steht in /etc/linuxmuster/.secret/global-binduser
  • Basedn: OU=SCHOOLS,… den Rest findet man wieder in /etc/linuxmuster/webui/config.yml bei searchdn
    –> Fortsetzen

2. Benutzer:

  • Nur diese Objetklassen: person
  • Dann bei “Nur aus diesen Gruppen:” einfach die Gruppen auswählen, die sich an der Cloud anmelden können sollen
    –> Fortsetzen

3. Anmeldeattribute:

  • Haken bei LDAP-/AD-Benutzername
    –> Fortsetzen

4.Gruppen:

  • Nur diese Objektklassen: group
  • Dann bei “Nur aus diesen Gruppen:” einfach die Gruppen auswählen, die als Tauschgruppen in der Cloud zur Verfügung stehen sollen

5. Fortgeschritten

  • Alles so lassen nur bei Ordnereinstellungen beim Punkt “Assoziation zwischen Gruppe und Benutzer” member(AD) auswählen

6. Experte

Dieser Punkt ist wichtig, wenn man in der Cloud die Benutzernamen sehen will und nicht irgendwelche UUID’s. Desweiteren bekommen die Nutzerordner im Nextcloudstorage den Namen des Benutzers und keine UUID.

  • Attribut für interne Benutzernamen: samaccountname
  • UUID-Attribute für Benutzer: samaccountname
  • UUID-Attribute für Gruppen: leer lassen
4 Like

Hi Dominik,

danke für die Anleitung.

An alle diese Frage:
ICh habe schon immer bei Experte statt leer zu lassen das Attribut für den internen Benutzernamen und das LDAP-Mapping auf „uid“ stehen gehabt. Ich habe immer noch die Hoffnung, dass ich die Cloud einfach umziehen kann, ohne die User neu anzulegen.
Hat das jemand schon geschafft: Die Cloud gegenüber der v7 zu authentifizieren, ohne dass dabei alle User neu waren, d.h. die Shares neu mgemacht werden mussten, kalender neu erstellt und geteilt, circles neu angelegt, usw.

??
VG, Tobias

Hallo Tobias,

ICh habe schon immer bei Experte statt leer zu lassen das Attribut für
den internen Benutzernamen und das LDAP-Mapping auf „uid“ stehen gehabt.

ich nicht: deswegen mach ich es nach Dominiks Art.

Ich habe immer noch die Hoffnung, dass ich die Cloud einfach umziehen
kann, ohne die User neu anzulegen.
Hat das jemand schon geschafft: Die Cloud gegenüber der v7 zu
authentifizieren, ohne dass dabei alle User neu waren, d.h. die Shares
neu mgemacht werden mussten, kalender neu erstellt und geteilt, circles
neu angelegt, usw.

ich würde das eiskalt so machen:
nextcloud auf dem Server klonen, MAC Adresse ändern, andere externe IP
und URL eintragen (im Server und in der config.php) und den server rebooten.
Dann sollte also ein klon unter anderem Namen im Netz sein.
Jetzt kannst du in dem Wüten: also an die V7 anbinden und dann
ausgewählten Kollegen die URL geben und sagen: meldet euch mal an und
schaut, ob alles da ist.

Ist es das: das Orginal nochmal klonen (man ist ja paranoid…) und dann
das Orginal umstellen.

Viel Glück

LG

Holger

Hi Holger, hi dominik,

es scheint zu funktionieren:
Ich habe

es genauso gemacht.

  • Einmal habe ich noch LDAP-Gruppennamenzuordnung löschen gedrückt, bin mir aber nicht sicher, ob das sein soll/darf/muss.

Die App „Circles“ musste ich zunächst deaktivieren und auf dem Cloudserver hat sich ein php-Prozess aufgehängt. Mein Home_auf_Server share für alle habe ich auch mal vorsichtshalber entfernt.

Danach funktioniert aber das Einloggen per „kuechel“ und die Shares sind da. Die Kalender sind da und auch deren Shares. Die Nutzer und Gruppen werden angezeigt.

Später konnte ich „circles“ dann auch wieder aktivieren und die Nutzer sind dann da.

Allgemein: Man braucht eventuell viel Geduld, weil Nextcloud sich im Hintergrund irgendwie neu sortieren muss und ein fehlgeschlagenes Login kann man im nextcloud.log sicher mal anschauen, bevor man diesen Weg hier verwirft.

Danke!
Vg, Tobias

Hallo!

und wie reiche ich den Port nach außen durch?

Bekomme mit

openssl s_client -connect $ip_in_rot_des_opnsense:636

nur

140056110483264:error:0200206E:system library:connect:Connection timed out:…/crypto/bio/b_sock2.c:110:
140056110483264:error:2008A067:BIO routines:BIO_connect:connect error:…/crypto/bio/b_sock2.c:111:
connect:errno=110

Gruß Enrico

Hallo Enrico,

tut mir Leid, dass es so lange gedauert hat…
Hier ist ein Bild meiner Regel:
Firewall->NAT->Portweiterleitung
Da erlaube Ich ZUgriff von 129.143.0.0/16 (BelWü Adressen) auf den Port 636 des Servers.

LG

Holger

Also ich habe jetzt anstatt der Belwue, WAN net drin…aber es tut immernoch nicht…

Nextcloud auf docker in grün selbst ist erreichbar: meine Cloud

Hallo!

Also ich kann jetzt ‚openssl s_client -connect cloud.luckau-digital.de:636‘ machen. Aber nextcloud sperrt sich immer noch.

> CONNECTED(00000005)
>depth=0 O = Forscherlabor Schlabendorf, OU = FORSCHERLABOR, CN = server.forscherlabor.lan, subjectAltName = server.forscherlabor.lan
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 O = Forscherlabor Schlabendorf, OU = FORSCHERLABOR, CN = server.forscherlabor.lan, subjectAltName = server.forscherlabor.lan
verify error:num=21:unable to verify the first certificate
verify return:1
>---
>Certificate chain
 0 s:O = Forscherlabor Schlabendorf, OU = FORSCHERLABOR, CN = server.forscherlabor.lan, subjectAltName = server.forscherlabor.lan
   i:O = Forscherlabor Schlabendorf, OU = FORSCHERLABOR, CN = FORSCHERLABOR.LAN, subjectAltName = FORSCHERLABOR.LAN
>---
>Server certificate
-----BEGIN CERTIFICATE-----
MII...
-----END CERTIFICATE-----
subject=O = Forscherlabor Schlabendorf, OU = FORSCHERLABOR, CN = server.forscherlabor.lan, subjectAltName = server.forscherlabor.lan
>issuer=O = Forscherlabor Schlabendorf, OU = FORSCHERLABOR, CN = FORSCHERLABOR.LAN, subjectAltName = FORSCHERLABOR.LAN
>---
>Acceptable client certificate CA names
O = Forscherlabor Schlabendorf, OU = FORSCHERLABOR, CN = FORSCHERLABOR.LAN, subjectAltName = FORSCHERLABOR.LAN
Client Certificate Types: RSA sign, DSA sign, ECDSA sign
Requested Signature Algorithms: RSA+SHA256:ECDSA+SHA256:RSA+SHA384:ECDSA+SHA384:RSA+SHA512:ECDSA+SHA512:RSA+SHA224:ECDSA+SHA224:RSA+SHA1:ECDSA+SHA1
Shared Requested Signature Algorithms: RSA+SHA256:ECDSA+SHA256:RSA+SHA384:ECDSA+SHA384:RSA+SHA512:ECDSA+SHA512:RSA+SHA224:ECDSA+SHA224:RSA+SHA1:ECDSA+SHA1
Peer signing digest: SHA256
Peer signature type: RSA
Server Temp Key: ECDH, P-256, 256 bits
>---
>SSL handshake has read 1567 bytes and written 463 bytes
Verification error: unable to verify the first certificate
>---
>New, TLSv1.2, Cipher is ECDHE-RSA-AES256-GCM-SHA384
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : ECDHE-RSA-AES256-GCM-SHA384
    Session-ID: 43...
    Session-ID-ctx: 
    Master-Key: 6....
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time: 1569576151
    Timeout   : 7200 (sec)
    Verify return code: 21 (unable to verify the first certificate)
    Extended master secret: yes
---

Hallo odo2063,

ich kann nur raten: die LDAP-Konfiguration einmal komplett löschen (natürlich muss man sich alle Daten merken) und nochmal von vorne anfangen.
Der GUI dieser Extension traue ich nicht (mit gutem Grund).
VG, Tobias

Evlt. mal ein neuer Thread wert: Gruppen in Gruppen in LDAP/AD und dann in den angehängten Services, hier Nextcloud:

Ich hab die Checkbox „Eingebundene Gruppen“ in der Fortgeschrittenen Konfiguration (bin mir nicht sicher, ob ich das aktiv machen musste, oder ob das standardmäßig aktiviert ist) siehe hier:
grafik

Und das Fazit ist, dass es zwar funktioniert, dass Schüler aus der 10a, deren GRuppe 10a im Projekt „p_schueler“ aufgenommen wurde, in der Cloud auch der Gruppe „p_schueler“ angehören.
Allerdings ist das etwas frustrierend, wenn man es aktuell überprüfen will.
Die Cloud scheint zu cachen und ich kann nicht vorhersagen, wann ein User, der über die SChulkonsole aufgenommen wurde, dann auch in der Cloud erscheint. Aber, es funktioniert irgendwann. (cron.php hab ich schon ausprobiert).

VG, Tobias

Hallo!

Also ich habe jetzt mal noch den Port 389 rausgezogen und das geht. :-/

gibt es noch Ideen wie ich das mit Verschlüsselung hinbekomm?

Ansonsten noch die Anmerkung, dass die Lehrer ja in der Gruppe „teachers“ sind, wie bringt man dem LDAP neue Gruppen bei? (z.B. alle_Lehrer)

Gruß Enrico