• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Migration von Server.app auf Linux

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.477
Hallo,
würde gerne Dienste migrieren. Apple hat dazu: https://developer.apple.com/support/downloads/macOS-Server-Service-Migration-Guide.pdf
Das beschreibt aber den Umstieg auf entsprechende Dienste direkt auf macOS - und ich würde meinen Uralt-macOS 10.13.6-Server gerne weitestgehend von den Diensten befreien (das System muss irgendwo in Server.app ein Speicherleck haben, läuft daher selbst mit 32GB nicht dauerhaft stabil).

Anfangen würde ich gerne mit dem DHCP-Dienst.
Es wird BSD bootpd verwendet. Idealerweise kann ich die Software auch unter Linux verwenden und einfach meine jetzige Konfiguration unterjubeln.
Nur: Auf Ubuntu 20.04 installiert apt-get install bootp den bootpd von der Carnegie Mellon University, welcher ein anderes Konfigurationsdateienformat zu verwenden scheint.

Wo bekomme ich den BSD bootpd für Ubuntu 20.04 her? Danke.

Update: Ich kann da nichts finden. Das nächste was mir angeboten wird ist der ISC DHCPd, also nehme ich den und übertrage die Konfiguration.
 
Zuletzt bearbeitet:

Marcel Bresink

Hadelner Sommerprinz
Registriert
28.05.04
Beiträge
8.560
macOS verwendet eine sehr spezielle Version von bootpd, die von Dieter Siegmund bei Apple entwickelt wurde. Diese Fassung ist auch für einen entscheidenden Teil der NetBoot-Funktionalität verantwortlich. Das offizielle Migrationshandbuch sagt dazu, dass dieser Dienst auf irgendeine Version von macOS migriert werden sollte und nicht auf Linux oder BSD UNIX.

Ich habe mich nicht im Detail damit beschäftigt, aber ich vermute, dass die Konfigurationsdateien der bootpd-Varianten für BSD-UNIX, System-V-artige Systeme und macOS alle nicht miteinander kompatibel sind.
 

Scotch

Bittenfelder Apfel
Registriert
02.12.08
Beiträge
8.036
Wo bekomme ich den BSD bootpd für Ubuntu 20.04 her? Danke.
Gar nicht, da wie schon von Marcel beschrieben da Apple (mal wieder) eine komplett eigene Suppe gekocht hat. Ein Wechsel zum ISC dhcpd ist das vorgeschlagen (und vmtl. einzige) Migrationsszenario.

Ich würd' mir im Zeitalter von openWRT und hochgezüchteter Router gründlich überlegen, den Dienst außerhalb einer vmtl. ohnehin vorhandenen Appliance zu betreiben.
 
  • Like
Reaktionen: Wuchtbrumme

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.477
Ich würd' mir im Zeitalter von openWRT und hochgezüchteter Router gründlich überlegen, den Dienst außerhalb einer vmtl. ohnehin vorhandenen Appliance zu betreiben.
ja, da hast Du vermutlich Recht, aber ich habe keine und plane auch nicht, mir eine anzuschaffen. Früher habe ich fli4l betrieben, zusammen mit AVM-ISDN-Kram, jetzt habe ich eine Fritzbox. Die reicht (und hat sogar noch ISDN intern, sodass ich mein altes Telefon nicht wegwerfen muss).
Insofern mag ich eine VM haben, die tut, was sie soll - und die, um nicht unnötig Rechner/Appliances zu betreiben, einfach dort läuft, wo's eh an ist.
 

Scotch

Bittenfelder Apfel
Registriert
02.12.08
Beiträge
8.036
openWRT kannst du auch in 'ner VM laufen lassen - ob das Sinn macht, hängt von deinem Netzwerksetup ab. Wenn du aber eh' eine FB hast, warum lässt du die nicht DHCP machen? Mehrere Segmente? Ansonsten ist der DHCP-Server der FB recht leistungsfähig und kann sogar DoT/DoH - da warte ich bei meiner UDMP immer noch 'drauf...
 

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.477
...ich habe so ein paar negative Aspekte der FB auch im Kopf, u.a. meint sie manchmal, Rechner sperren zu müssen und wie sie intern arbeitet (mit MAC-Adressen) ist auch nicht ganz fehlerfrei.

Egal wie, es war nur Tipparbeit, wovon ich auch noch 90% mittels search/replace erledigen konnte und der ISC DHCP-Server arbeitet jetzt. Vielen Dank!

