Client-Accounts mit OpenLDAP und PAM?

Hallo zusammen,

da ich verstanden habe, dass ich lmn (noch) nicht bei mir an der Schule starten kann, weil da einfach zu festgefahrene Strukturen herrschen, will ich weiter an meinem Linux-Clients-Test-Projekt arbeiten.

Ich hoffe, ihr helft mir auch außerhalb eines direkten lmn-Bezugs - hatte aber das Gefühl, dass die Community hier ja grundlegend hilfsbereit ist ;-).

Also: Wie realisiere ich Schüleraccounts auf meinen Laptops etc. am besten, ohne „die Macht über das Netzwerk“ zu haben?

Ich hätte ein paar Linux-Mint-Installationen und hatte gehofft, einen alten Rechner oder Raspberry Pi als Server für die Authentifizierung zu nutzen (ich gehe von nicht mehr als 15 gleichzeitigen Nutzern im Probebetrieb aus).

Habe ich das richtig verstanden, dass das dann OpenLDAP und irgendetwas von PAM übernimmt?
Inwiefern ist das Anmelden mit dem Übertragen (Synchronisieren?) eines Profils verknüpft? Oder sind das zwei unterschiedliche Dinge (wobei: was nützt eine Authentifizierung ohne Profil?)

Ich finde Unmengen von Informationen - aber kriege das noch nicht richtig sortiert. Hat jemand einen guten Einstieg oder direkt Antworten auf meine Fragen für mich?

Danke schon Mal,
Guntram

Hallo Guntram,

wie stellst du dir das den vor?
Ein eigenes abgeschlossenes Netz in eurem Schulnetz? (also nur in einem Raum oder so) oder wo soll das sein?

LG

Holger

Hallo Holger,

ich will ja kein extra „Netz“ betreiben ;-). Unsere Laptops sind ja via WLAN angebunden (weshalb lmn erst einmal „schwierig“ würde - weil kein extra VLAN) und ich möchte im ersten Schritt einfach nur Benutzerkonten verwalten. Dazu muss der entsprechende Server ja lediglich „erreichbar“ sein, ohne dass er DHCP und Co. verwaltet (das geschieht ja außerhalb meines Zugriffs)…

LG,
Guntram

Hallo Guntram,

das hab ich befürchtet.
Das geht aber so erstmal nicht.
Wie sollen deine Clients den wissen, an welchem Server sie sich anmelden sollen?
Das müßte ihnen der DHCP sagen: das kann man dem schon beibringen, aber da sollst/darfst du ja nicht hin langen.
Und dann die auth per WLAN noch dazu …
Ich glaube nciht, dass es einen Weg gibt das um zu setzen ohne, entweder in den DHCP ein zu greifen, oder ein inneres, gekapseltes Netz auf zu machen.

LG

Holger

Hallo Guntram,

Die Sache ist leider deutlich komplexer als du dir das vorstellst.
Um Nutzer auf einem Linuxclient authentifizieren zu können brauchst du ein Samba Active Directory, also einen Domaincontroller. Dieser stellt eine „Domäne“ (z.B. linuxmuster.lan) bereit und speichert deine Benutzer. Jeder Rechner wird nun der Domäne „gejoint“, dabei bekommt auch der Rechner einen Account im AD, über den er dann die Nutzer authentifizieren kann.
Damit das geht muss der Domain Controller (also der Samba AD Server) spezielle DNS Einträge bekommen, zum Beispiel:

  • linuxmuster.lan → deine Server IP
  • server.linuxmuster.lan → deine Server IP
  • client.linuxmuster.lan → deine client IP

Gibt es diese DNS Einträge nicht, wird der Domänenjoin meines Wissens nach schwierig. Du musst also zumindest den DNS-Server kontrollieren können.
Ich bin mir aber ehrlich gesagt nicht sicher, ob sich das so ohne Weiteres auf ein bestehendes Netz „draufsetzen“ lässt, denn das ist kein typischer Anwendungsfall. Es ist auf jeden Fall nicht trivial, sowas „from scratch“ einzurichten, erst recht nicht für einen Anfänger!!
Bei Linuxmuster als ganzes ist das etwas Anderes, da wird vieles schon automatisiert vorkonfiguriert.

