Brauche Tipps bzgl. Server + OPSI Einrchtung

Da es nach etlichen Versuchen, die in den Anleitungen stehen und die nicht sehr zielführend waren, hier meine „Anleitung“ wie man zu einer hoffentlich funktionierenden Konfiguration kommt (sorry ist etwas länglich)

  1. lmn7-opnsense xva importieren
  2. lmn7-opnsense starten und root anmelden (root/Muster!)
  3. updates installieren und netzwerk konfigurieren
  4. lmn7-server xva importieren
  5. lmn7-server starten
  6. Anmelden über ssh (root/Muster!)
  7. wget -O - https://archive.linuxmuster.net/archive.linuxmuster.net.key | apt-key add -
  8. apt-get update
  9. reboot (um Sperre /var/lib/dpkg/lock-frontend loszuwerden)
  10. apt-get dist-upgrade
  11. reboot
  12. lmn7-opsi starten
  13. Anmelden über ssh (root/Muster!)
  14. wget -O - https://archive.linuxmuster.net/archive.linuxmuster.net.key | apt-key add -
  15. apt-key remove D1F933E6D8361F81
  16. wget -O - http://download.opensuse.org/repositories/home:/uibmz:/opsi:/4.1:/stable/xUbuntu_18.04/Release.key | apt-key add -
  17. reboot (um Sperre /var/lib/dpkg/lock-frontend loszuwerden)
  18. apt-get dist-upgrade
  19. Daten der Schule eingeben auf Anfrage
  20. reboot
  21. wenn lmn7-opsi wieder oben ist, mit ssh auf lmn7-server anmelden
  22. linuxmuste-setup ohne parameter starten