...ich widme mich nun dem DNS. Ich hoffe, da reicht es, die Konfigurationsdatei zu übertragen und ein paar Anpassungen zu machen. BIND9 gibt es auf Linux auch.



Blöde Frage: Kann ich einen Linux-Rechner auch OpenDirectory machen lassen? Am besten einmal mit dem Mac-Server synchronisiert?

...ich widme mich nun dem DNS. Ich hoffe, da reicht es, die Konfigurationsdatei zu übertragen und ein paar Anpassungen zu machen. BIND9 gibt es auf Linux auch.
das ist jetzt auch erledigt. Noch nicht ganz schön und ich habe Respekt vor BIND (gut, dass es sowieso nicht aus dem Internet erreichbar ist). Die Zonenfiles, die ich schon hatte, hat bind gefressen, aber im Konfigurationsfile war etliches anzupassen. Ich bin dann den Weg gegangen, die ausgelieferte Default-Konfiguration zu belassen und nur die vom Server zu sourcen, woraufhin da Logging, die Default-Zonen und die Optionen zu deaktivieren waren.
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Scotch

Marcel Bresink

Hadelner Sommerprinz
Registriert
28.05.04
Beiträge
8.560
Kann ich einen Linux-Rechner auch OpenDirectory machen lassen?
Alle Funktionen hundertprozentig nachzubilden ist kaum möglich, aber man kann als Ersatzlösung einen üblichen OpenLDAP-Server mit einem NIS-Datenbankschema nach RFC 2307 konfigurieren und alle Mac-Clients entsprechend anders einstellen. Dabei gibt es allerdings einige Detailprobleme, z.B. erwartet macOS, dass der Server eine Selbstauskunft über die unterstützten "supportedSASLMechanisms" beantwortet. Das muss über entsprechende Meta-Einträge in der Datenbank berücksichtigt werden, ansonsten versteht macOS nicht, auf welche Weise der Server die Kennworte verschlüsselt.

Um einen möglichst ähnlichen Betrieb zu ermöglichen, könnte man auch versuchen, mit viel Fingerspitzengefühl das Datenbankschema von Open Directory behutsam im NIS-Schema nachzubauen, indem man die entsprechenden Klassen aus macOS Server übernimmt, also z.B. "objectclass 1.3.6.1.4.1.63.1000.1.1.2.1" für die Klasse "apple-user".

Das ist recht viel Arbeit und man muss sich ziemlich gut mit LDAP auskennen.
 
  • Like
Reaktionen: Wuchtbrumme

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.477
Alle Funktionen hundertprozentig nachzubilden ist kaum möglich, [...] [aber man kann...]

Das ist recht viel Arbeit und man muss sich ziemlich gut mit LDAP auskennen.
vielen Dank aber das mit dem "ziemlich gut mit LDAP auskennen" würde ich derzeit (noch) nicht von mir behaupten.
Ich glaube, dann fällt mir spontan als Workaround ein, eine virtuelle Maschine mit Mojave und dem macOS Server aufzusetzen, den zu synchronisieren und zu hoffen, dass der stabiler läuft.
 

hosja

Mutterapfel
Registriert
23.03.07
Beiträge
5.252
Ähnlich wenn NetBoot nicht gebraucht wird kannst du doch mit dem genannten Standart Linux DHCP Server versorgen lassen.
 

Ijon Tichy

Clairgeau
Registriert
21.11.06
Beiträge
3.689
Interessantes Thema, das ich auch demnächst angehen möchte.

DHCP lasse ich aber ganz profan auch jetzt schon die Fritzbox machen, und habe damit keine Probleme. Man darf nur nicht die Funktion "immer dieselbe IP-Adresse" der Fritzbox verwenden, da diese nicht zuverlässig ist. Besser ist es, den entsprechenden Client mit DHCP aber fester IP-Adresse zu konfigurieren. Das funktioniert einwandfrei. Den IP-Adressraum der Fritzbox für feste IP-Adressen habe ich etwas erweitert, damit ich mehr Platz habe.