VG, Dorian

Hallo und vielen Dank für die beiden Antworten,

ich hatte gehofft, dass man einfach den Hostnamen oder die IP des Domänenservers angeben könnte und die Clients sich dann halt aktiv dort authentifizieren…
Letztlich gibt es doch auch so SingleSignOn via Internet?

Welche Alternativen gäbe es für eine Nutzerverwaltung? Gibt es so etwas wie ein einzelnes, sich immer wieder löschendes Profil (quasi Gastzugang), aber man muss sich trotzdem mit gültigen Zugangsdaten anmelden (also z.B. nur die /etc/passwords und … (?) auf die Rechner verteilen (ansible) )?
Dann könnte man ja wenigstens noch die eine oder andere Konfig live mounten bzw. synchronisieren?

Ich muss halt Überzeugungsarbeit leisten, bevor lmn installiert werden kann und wir haben im Normalbetrieb nur die WiFi-angebundenen Laptops…

Danke nochmals,
Guntram

Hallo,

… klingt nach Kiosk.

wie willst du den Überzeugungsarbeit für ein System machen, dass du überhaupt nicht benutzt?

Vorteile der lmn sind die Nutzungsverwaltung, das Clientmanagement (linbo) und die WebUI.
Nichts davon kannst du ordentlich in einem fremden Netz nutzen.

Also wäre meine Strategie eher: selber auf einem Laptop die lmn mit Clients nutzen, sich selber damit trainieren und einfuchsen und dann den Entscheidern mal vorführen.
Funktionierende Virtualboxumgebung gibt es von mir.

LG

Holger

Hallo zusammen,

die Überzeugungsarbeit ist erst einmal für Linux-Clients, welche pflegeleichter sind.

Ich habe jetzt OpenLDAP am laufen - der DNS-Server lässt sich ja mittels /etc/hosts „simulieren“. Diese /etc/hosts kann ich ja z.B. per ansible auf die verschiedenen Server und Clients verteilen.

Ist dieses DNS (warum eigentlich einen Domänennamen für ein Intranet?) jetzt das einzige Problem? Wenn ich jetzt nur fürs erstmalige Booten PXE bräuchte bzw. das mit USB-Stick realisiere?

gibtNochNichtAuf,
Guntram :slight_smile:

Find ich ehrlich gesagt: Voll Backe!
Warum Sonderwege an der eigentlichen Lösung vorbei gehen? Dann braucht man Linuxmuster.net nicht, sondern kann gleich sein eigenes Zeug machen.

Allein schon die Frage „was dieses DNS soll“…disqualifiziert IMHO einen ernst zunehmenden Lösungsansatz

Hallo tjordan,

ich verstehe das aber wirklich nicht, warum ich in einem Intranet (und darum geht es bei LDAP/AD doch?) einen DNS-Server brauche?
Ich kenne DNS-Server als Schnittstelle zwischen IP-Adressen und „gut lesbaren“ Namen (und natürlich der Pflege unterschiedlicher Maschinen für gleiche DNS etc.).

Aber wenn ich ein Intranet habe, in welchem die IP-Adressen „gut bekannt“ sind (z.B. als Host-Liste gepflegt), dann ersetzt doch eine solche Vorgehensweise den „DNS-Server“?

Ich verstehe vollkommen den ganzheitlichen Ansatz von lmn. Aber mir ist der technische Unterschied bzw. die Funktion eines DNS-Servers im Vergleich zu /etc/hosts nicht klar? Abgesehen von der Pflege natürlich…

Beste Grüße,
Guntram

Wozu DHCP…apipa geht doch auch