log:
#### Writing input to setup ini file ........................... Success! ####
#### Setting root password ..................................... Success! ####
------------------------------------------------------------------------------
#### templates                                                            ####
#### Reading setup data ........................................ Success! ####
#### Processing config templates:                                         ####
#### * subnets.csv ............................................. Success! ####
#### * dhcpd.conf .............................................. Success! ####
#### * devices.csv ............................................. Success! ####
#### * dhcpd.devices.conf ...................................... Success! ####
#### * timesyncd.conf .......................................... Success! ####
#### * linux-login.script ...................................... Success! ####
#### * ntp.conf ................................................ Success! ####
#### * smb.conf.admin .......................................... Success! ####
#### * dhcpd.subnets.conf ...................................... Success! ####
#### * rsyncd.conf ............................................. Success! ####
#### * nsswitch.conf ........................................... Success! ####
#### * smb.conf ................................................ Success! ####
#### * cupsd.conf .............................................. Success! ####
#### * dhcpd.custom.conf ....................................... Success! ####
#### Network setup ............................................. Success! ####
#### Adjusting server time .......................... 2020-01-06 10:33:03 ####
------------------------------------------------------------------------------
#### fstab                                                                ####
#### Modifying mount options for / ............................. Success! ####
#### Remounting / .............................................. Success! ####
------------------------------------------------------------------------------
#### ssl                                                                  ####
#### Reading setup data ........................................ Success! ####
#### Creating private CA key & certificate ..................... Success! ####
#### Creating private gsn1 key & certificate ....................Success! ####
#### Creating private firewall key & certificate ................Success! ####
#### Creating private mail key & certificate ....................Success! ####
#### Creating private docker key & certificate ..................Success! ####
#### Creating private opsi key & certificate ....................Success! ####
#### Ensure key and certificate permissions .................... Success! ####
------------------------------------------------------------------------------
#### ssh                                                                  ####
#### Reading setup data ........................................ Success! ####
#### Creating ssh keys:                                                   ####
#### * dsa host key ............................................ Success! ####
#### * dsa root key ............................................ Success! ####
#### * ecdsa host key .......................................... Success! ####
#### * ecdsa root key .......................................... Success! ####
#### * ed25519 host key ........................................ Success! ####
#### * ed25519 root key ........................................ Success! ####
#### * rsa host key ............................................ Success! ####
#### * rsa root key ............................................ Success! ####
#### Restarting ssh service .................................... Success! ####
#### * Processing ssh link to host 10.0.0.2 on port 22:                   ####
####   > Testing ssh connection ................................... Open! ####
####   > Establishing ssh connection ........................... Success! ####
####   > Deploying public key .................................. Success! ####
####   > Deploying ssl certs & key ............................. Success! ####
####   > Preparing opsi ........................................ Success! ####
------------------------------------------------------------------------------
#### samba-provisioning                                                   ####
#### Stopping samba services ................................... Success! ####
#### Reading setup data ........................................ Success! ####
#### Generating AD admin password .............................. Success! ####
#### Provisioning samba ........................................ Success! ####
#### Provisioning krb5 ......................................... Success! ####
#### Enabling samba services ................................... Success! ####
#### Backing up samba .......................................... Success! ####
#### Provisioning sophomorix samba schema ...................... Success! ####
#### Fixing resolv.conf ........................................ Success! ####
#### Exchanging smb.conf ....................................... Success! ####
#### Starting samba ad dc service .............................. Success! ####
------------------------------------------------------------------------------
#### samba-users                                                          ####
#### Reading setup data ........................................ Success! ####
#### Calculating random passwords .............................. Success! ####
#### Backing up samba .......................................... Success! ####
#### Creating share for default-school.......................... Success! ####
#### Creating samba account for global-admin ................... Success! ####
#### Creating samba account for global-binduser ................ Success! ####
#### No expiry for administrative passwords .................... Success! ####
#### Creating ou for default-school............................. Success! ####
#### Add firewall as dns forwarder ............................. Success! ####
------------------------------------------------------------------------------
#### add-server                                                           ####
#### Reading setup data ........................................ Success! ####
#### Creating device entries for:                                         ####
#### * gsn1 .................................. 10.0.0.1 b2:40:0b:96:89:ed ####
#### * firewall ............................ 10.0.0.254 2E:F1:CC:2D:8F:2D ####
#### * opsi .................................. 10.0.0.2 42:E6:9D:9F:CF:63 ####
------------------------------------------------------------------------------
#### firewall                                                             ####
#### Reading setup data ........................................ Success! ####
#### Calculating radius secret ................................. Success! ####
#### Downloading firewall configuration:                                  ####
#### * Download finished successfully.                                    ####
#### * Backing up .............................................. Success! ####
#### * Reading current config .................................. Success! ####
#### * Reading certificates & ssh key .......................... Success! ####
#### * Creating xml configuration file ......................... Success! ####
#### * Saving api credentials .................................. Success! ####
#### Uploading firewall configuration:                                    ####
#### * Upload finished successfully.                                      ####
#### Executing ssh command on 10.0.0.254:                                 ####
#### * -> "/bin/sh /tmp/fwsetup.sh"                                       ####
#### * SSH connection successfully established.                           ####
#### * Execution finished successfully.                                   ####
------------------------------------------------------------------------------
#### linbo                                                                ####
#### Reading setup data ........................................ Success! ####
#### Creating rsync secrets file ............................... Success! ####
#### Providing server ip to linbo start.conf files ............. Success! ####
#### Activating bittorrent tracker ............................. Success! ####
#### Activating linbo-bittorrent service ....................... Success! ####
#### Reconfiguring linbo (may take a while)
------------------------------------------------------------------------------
#### opsi                                                                 ####
#### Reading setup data ........................................ Success! ####
#### * Creating helper files ................................... Success! ####
#### * Establishing ssh connection to opsiserver ............... Success! ####
#### * Uploading files to opsiserver ........................... Success! ####
#### * Starting opsiserver setup ............................... Success! ####
------------------------------------------------------------------------------
#### mail                                                                 ####
#### Reading setup data ........................................ Success! ####
Bundle certificate for webui
Run Sophomorix-UI to add permissions
* WebUI Setup Success!
------------------------------------------------------------------------------
#### final                                                                ####
#### Disabling service iscsid .................................. Success! ####
#### Disabling service dropbear ................................ Success! ####
#### Disabling service lxcfs ................................... Success! ####
#### Starting device import .................................... Success! ####
#### Starting subnets import ................................... Success! ####
------------------------------------------------------------------------------
#### linuxmuster-setup finished at 2020-01-06 10:36:57                    ####
------------------------------------------------------------------------------
  1. reboot
  2. http://10.0.0.1 geht