Die LDAP-Konfiguration des Apple OpenDirectory kann man theoretisch in ldif-Dateien exportieren und in einen OpenLDAP importieren. Die Tools können das mal und mal weniger gut. Apache Directory Studio ist da recht gut. Ich habe das schon einmal ausprobiert, aber dummerweise nicht im Detail dokumentiert. :(

Den DNS-Server kann man durch BIND9 ersetzen. Bei mir läuft momentan ein BIND9 als Secondary DNS, der automatisch vom Mac Server repliziert, was völlig geräuschlos funktioniert.

Für den LDAP verwende ich momentan das Docker-Image osixia/openldap, der BIND9 läuft momentan nativ. Vermutlich werde ich letztlich beide mit Ansible nativ installieren und konfigurieren, aber das weiß ich noch nicht sicher.

Die anderen Dienste der Server-App (Mail, Websites, FTP) sind sicherlich relativ einfach auf Linux zu bekommen. Hoffe ich.
 
  • Like
Reaktionen: Wuchtbrumme

Marcel Bresink

Hadelner Sommerprinz
Registriert
28.05.04
Beiträge
8.560
Man darf nur nicht die Funktion "immer dieselbe IP-Adresse" der Fritzbox verwenden, da diese nicht zuverlässig ist.
Die ist eigentlich absolut zuverlässig. Man darf nur auf Apple-Geräten nicht die Funktion "private Adresse" aktivieren.

Die LDAP-Konfiguration des Apple OpenDirectory kann man theoretisch in ldif-Dateien exportieren und in einen OpenLDAP importieren.
Nicht wirklich, denn wie oben geschrieben sind die Datenbankschemata nicht kompatibel. Hinzu kommt, dass Apple für die Beschreibung des Schemas klassische Textdateien verwendet, während moderne Linux-Implementationen das üblicherweise in ihrer LDAP-Metadatenbank speichern.

Man müsste also zusätzlich auch das Apple-Open-Directory-Schema in LDIF übersetzen und das vor der Übertragung der eigentlichen Nutzdaten in die Metadatenbank des OpenLDAP-Servers migrieren. Und wie gesagt gibt es weitere Detailprobleme bei der Verschlüsselung der Benutzerkennworte.
 
  • Like
Reaktionen: doc_holleday

Ijon Tichy

Clairgeau
Registriert
21.11.06
Beiträge
3.689
Die ist eigentlich absolut zuverlässig. Man darf nur auf Apple-Geräten nicht die Funktion "private Adresse" aktivieren.
Nun ja. Wenn die korrekte Funktion des DHCP-Servers davon abhängt, ob die Client-Konfigurationen seinen Erwartungen entsprechen, das bezeichne ich das eben nicht als zuverlässig. Was noch schwerer wiegt, ist aber, wie ich feststellen musste, dass die IP-Zuweisung auch nicht mehr wie zuvor funktioniert, wenn man die Fritzbox mal zurücksetzen oder auf eine neue Fritzbox migrieren muss. Mir war das jedenfalls zu fehleranfällig.

Nicht wirklich, denn wie oben geschrieben sind die Datenbankschemata nicht kompatibel. Hinzu kommt, dass Apple für die Beschreibung des Schemas klassische Textdateien verwendet, während moderne Linux-Implementationen das üblicherweise in ihrer LDAP-Metadatenbank speichern.
Ich mag dich hier völlig falsch verstehen, aber wie das Schema intern abgespeichert wird, ist doch dem LDAP-Client egal?!

Man müsste also zusätzlich auch das Apple-Open-Directory-Schema in LDIF übersetzen und das vor der Übertragung der eigentlichen Nutzdaten in die Metadatenbank des OpenLDAP-Servers migrieren.
Ja, das muss man natürlich. Mit dem o.g. Apache Directory Studio (und manchen anderen LDAP-Tools auch) kann man ein Schema Projekt direkt vom Open Directory erstellen und exportiert das dann für OpenLDAP. Das geht, ist allerdings etwas verzwickt, weil in der Schema-Definition ein paar Einträge ausgetauscht werden müssen. Ich habe das mit Versuch und Irrtum probiert (Import-Versuch, Problem beheben, nächster Import-Versuch etc.). Also keine Sache von fünf Minuten.

Ich habe für meine Versuche diese (grobe) Anleitung verwendet: Building your own OpenDirectory server on Linux

Und wie gesagt gibt es weitere Detailprobleme bei der Verschlüsselung der Benutzerkennworte.
Ja, das ist das größte Problem. Ich habe leider keine Ahnung wie das mit dem Kerberosdienst funktioniert. Es gibt zwar andeutungsweise Lösungen (hier hatte ich was gefunden: Migrate Mac OS X 10.6 Open Directory to an Unix OpenLDAP (including passwords!)), aber ich würde die Passwörter wahrscheinlich nicht mitnehmen und im neuen LDAP das Standardverfahren mit den Passwort-Hashes verwenden. Allerdings brauche ich die auch nur für die Authentifzierung an diversen internen Diensten. Die Macs authentifzieren sich bei uns nicht gegen das Open Directory, und das brauchen wir auch gar nicht.

Wenn ich den nächsten Versuch wage, werde ich das ganze jedenfalls Schritt für Schritt dokumentieren.
 

Marcel Bresink

Hadelner Sommerprinz
Registriert
28.05.04
Beiträge
8.560
Wenn die korrekte Funktion des DHCP-Servers davon abhängt, ob die Client-Konfigurationen seinen Erwartungen entsprechen, das bezeichne ich das eben nicht als zuverlässig.
Der DHCP-Server funktioniert absolut zuverlässig. "Private Adresse" bedeutet ja, dass das Apple-Gerät mit Absicht versucht, jeden DHCP-Server zu sabotieren, indem es sich immer als neues Gerät ausgibt.
 

Ijon Tichy

Clairgeau
Registriert
21.11.06
Beiträge
3.689
Der DHCP-Server funktioniert absolut zuverlässig. "Private Adresse" bedeutet ja, dass das Apple-Gerät mit Absicht versucht, jeden DHCP-Server zu sabotieren, indem es sich immer als neues Gerät ausgibt.
Das stimmt natürlich. Ich sage ja auch nicht, dass der DHCP-Server nicht korrekt funktioniert, aber das gewünschte Ergebnis tritt unter bestimmten Umständen eben nicht zuverlässig ein, weswegen ich die andere Lösung bevorzuge, bei der das der Fall ist.
 

hosja

Mutterapfel
Registriert
23.03.07
Beiträge
5.252
Ich wage mich mal vor und behaupte das kann gar nie funktionieren. Weil im DHCP Discover halt nicht viel außer der Mac Adresse drin steht.
 

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.477
mir ist gerade noch eine Idee gekommen - Samba 4 als Active Directory. In einem Artikel stand, dass das mittlerweile zuverlässig funktioniert und einfach eingerichtet ist. Ich würde es eigentlich nur zur Benutzerauthentifikation benutzen wollen.
Hat das schon jemand gemacht? Erfahrungen?
Angeschlossen QNAP-NAS, Macs, Windows-Rechner.

Kann man sagen, was man bevorzugen sollte?
Ehrlich gesagt, keine Erfahrungen, aber ich wüsste nichts im OD, was ich wirklich bräuchte (oder man hat es mir noch nicht erklärt ;) ) - und dass Samba Opensource ist macht es mir deutlich sympathischer. Endlich mal etwas, wo ich mich nicht in eine Abhängigkeit von einer Firma reinmanövriere. Kann immer noch schiefgehen, aber wenn ich schon die ganzen OD-Schemata mit unterschiedlichen Versionen berücksichtige... es soll einfach laufen.