Der Ansatz DNS durch /etc/Hosts Dateien über Ansible zu verteilen zu ersetzen ist schlichtweg schlecht…warum nicht gleich einen funktionierenden DNS Server machen? Entweder man braucht DNS oder nicht!!! Wenn man DNS nicht braucht kann man sich auch den Quatsch mit /etc/Hosts schenken…denn wozu soll das dann gut sein???

Hallo tjordan,

ich hatte die obigen Posts so verstanden, dass lmn nur geht, wenn man einen DNS-Server selber betreibt.

Mein Problem ist, dass ich eben nicht so ohne weiteres die Netz-Infrastruktur meiner Schule umkrempeln kann. Zusätzlich ist die Mehrzahl unserer Clients WLAN-basiert im Zugriff - da kann ich mir nicht so ohne weiteres ein VLAN zu Testzwecken abzwacken etc…

Vielleicht habe ich ja am Konzept „an Domäne anmelden“ was falsch verstanden: aber heißt das nicht einfach nur, dass man Profil etc. -daten von einem Server auf den Client lädt?

Aber noch einmal: ich muss halt mit der bestehenden Netzwerk-Infrastruktur leben und versuche gerade trotzdem ein paar Features zu etablieren, damit ich dann sagen kann: so schön kann es sein - und noch viel schöner, wenn wir auf lmn umsteigen würden.
Mir wurde hier im Forum auch schon (in sehr freundlicher Art :wink: ) klar gemacht, dass lmn vom Selbstverwalten des Netzes lebt - deshalb möchte ich wenigstens die eine oder andere Funktionalität lokal nachbauen…

Ist jetzt klarer geworden, worum es mir geht?

:-),
Guntram

Hallo Guntram,

zu allererst geht es um die Crendentials: diese sollen zentral verwaltet und gesichert werden. Ist ein Client in die Domäne aufgenommen, dann vertraut der Server dem Client und der Client dem Server. Das geht aber nur, wenn der Client eindeutig identifiziert ist: also nicht einfach per IP sondern da muss ein „Namen“ hin, und zwar der richtige. Deswegen vertraut der Client und der Server auch nicht „irgendeinem“ DNS sondern nur bestimmten.
Der DNS ist also nötig, sonst wird es nix mit der Anmeldung an der Domäne.

Ich finde deinen Einsatz und deinen Wagemut bewundernswert. Leider glaube ich nicht, dass du es auf diese Weise schaffen wirst zu zeigen, was das System kann: es wird an entscheidenden Stellen beschnitten. Was resultiert ist eine Bastellösung die vermutlich ihre Zuverlässigkeit verliert.
Das ist ein wichtiger Aspekt der lmn: wir machen nicht die schickste Lösung, wir machen einen Traktor, der einfach das erledigt, was er soll und das hoch zuverlässig: bei Regen und Schnee.

In deinem Setting würde ich darüber nachdenken nur die Clients zu linboisieren um wenigstens zu zeigen, was linbo kann.
Die dürfen dann auch weiterhin in der anderen Domäne sein: trotzdem haben sie dann eine linbo Partition und sind clon/zurücksetzbar.

LG

Holger

Hallo Guntram,

ich kann da Holger nur zustimmen. Wenn ich jemanden von der Leistungsfähig einer Lösung überzeugen will, dann zeige ich das am besten im Live Betrieb im produktiven Einsatz und nicht irgendwas Zusammengestückeltes unter Labor Bedingungen. Wenn ich die Möglichkeiten dazu selbst nicht habe: Evtl. gibt es ja die ein oder andere Schule, die ihre Lösung sozusagen als Referenz anbietet. Dann kann man sich (und die Verantwortlichen) das handfest und konkret vorstellen bzw. ansehen.

Bei allem Respekt: Mit dem was du da baust, kannst du nur zeigen: Man kann sich auch mit einem Linux-Client an einem zentralen Anmeldeserver anmelden und ganz ehrlich: Das allein überzeugt und bewegt niemanden zu einem Systemwechsel der hunderte Benutzer betrifft und bildet bei weitem nicht das Leistungsspektrum der linuxmuster.net-Lösung ab.

Gruß
Thomas