Nun meine Frage: wie wird der Server und opsi weiter konfiguriert?
Der opsi-Rechner hat z.B. noch ein webinterface. Geht das alles über den lmn-server???

Danke im voraus
Eberhard

Hallo Eberhard,

Da es nach etlichen Versuchen, die in den Anleitungen stehen und die
nicht sehr zielführend waren, hier meine „Anleitung“ wie man zu einer
hoffentlich funktionierenden Konfiguration kommt (sorry ist etwas länglich)

Danke für die Anleitung: wir arbeiten noch daran, dass das EInrichten
„smoother“ wird.

  1. apt-get update
  2. reboot (um Sperre /var/lib/dpkg/lock-frontend loszuwerden)

da ist kein reboot nötig: es reicht, wenn man ein wenig wartet: ubuntu
sperrt apt direkt nach dem booten für ein weilchen, weil es automatisch
erstmal selbst nach updates sucht.
Nach ein paar Minuten geht es dann auch so.
(so ist meine Erfahrung).

Nun meine Frage: wie wird der Server und opsi weiter konfiguriert?
Der opsi-Rechner hat z.B. noch ein webinterface. Geht das alles über den
lmn-server???

die lmn besitzt zwei Arten der Softwareverteilung: eine bewährte (linbo)
und eine außerhalb der lmn auch bekannte (OPSI).
Diese beiden können Hand in Hand arbeiten.
Dabei verteilt linbo Fertige Images auf die Clients und dann kann man
mit OPSI einzelne Softwarepakete Rechner/Raum/Gruppenbezogen nach
ausrollen oder Updates verteilen.
Ich habe seit ein paar Jahren auch mit OPSI Erfahrung und setze es
deswegen nicht in meinen Einrichtungen ein: der Mehraufwand rechtfertigt
für mich nicht den dadurch erreichten Mehrwert (aktuellere Software auf
den Clients/mehr Flexibilität).
Die Software auf meinen Clients muss nicht Monatlich aktuell gehalten
werden: das gehört nicht zu meinem Sicherheitskonzept, welches: „sync
bei jedem boot“ ist. Das hat sich über die Jahre als das bessere Konzept
herausgestellt in Opposition zu „aktuelle Software und Client verrammeln“.
Die Flexibilität ist bei mir auch nicht von Vorteil: es verwirrt die
Leute ungemein, wenn sie an einen Rechner kommen, der andere
Softwareausstattung hat als andere Rechner: deswegen will ich ja immer
überall die gleiche Software installiert haben.

Natürlich kann das bei dir anders sein, was dann für OPSI spricht.

Ob ein Rechner in linbo, in OPSI oder in beidem ist, entscheidet die
letzte Spalte in der devices.list (siehe WebUI als global-admin → linbo).

Wird dort ein Rechner OPSI zugeordnet, dann wird er durch den Server per
ssh auf dem OPSI Server eingetragen und ist dann, wenn der OPSI Client
auf dem Client installiert ist, durch die WebOberfläche von OPSI mit
Software versorgt.

Das Betriebsystem selbst würde ich aber über linbo verteilen.

Ich hoffe, dass das deine Frage beantwortet.

Viele Grüße

Holger

Hi.
Ich habe mir OPSI auch mit installiert aber noch nicht besonders weit konfiguriert. Der erste Schritt ist allerdings dieser:
opsi-package-updater -vv update
Das bringt alle Pakete, die man per default per OPSI installieren kann, auf den aktuellen Stand.
Anschließend muss man einen Client in die devices.csv aufnehmen, so dass das System weiß, dass dieser Client von nun an per OPSI und nicht mehr per LINBO bestückt werden soll. Das geht einfach: In der devices.csv reicht es, einen Eintrag zu ändern: die letzte Ziffer muss 2 oder 3 lauten, damit das von OPSI übernommen wird; anschließend ein linuxmuster-import-devices durchführen.
[Eine Sache funktioniert imho übrigens nicht mehr so wie man es in der Doku vorfindet. Eigentlich sorgte unter v6.x der Eintrag „3“ in der alten workstations-Datei dafür, dass LINBO gar nicht mehr auftauchte. Jetzt ist es aber so, dass LINBO trotz OPSI kurz in Erscheinung tritt … ob und wie man das abschalten kann, weiß ich aber nicht…]