Hmm, eines fällt mir noch ein: Die lokalen Benutzeraccounts auf den Macs sind schon vom OD-authentifiziert, später dann sogar für FileVault freigeschaltet. Die Accounts verschwinden nicht vom Mac, wenn ich den Netzwerkaccountserver lösche bzw. ändere?
 
Zuletzt bearbeitet:

Scotch

Bittenfelder Apfel
Registriert
02.12.08
Beiträge
8.036
Das tut's, aber dann sind wir recht weit weg von
würde gerne Dienste migrieren

Wenn größere Änderungen an deiner Systemarchitektur eine Option sind, wäre es vielleicht sinnvoll, deine Anforderungen zusammenzustellen - dann gibt's u.U. noch ganz andere (einfachere) Lösungen.
 
  • Like
Reaktionen: Wuchtbrumme

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.477
Das tut's, aber dann sind wir recht weit weg von


Wenn größere Änderungen an deiner Systemarchitektur eine Option sind, wäre es vielleicht sinnvoll, deine Anforderungen zusammenzustellen - dann gibt's u.U. noch ganz andere (einfachere) Lösungen.

verflixt, aber doch jetzt nicht mehr, nachdem 95% gemacht sind
 

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.477
Der Weg ist das Ziel 😜
ja, aber echt. Da habe ich ein schönes Bastelprojekt gehabt. Mit der Anzahl der virtuellen Maschinen bin ich nicht ganz einverstanden, aber der Proxmox-Host popelt trotzdem nur in der Nase (wie nicht anders zu erwarten war) und der große Vorteil: die Dinger sind jeweils nicht voneinander abhängig (also vom laufenden System und den Paketen, meine ich). Schon oft genug gehabt, dass X Y erfordert, was dann Z crasht und auch keinen Rückweg offenlässt.