Inhaltsverzeichnis
Mit migRaven können Sie die Berechtigungen von Novell-Servern migrieren. Das betrifft sowohl Novell Netware als auch Novell OES. Die Rechte der Novell-Server werden ausgelesen und müssen in NTFS-Rechte umgewandelt werden. Dieser Ist-Zustand wird in migRaven eingelesen. migRaven migriert die Berechtigungen und erstellt Berechtigungs- und Listgruppen. Abschließend erstellt migRaven die Berechtigungs- und Listgruppen im AD und und schreibt den neuen Verzeichnisbaum samt neuer Berechtigungen. Alle Arbeitsschritte der Novell-Migration werden hier Schritt für Schritt beschrieben.
0. Voraussetzungen
0.1. LDAP-Version 3
Um die Mitglieder der in der Trustee-Liste genannten Gruppen zu ermitteln stellt migRaven eine LDAP-Verbindung zu Ihrem Novell-Server her. Voraussetzung ist, dass der Novell-Server mit der LDAP-Version 3 arbeitet. Diese wurde 1998 eingeführt. migRaven benötigt die für diese Version festgelegten Attribute, Schemen und Standards.
0.2. AD-Nutzer
Die Nutzer, die aus eDir übersetzt werden sollen, müssen im Windows AD vorhanden sein.
1. Berechtigungen vom Novell-Server ermitteln
1.1. Quelle: Novell Open Enterprise Server
1.1.1. .trustee_database.xml mit den Berechtigungsinformationen
Die Informationen über die explizit vergebenen Berechtigungen in Novell Netware Filesystemen werden in der „.trustee_database.xml“ abgespeichert. Für jedes Volume gibt es eine Datei mit diesem Namen. Diese Dateien finden Sie im Verzeichnis „/MEDIA/NSS/volume_name/._NETWARE/“ (volume_name muss durch den Namen des Volumens ersetzt werden). Die fürs Volume SYS finden Sie davon abweichend unter „/USR/NOVELL/SYS/._NETWARE“. In diesen Dateien sind die Verzeichnisse, die Berechtigungen und die Berechtigten enthalten.
1.1.2. Umwandeln der XML-Dateien ins CSV-Format
Für die weitere Bearbeitung muss der Inhalt der XML-Dateien ins CSV-Format umgewandelt werden. Wir haben ein Powershell-Script entwickelt, das diese Konvertierung vornimmt. Mit unserem Script werden alle XML-Dateien, die sich im selben Verzeichnis wie das Script selber befinden, in leicht lesbare csv-Dateien konvertiert. Neben der Separierung der Verzeichnis- und Berechtigungsinformationen werden gleichzeitig die Account-Informationen ausgelesen und in Microsoft konforme Form gebracht. Der entryDN (Distinguished Name – eindeutige Bezeichnung für X.500-Verzeichnisobjekte) aus der .trustee_database.xml wird in einen sAMAccountNamen (Anmeldenamen) umgewandelt. Über den CN (common name) des Novell-entryDN und dem Windows-sAMAccountNamen kann später die Verbindung hergestellt werden zwischen Novell- und Windows-Account. D.h. beide Namen müssen gleich sein. Ist das nicht der Fall, kann mit dem User-Mapping ein anderes AD-Feld verwendet werden, in das zuvor der Name eingetragen werden muss, der dem CN des Novell-entryDN entspricht.
Beispielformat der trustee xml
<trustee path=“……….“>
<name>…………………</name>
<rights>…………………</rights>
<object_guid>………….</object_guid>
</trustee>
Novell hat diese Struktur in anderen OES-Versionen geändert. Auch da können wir helfen. Sprechen Sie uns an.
Das Script finden Sie hier:
migRaven braucht eine Excel-Datei mit den Rechten
1.1.4. Bearbeitung der Daten
Tabellenaufbau
Die CSV-Datei wird in eine Tabellenkalkulation geladen und ist so für die Sichtung und Bewertung, die Bereinigung und Optimierung einfach zu nutzen.
Tiefe | Pfad | Recht | trustee |
1 | \Buchhaltung1 | RWCEMF | .Buchhaltung_G.aikux-novell |
1 | \Buchhaltung2 | RWCEMF | .Rolle_2.aikux-novell |
1 | \d.menerer | RWCEMFA | .dm.Einfach.aikux-novell |
Tabelle 1: Tabelle mit Novell-Rechten
Um die für migRaven notwendige Form zu erhalten, müssen hier die Novell- in NTFS-Rechte umgewandelt werden. Mehr dazu im Abschnitt 1.3.
Bild 2: Konvertierung der Tabelle mit den Novell OES-Rechten in das für migRaven notwendige Format mit NTFS-Rechten
1.3. Berechtigungsmapping definieren: Novell-Rechte in MS-Rechte umsetzen
Übertragen der Novell-Rechte in die Microsoft Notation
Die Rechte im Novell System und somit auch in der Trustee-Datei werden auf der Basis der Unix Notation geschrieben. Diese Notation kann nicht direkt nach Microsoft übernommen werden.
Es müssen in der Tabelle die Novell-Rechte durch Windows-Rechte ersetzt werden.
Es kann immer wieder sein, dass man auch unter Novell nicht mit standardisierten Rechten gearbeitet hat und deswegen in der Tabelle die unterschiedlichsten Rechte findet.
Sie müssen sich letztlich für eins der folgenden fünf Windows-Rechte entscheiden. Tragen Sie dazu die Kürzel für die NTFS-Rechte anstelle der Novell-Rechte in die entsprechende Spalte ein.
Wir empfehlen folgende Übersetzung von den Rechten
NTFS-Rechte Novell-Rechte re statt RF in Novell, mx statt RWF in Novell, mx statt RWCEMF in Novell, mx statt RWCEMF in Novell, mx statt RWCEMFA in Novell
Tabelle 2: Novell-Rechte in NTFS-Rechte konvertieren
Die Novell-Rechte müssen in dieser Tabelle durch NTFS-Rechte ersetzt werden. Das macht sich am besten in einer Tabellenkalkulation
Die Werte in der „Rechte“- Spalte müssen durch Windows NTFS-Rechte ersetzt werden.
Tiefe | Pfad | NTFS-Recht | Trustee |
1 | \Buchhaltung1 | MX | .Buchhaltung_G.aikux-novell |
1 | \Buchhaltung2 | MX | .Rolle_2.aikux-novell |
1 | \d.menerer | F | .dm.Einfach.aikux-novell |
Tabelle 3: Tabellenaufbau für migRaven
2. Voraussetzungen für migRaven schaffen
2.1. Accounts auf dem Windows-Server anlegen
Im Windows AD müssen die Novell Microfocus USER Accounts vorhanden sein. Gruppen spielen keine Rolle, weil diese immer neu generiert werden.
Es müssen alle Benutzer vorhanden sein, auch die, die indirekt in der Trustee-Datei genannten Gruppen vorkommen.
Falls der Novell CN und der AD SAM nicht identisch sind, unterstützt Sie die Funktion Novell User-Mapping. Dazu wird ein anderes Nutzer-Attribut im AD genutzt, um den abweichenden Novell-Namen für das Mapping zu hinterlegen.
2.2. xlsx-Tabelle in migRaven laden
Nach der Bereinigung der Tabelle wird sie als xlsx-Datei gespeichert und direkt in migRaven importiert.
Bild 3: Mit „Datei öffnen“ kann die erstellt xlsx-Datei mit den NTFS-Rechten eingelesen werden.
2.3. LDAP-Verbindungsdaten zum Novell-Server
Über eine LDAP-Schnittstelle wird die Verbindung zum Novell eDirectory hergestellt. Darüber kann migRaven die Container-Mitglieder ermitteln. Dazu müssen in der Gruppenkonfiguration beim Reiter „Novell“ die Parameter für den Verbindungsaufbau zum Novell-Server angegeben werden.
Vier Angaben sind erforderlich:
– die Adresse des Novell-Servers (IP-Adresse oder Server-Name), z.B. 192.168.0.44
– der LDAP-Port, nur 389 wird unterstützt
– der Name des Admins mit vollqualifizierten Namen (distinguished name, DN), z.B. CN=admin,OU=Berlin,O=aikux.
– das Passwort dieses Admins wird beim Projekt-Start abgefragt.
Der sich hier anmeldende Admin muss in der gleichen Organisation (o=firma) sein wie die Gruppen und Nutzer, die aufzulösen sind.
Bild 4: Novell-Server- und Novell-Admin-Name können in der Konfiguration von migRaven gespeichert werden, rechts der Eintrag für das User-Mapping
Über diese Verbindung stellt migRaven eine LDAP-Verbindung zum Novell-Server her und greift auf sein eDirectory zu. Für die in der Trustee-Datei angegebenen Gruppen und Container holt migRaven aus dem eDirectory des Novell-Servers die Mitglieder-Namen. Dann prüft migRaven, ob die angegebenen Benutzer und die aufgelösten Gruppen-Mitglieder im Active Directory des Windows-Servers vorhanden sind. Wenn nicht, wird das mit einer Fehlermeldung in der Status-Spalte quittiert.
Sind die Nutzernamen in Novell und im Windows-AD nicht identisch hilft das User-Mapping. Dazu finden wir in der Konfiguration (Bild 4, rechter Teil) das Feld „zugeordnetes Attribut des AD“. Standardmäßig gleicht migRaven den Novell-Namen mit dem sAMAccountNamen des Benutzers im AD ab. Bei unterschiedlichen Namen kann hier ein alternatives Attribut ausgewählt werden, in dem migRaven den Novell-Namen wiederfindet. Beachten Sie zu Voraussetzungen und Funktionsweise die User-Mapping-Dokumentation.
3. Migration mit migRaven beginnen
Ablauf ist wie folgt:
- Einstellungen zentral hinterlegen (3.1)
- Neues Migrationsprojekt in migRaven erzeugen (3.2)
- Zwischenergebnis sichten und anpassen(3.3)
- Berechtigungsgruppen im AD erzeugen (4.1)
- Zielverzeichnisse erstellen und Berechtigungsgruppen darauf berechtigen (4.2)
- Daten in die neue Struktur kopieren (4.3)
3.1. migRaven für die Migration konfigurieren
migRaven muss immer als Administrator aufgerufen werden.
Gruppenkonfiguration
Bei der Erstellung neuer Berechtigungsstrukturen entsprechend den Best Practice-Empfehlungen von Microsoft legt migRaven Berechtigungsgruppen an. Für diese müssen wir hier den Gruppen-Typ, ihren Ablageort im AD und die Namensgestaltung festlegen. Sollen diese Gruppen später von 8MAN genutzt werden, müssen wir hier schon beachten, welche Forderungen und Möglichkeiten 8MAN zur Namensgestaltung seiner Berechtigungsgruppen bietet. Eine detaillierte Anleitung stellen wir Ihnen mit der Dokumentation „Zusammenarbeit von migRaven und 8MAN“ zu Verfügung.
Als „Typ“ für die Berechtigungsgruppen muss eine der drei Gruppen-Typen ausgewählt werden. Wir empfehlen Universelle Gruppen, da sie nur 8 Byte anstelle von 40 Byte bei globalen Gruppen zum Kerberos-Token beitragen. Ihr Nachteil ist, dass sie keine lokalen Gruppen aufnehmen können.
Diese Berechtigungsgruppen werden in einer OU im AD abgelegt. Diese OU legen wir hier fest:
„In der OU (kanonischer Name):“ test.local\novell (Beispiel). migRaven legt darunter noch eine OU mit Ihrem Server-Namen an. In dieser landen die erstellten Gruppen.
Unter dem Reiter „Name“ gestalten wir den Gruppennamen.
Der Gruppenname wird aus mehreren durch Trennzeichen verbundene Elemente zusammengesetzt.
- Präfix: Das Präfix ist frei wählbar, z.B. „8M“.
- Gruppentyp: Für den Gruppentyp sind u, dl und g möglich. Da wir universelle Gruppen favorisieren erscheint „u“.
- Verzeichnis: Es folgt das Verzeichnis, bei migRaven ist es obligatorisch. Es kann durch Freigabe- und Server-Namen ergänzt werden.
- Zugriffsrechte: Als Suffix sind Kurzzeichen für die Zugriffsrechte vorgesehen:
- li – für Listrechte
- re – für read/execute
- w – für read/write
- m – für modify
- mx – für modify plus (wie modify, verhindert jedoch das Löschen, Verschieben und Umbenennen des Berechtigungsendpunktes)
- f – für full control.Bei migRaven sind diese Kurzbezeichnungen seit der Version 2.1.1020. veränderbar.
- Trennzeichen: Als Trennzeichen sind der Unterstrich, der Bindestrich und das Leerzeichen möglich.
In der Vorschau für die Gruppennamen wird uns angezeigt: 8M_u_<Verzeichnisse>_<Suffix>
3.2. Neues Projekt in migRaven für die Migration anlegen
Nachdem wir die Voraussetzungen geschaffen haben, rufen wir die Novell Migration auf.
Bild 5: Novell-Migration starten
Sind diese Parameter vorhanden, geht es weiter.
Beim Projekt-Namen kann beliebiger Text eintragen werden, z.B. Novell1.
Beim Freigabepfad wird die Ziel-Adresse (Windows-Server und Ziel-Freigabe) angegeben, z.B. \\Server\share\Novell1.
-> Der Freigabepfad ist wichtig, weil auf dieser Basis die zukünftigen Berechtigungsgruppen benannt werden.
Dann können wir die Migration starten. Es müssen das Admin-Passwort eingetragen und die Verbindung geprüft werden. Erst dann gibt migRaven den Start-Button frei.
Die in der Tabellenkalkulation vorbereiteten Daten werden im nächsten Schritt importiert. Dazu wird die bearbeitete xlsx-Datei geladen.
Beim Validieren stellt migRaven eine Verbindung zum Novell-Server her.
Kann keine Verbindung zum Novell-Server hergestellt werden, kontrollieren Sie bitte unter dem Reiter „Novell“ die Richtigkeit der Parameter für den Novell-Server.
Konnte die Verbindung hergestellt werden, liefert die Spalte „Status“ Hinweise zu nicht gefundenen Benutzern und Mitgliedern.
Fehler-Ursache kann sein, dass die genannten Benutzer oder Objekte nicht im aktuellen Windows-AD gefunden wurden.
Fehlende Accounts müssen Sie im AD anlegen und danach in migRaven das AD neu einlesen. Dann können Sie die Novell-Migration wiederholen.
3.3. Neue Gruppen/Berechtigungen von migRaven bilden lassen
Speichern
Auf der Grundlage der gelesenen und ggfs. korrigierten Berechtigungen erstellt migRaven neue Berechtigungsgruppen entsprechend den Best Practice-Empfehlungen von Microsoft. Diese neuen Berechtigungsstrukturen können Sie sich in einem visualisierten Verzeichnisbaum detailliert anzeigen lassen.
Realisiert wird die neue Berechtigungsstruktur erst durch die nächsten beiden Arbeitsschritte. D.h. bis jetzt wurde nichts in Ihr System geschrieben.
Bild 6: Speichern der neuen Berechtigungen in der Datenbank
3.4. Kontrolle der zukünftigen Rechte im View Sollzustand
Danach verzweigt migRaven in die visuelle Darstellung. Hier können Sie die geplanten Berechtigungen nochmal im Detail kontrollieren.
Bild 7: Sollzustand mit den neuen List- und Berechtigungsgruppen
Wenn alles stimmt, dann geht es mit 9. weiter…
4. Zielumgebung schreiben
4.1. Im AD neue Gruppen erstellen und verschachteln – Deploy Groups
4.2. Ziel-Verzeichnis auf dem Windows-Server erstellen – Deploy ACL
4.3. Ergebniskontrolle
Kontrolle, ob die neu erzeugten Berechtigungen im Zielverzeichnis den Erwartungen entsprechen
Nach dem erfolgreichen Erzeugen des Zielverzeichnisses durch migRaven sollte das Ergebnis überprüft werden. Das ist am einfachsten möglich, indem man ein neues Projekt anlegt und den neu erstellten Verzeichnisbaum mit den Berechtigungen einliest.
Bitte kontrollieren Sie alle neu erzeugten Berechtigungen, ob sie Ihren Erwartungen entsprechen. Erst danach sollte die Replikation der Daten angestoßen werden.
4.4. Alte Daten in den neuen Verzeichnisbaum replizieren – Deploy data
Wenn dieses Zielverzeichnis Ihre Daten aufnehmen und als neuer Share fungieren soll, dann müssen nun die Daten in den neuen Bereich repliziert werden. Das kann nicht direkt über migRaven erfolgen.
Die Replikation kann auf verschiedenen Wegen erfolgen. Robocopy von Microsoft bietet sich bei geringeren Datenmengen an.
Wenn der Verzeichnisbaum aber sehr viele Dateien enthielt, haben wir sehr gute Erfahrungen mit PeerSync gemacht. Das ist ein Tool, dass eine echte Realtime bytelevel-Replikation ermöglicht, ohne dass immer wieder Source und Target abgeglichen werden müssen. Ein weiterer Vorzug PeerSyncs ist die Unterstützung für NetApp.
Fertig: Verzeichnisse können nun von den Usern genutzt werden.
Alt:
ARCHIV: Quelle: Novell Netware
1.2.1. Berechtigungen ausgeben mit Trustee.nlm
Novell Netware hatte noch keine trustee-database.xml. Die Trustees kann man aber gut mit dem Konsolen-Befehl TRUSTEE.NLM auslesen.
Ein Beispiel für die Syntax ist:
TRUSTEE /ET /D SAVE vol1:\ sys:\trustee-vol1.csv
/ET für Berechtigungen, ohne Eigentümer
/D für Verzeichnisse, ohne Dateien
SAVE vol1:\ Berechtigungen und Verzeichnisse des Volumes „vol1:\“ sichern, SAVE ALL für alle Volumes
sys:\trustee-vol1.csv ist die Ausgabedatei
Enthält die Ausgabedatei auch andere als Trustee-Informationen kann mit
FIND „TRUSTEE“ trustee.csv > only_trustee.csv
eine auf die TRUSTEEs reduzierte Datei erzeugt werden.
1.2.2. Umwandlung von ASCII in ANSI
Ergebnis der Trustee.nlm ist eine CSV-Datei. Sie wird im ASCII-Format erzeugt. Wenn Einträge Umlaute oder Sonderzeichen enthalten, stellen diese ein Problem dar. Die Datei muss ins ANSI-Format umgewandelt werden.
Dies ist z.B. auf folgendem Weg mit Microsoft Excel möglich:
- Microsoft Excel aufrufen
- den Reiter „Daten“ auswählen
- in der Rubrik „Externe Daten abrufen“ „Aus Text“ wählen und die Ausgabe-CSV-Datei importieren
- mit den Parametern:
- Dateityp: Getrennt
- Dateiursprung: MS-DOS (PC-8) !!!
- Trennzeichen: Komma
- und Fertig stellen.
Jetzt müssten in dieser Datei alle Umlaute und Sonderzeichen richtig dargestellt werden.
Haben Sie mehreren Dateien empfiehlt es sich, die Konvertierung von ASCII nach ANSI zu automatisieren.
Mit dem PC-Welt-Script Ansi2Ascii.vbs können mehrere Dateien schnell von ASCII nach ANSI konvertiert werden. Voraussetzung ist, dass die Dateien den Dateityp „txt“ haben. Die konvertieren Dateien finden Sie im Unterverzeichnis „ansi“.
Damit Excel das Komma als Trennzeichen erkennt, wird an den Anfang jeder dieser Dateien der Befehl „sep=,“ eingetragen (ohne Anführungszeichen).
Abschließend werden die Dateitypen von „ans“ in „csv“ geändert.
Jetzt können die csv-Dateien durch Doppelklick mit Excel geöffnet werden.
1.2.3. Bearbeitung der Daten
Die Ausgabe-Datei enthält fünf Spalten, die für migRaven etwas bearbeitet werden müssen.
- 1.Spalte: Es werden nur die Zeilen mit „TRUSTEE“ benötigt. Alle anderen Zeilen können entfernt werden.
Schließlich kann die 1.Spalte geleert werden, sollte aber erhalten bleiben, für die „Tiefe“. migRaven berecht sie selber. Möchten Sie hier die Verzeichnis-Tiefe sehen, können Sie sie mit folgendem Excel-Befehl* berechnen lassen:=LÄNGE(B1)-LÄNGE(WECHSELN(B1;"\";))
B1 ist die Zelle mit dem Pfadname. Sie muss ggfs. angepasst werden.
- 2.Pfad: Das Volume vor dem Verzeichnis wird entfernt, das Verzeichnis bleibt erhalten. Z.B. mit dem Microsoft Excel-Befehl*
=WECHSELN(B1;"VOL1:";"";1)
B1 wie oben. VOL1 ist der zu entfernende Volume-Name. Er muss angepasst werden.
- 3.LONG: Diese Spalte kann entfernt werden.
- 4.Trustee: An den Anfang aller Einträge in dieser Spalte muss ein Punkt gesetzt werden, wie .Meier.EDV.KMF. Z.B. mit dem Excel-Befehl*
=VERKETTEN(".";D1)
D1 ist die Zelle mit den Trustees, den Berechtigten.
- 5. Rechte: Die Spalte enthält die Novell-Rechte. Diese müssen entsprechend der Tabelle 2 (siehe Punkt 1.3.) in NTFS-Rechte umgewandelt werden. Die Spalte mit den NTFS-Rechten muss dann vor die Trustee-Spalte.
*Für die Berechnungen sind leere Spalten zu nutzen bzw. einzufügen. Die Ergebnisse der Berechnungen sind in die Zielspalte (das kann auch die Spalte mit den Formeln sein) mit der Option „nur Werte“ einzufügen.
Tabellenaufbau
Der Tabellenaufbau für migRaven muss der Tabelle 3 (siehe Punkt 1.3.) entsprechen:
Bild 1: Konvertierung der Tabelle mit den Netware-Rechten in das für migRaven notwendige Format mit NTFS-Rechten