Der OPSI-Server ist im Servernetz erreichbar unter
https://<ip-des-opsi-servers-per-default-10.0.0.2>:4447 oder
https://ip-adresse:4447/configed — es wird java benötigt.

Wie es danach weiter geht, erfährst du am besten in der OPSI-Doku. Du musst auf dem Client, der per OPSI verwaltet werden soll, das entsprechende Tool installieren – ich finde den Einstieg in OPSI allerdings holprig und unübersichtlich … auch das Webinterface ist nicht gerade selbsterklärend …

https://download.uib.de/opsi4.1/documentation/html/opsi-manual-v4.1/opsi-manual-v4.1.html

Viel weiter bin ich damit auch noch nicht. Aber wir können uns hier gerne weiter austauschen. Hier im Forum setzen übrigens sehr viele NUR Linbo und gar kein OPSI ein, da das für die meisten Fälle praktischer ist. Es sind aber durchaus Fälle denkbar, wo OPSI Sinn macht – wie z.B. Fachräume, die nicht jeden Morgen synchronisiert gestartet werden. Da könnte man bei Bedarf dann gängige Tools wie Firefox, LibreOffice usw per OPSI auf den aktuellen Stand bringen …

Inwieweit diese Anleitung von 2015 noch funktioniert, kann ich nicht sagen …
Hier noch ein Link auf weiterführende Infos, wie man weiter vorgehen muss.
So long,
Michael

Chris @cweikl hat das hier dokumentiert:
http://docs.linuxmuster.net/de/v7/systemadministration/maintenance/keep-lmn-uptodate.html

Hallo Michael,

die zitierte Doku stammt von

Linuxmuster.net aktuell halten

Autor des Abschnitts: @toheine

VG
Chris

Hallo Chris.
Ok – dann gilt der Dank euch beiden :slight_smile:
Michael

Vielen Dank für die Nachricht.

Das hilft mir jetzt weiter.

Der Hintergrund, warum ich mich für opsi interessiere, ist, dass paedml ja auf opsi basiert.
Eine Grundschule wurde von der IT der Stadt gezwungen paedml mit einem windows-server zu installieren (wortwörtlich sagte der IT-Chef (der merkwürdigerweise plötzlich nicht mehr bei der Stadt beschäftigt war …): „Linux kommt mir nicht ist Haus“). Nun sitzen die armen Lehrer mit einer paedml-Version rum, die gar nicht für Grundschulen ausgelegt ist - vorgesehen für Grundschulen ist paedml-Linux. Die arme Betreuerin kann niemanden bezüglich alltäglichen Lösungen fragen und der Firmensupport ist auch nicht das gelbe vom Ei!

Interesssant ist deshalb, ob wie eine Portierung auf linuxmuster erfolgen müsste ohne alles von neuem aufzusetzen.

Vielleicht hat jemand damit Erfahrung.

Ich finde, dass das setup jetzt schon recht komfortabel ist. Das opsi key-Problem sollte man korrigieren und der linuxmuster key sollte vorinstalliert sein (was spricht dagegen???).

Hallo Eberhard,

Ich finde, dass das setup jetzt schon recht komfortabel ist. Das opsi
key-Problem sollte man korrigieren und der linuxmuster key sollte
vorinstalliert sein (was spricht dagegen???).

… die ova s sollten mal neu erstellt werden: da sind schlicht die alten
keys drin, da das Repo gewandert ist …

LG

Holger

Hallo Eberhard,

Der Hintergrund, warum ich mich für opsi interessiere, ist, dass paedml
ja auf opsi basiert.
Eine Grundschule wurde von der IT der Stadt gezwungen paedml mit einem
windows-server zu installieren (wortwörtlich sagte der IT-Chef (der
merkwürdigerweise plötzlich nicht mehr bei der Stadt beschäftigt war …):
„Linux kommt mir nicht ist Haus“).

… es gibt halt noch richtige Profis in der IT Welt. Die faßen so eine
„armeleute Software“ nicht an!

Nun sitzen die armen Lehrer mit einer
paedml-Version rum, die gar nicht für Grundschulen ausgelegt ist -
vorgesehen für Grundschulen ist paedml-Linux. Die arme Betreuerin kann
niemanden bezüglich alltäglichen Lösungen fragen und der Firmensupport
ist auch nicht das gelbe vom Ei!

… klingt nach einer normalen paedML Lösung inklusive unmotivierter IT
Support Firma…

Interesssant ist deshalb, ob wie eine Portierung auf linuxmuster
erfolgen müsste ohne alles von neuem aufzusetzen.

Vielleicht hat jemand damit Erfahrung.

nicht direkt: meist fangen die Leute frisch an.
Bei den Benutzern würde ich die Finger von lassen: die bekommst du nicht
in die lmn rüber: will man aber auch garnicht, weil die in der paedML
Windows ja so depperte Benutzernamen haben wie
hildegardkuligunde.waldhaus-schröder

Viel Spass beim Anmelden, sag ich da nur.
Solche Fürze machen wir nicht, obwohl die Sonderzeichen in der lmn7 ja
funktionieren sollen würde ich die Finger davon lassen.
Bei mir hätte die den Loginnamen
schroeder
oder
waldhaus
Was sie lieber mag.

Aber vielleicht haben sie das ja in einem Anfall von Vernunft in der
paedML Windows 3 ja geändert…

Was klappen kann ist die Migration des Clients, wenn der nicht total mit
GPOs verramscht ist.

Den Client kann man „linboisieren“.
Dafür müßte man von Hand eine Cachpartition ext4 ID83 anmlegen und
formatieren.
Dann linbo starten und ein Image erstellen.
Danach kann man aus der Domäne austreten, neu booten, regpatch
einspielen und der Domäne beitreten und dann wieder Image erstellen.

Wovon reden wir den hier?
Ein Computerraum? 30 Rechner? Oder zwei? Oder einer und 15 Clients in
den Unterrichtszimmern?
Alles gleiche Hardware?
Oder Potpourri?

LG

Holger

Zur Hardware:

Eigentlich lächerlich kleine Konfig:
4 identische PCs und 4 Laptops, auch identische Hardware.

Hallo Eberhard,

Eigentlich lächerlich kleine Konfig:
4 identische PCs und 4 Laptops, auch identische Hardware.

vergiss OPSI: viel zu aufwändig.
Einmal ein linbo Image erstellt und auf die anderen 3 Clients verteilen:
fertig :slight_smile:

LG

Holger

Hallo Eberhard,

ich kann dem was Holger schreibt nur zustimmen. Auch wir als LMN7 Dienstleister empfehlen generell OPSI nur in Ausnahmefällen, insbesondere an Grundschulen wo der Softwarepool doch recht überschaubar ist.

Vielen Dank für dein Posting.

Mir geht es darum den armen Lehrern, die die Wartung und Installation des System übernommen haben, das Leben möglichst leicht zu machen, sodass sie mit der gewohnten Umgebung weiter machen können.

Wenn man etwas machen kann, dann wäre eine Portierung der images + config auf den linbo-Server eine Option, falls nicht zu viel Neues dabei zu lernen ist. Da bin ich eher skeptisch zumal der zuständige Lehrer eigentlich den Job zum Betreuer zwangsweise übernommen hat, weil er sich nicht schnell genug weggeduckt hat.

Auf Betreuender Seite ist hier tatsächlich wenig neues zu lernen, es ist sogar wesentlich einfacher.

Allem vorrausgesetzt, dass die Clients mit der gleichen Software zufrieden sind. In dem Fall ist das Installieren von Software in das globale Image nämlich nichts anders wie das Installieren von Software zuhause und anschließendes schreiben des Images.

Hallo Eberhard,

Mir geht es darum den armen Lehrern, die die Wartung und Installation des System übernommen haben, das Leben möglichst leicht zu machen, sodass sie mit der gewohnten Umgebung weiter machen können.

Wenn man etwas machen kann, dann wäre eine Portierung der images + config auf den linbo-Server eine Option, falls nicht zu viel Neues dabei zu lernen ist. Da bin ich eher skeptisch zumal der zuständige Lehrer eigentlich den Job zum Betreuer zwangsweise übernommen hat, weil er sich nicht schnell genug weggeduckt hat.

wie so oft :slight_smile:
Unsere Lösung ist ja darauf ausgelegt, dass sie mit wenig Aufwand und
knowhow VorOrt Administriert werden kann.

Wenn die Adminst Vorort OPSI bisher nicht oder nur sehr selten verwendet
haben, dann fehlt ihnen das auch nicht.
Ich betreue 2 Grundschulen seit vielen Jahren nebenher: da muß man das
einmal einrichten und dann läuft das.
Neue Software kommt in den ersten 2 Monaten dazu, weil sie merken, dass
was fehlt.
Danach läuft das einfach. Im schnitt gehe ich da einmal im Jahr vorbei
und mach was am Image … wenn überhaupt.
Die sind sehr froh, wenn es einfach immer so läuft und sich nichts
verändert.

LG

Holger

Lieber Holger,
kannst du das linboisieren noch etwas detailiererter beschreiben.
Ich habe auf einer 1 TB disk eine 400GB große win10-Installation mit einem nicht-partitionieren Bereich von rund 600GB. Die Installation braucht eine boot- und eine system-Partition wie üblich.
Wenn ich per pxe boote, dann will linbo alles platt machen. Wie geht der Trick???
Danke
Eberhard

Hallo Eberhard,

kannst du das linboisieren noch etwas detailiererter beschreiben.
Ich habe auf einer 1 TB disk eine 400GB große win10-Installation mit
einem nicht-partitionieren Bereich von rund 600GB. Die Installation
braucht eine boot- und eine system-Partition wie üblich.
Wenn ich per pxe boote, dann will linbo alles platt machen. Wie geht der
Trick???

steht im anderen Thread:

Wenn du schon 600GB frei hast, dann könntest du natürlich die 400GB
Partition mit Windows einfach lassen: aber dann dauert das Image
Erstellen sehr lange, da 360GB genullt werden müssen …
Deswegen würde ich trotzdem shrinken.

LG

Holger

Nach vielen Versuchen und Fehlschlägen ist es mir gelungen, das win10-cloop-image auf dem lmn7 auf dem server abzulegen. Ich habe viel von den dahinterliegenden Grundlagen gelernt und möchte ein paar Dinge weitergeben.

Anfangsbedingungen:
Ein Win10-Installation mit mehreren Softwarepaketen, die es schwierig machen, eine Erstinstallation von Null an durchzuführen.

Vorgehensweise:

  1. Die eigentliche Windows-Partition, die sich meist in der 2. Partition auf der disk befindet wird mit gparted auf eine leere msdos-Initiierte Festplatte kopiert. Ein ext4-cache Partition kreieren.
  2. Die ursprüngliche disk wird nach dem Herunterfahren abgehängt und die neue disk bootbar gemacht:
    in https://www.diskpart.com/de/articles/bootrec-fixboot-element-nicht-gefunden.html
    fand ich die entscheidenden Hinweise (Aufruf von diskpart und bootrec mit Hilfe eines cmd-Fensters einer Windows Installationsdistribution).
  3. Nun über pxe linbo booten und unter „imaging“ das image auf dem Server speichern.
  4. Nun können weitere leere PC diese image laden und starten, indem man diese über’s Webinterface anmeldet.

Ich habe ausprobiert, ein cloop-File zu entpacken und musste feststellen, dass die Version, die mit der lmn7-xva-Distribution kommt fehlerhaft arbeitet.
Ein extract_compressed_fs x.cloop x.image erzeugt nicht das Ausgangsimage. Man sieht es daran, dass dieses image, das viel kleiner ist als das ursprüngliche Ausgangsimage, sich nicht mounten lässt (ich bin fast verzweifelt daran, weil ich den Fehler bei mir gesucht habe.). Ein aus den sources generiertes extract_compressed_fs https://github.com/KlausKnopper/cloop
machte dann alles richtig!

Mit create_compressed_fs konnte ich dann ggf. ein neues cloop-Image kreieren. Was mir auch half, war dann noch ein torrent-file-editor, der die Hashes und Dateiinformationen richtig einstellen lies: torrent-file-editor-0.3.17, sodass das Laden des Images funktionierte.

Vielleicht hilft anderen diese Beschreibung!