== Diskless Workstation Server (bullseye) == <> === Installation === Das Debian Edu Minimalsystem {{{disklserver.intern}}} installieren wir über die PXE-Installationsumgebung von Debian Edu / Skolelinux. Die Vorbereitung der VM Instanz werden hier für [[../libvirt|libVirt]] bzw. [[../ganeti|Ganeti]] beschrieben. Die VM fährt hoch und bootet über PXE ins iPXE Bootmenü. Hier bitte den 64bit Installer auswählen. Es startet der Debian (Edu) Installer im grafischen Modus: * Installationsprofil: Minimal * Automatische Partitionierung: ja * Paketerfassung verwenden: Ja * Kennwort für root festlegen * ''Wichtig:'' Nach der Installation von {{{disklserver.intern}}}, aber vor dem ersten Start muss der Server im Debian Edu / Skolelinux Netzwerk bekannt gemacht werden: * GOsa² auf TJENER: * System (Typ: Server) anlegen für {{{disklserver.intern}}} * Beschreibung: {{{Diskless Workstations Image Server}}} * IP: {{{10.0.2.9}}} * ermittelte MAC-Adresse eintragen (vergl. Info-Seite bzgl. VM-Instanz Setup, s.o.) * DHCP (10.0.0.0-Netz) * DNS aktivieren * NIS Netgroups Eintrag in Gruppe: {{{server-hosts}}} (hierfür muss der Systemeintrag in GOsa² erstmal angelegt worden sein, danach nochmal die NIS Netgroup nachbearbeiten) === Konfiguration === Nach dem Neustart der VM {{{disklserver.intern}}} sollte der Hostname des gestarteten Systems auf {{{disklserver.intern}}} gesetzt sein. Wird stattdessen ein Hostname angezeigt, der die MAC-Adresse der primären NIC des Systems enthält, hat die Eintragung des Systems in GOsa² nicht funktioniert. Bevor man weiter fortfahren kann, muss dieser Fehler behoben werden. Zum aktuellen Zeitpunkt (Debian Edu 11.2 Release) kommt es bei der Installation eines Minimal-Profils zu einem Fehler. Es fehlt das DEB-Paket {{{libpam-krb5}}}. Dies muss nachinstalliert werden (vergl. [[https://bugs.debian.org/1002299|Debian bug #1002299]]): {{{ apt-get install libpam-krb5 }}} Um als Admin-User (bzw. allgemein als LDAP-User) bei Anmeldung System eine Verbindung zum $HOME-Verzeichnis auf {{{tjener.intern}}} zu erhalten, muss eine /etc/krb5.keytab Datei auf {{{disklserver.intern}}} kopiert werden (welche die Principals für {{{host/disklserver.intern}}} und {{{nfs/disklserver.intern}}} enthält. Dies erfolgt über folgenden Befehlsaufruf: {{{ root@disklserver:~# /usr/share/debian-edu-config/tools/copy-host-keytab Passwort für root@INTERN: disklserver.intern.keytab 100% 324 9.0KB/s 00:00 root@disklserver:~# }}} Danach sollte es möglich sein, sich mit einem LDAP-Benutzerkonto an {{{disklserver.intern}}} via Login TTY od. SSH einzuloggen. ==== Fine-Tuning der VM-Einstellungen ==== * Nach der Installation und dem ersten Start führen wir die folgenden Änderungen an der VM-Konfiguration von {{{disklserver.intern}}} durch. Hierfür muss die VM herunter gefahren werden und die VM-Konfiguration angepasst werden: * zweite Festplatte hinzufügen (Name für libVirt: {{{disklserver.intern_sdb}}}) * VM wieder anschalten und in der VM weiterarbeiten ==== Paket-Quellen für ITZkS aktivieren ==== Für den Diskless-Workstation-Server gibt es ein eigenes Overlay-Paket, welches aus dem IT-Zukunft Schule Projekt-APT-Repository installiert wird: {{{ root@disklserver:~# editor /etc/apt/sources.list.d/itzks.list """ deb http://packages.it-zukunft-schule.de/debian bullseye main contrib non-free """ root@disklserver:~# apt-get --allow-insecure-repositories update && apt-get install itzks-keyring && apt-get update root@disklserver:~# apt-get install itzks-systems-common }}} Bei der Installation von {{{itzks-systems-common}}} wird das Kürzel der Schule / des Schulkundens abgefragt. Diese Kürzel sind im Paket hinterlegt. Es besteht die Möglichkeit, ein Kürzel für die eigene Schule zu beantragen. Bitte dafür Kontakt mit Mike Gabriel vom IT-Zukunft Schule Projekt aufnehmen. Nach der Installation von {{{itzks-systems-common}}} dann folgenden Befehl aufrufen: {{{ root@disklserver:~# itzks-systems.do_preseed Preseeding ocsinventory-agent/tag to Preseeding ocsinventory-agent/method to http Preseeding ocsinventory-agent/server to inventory.it-zukunft-schule.de Silently running dpkg-reconfigure on package ocsinventory-agent ... DONE. }}} ==== Software nachinstallieren ==== Die weitere Software wird über die Installation des Meta- und Config-Pakets {{{itzks-systems-disklserver}}} installiert: {{{ root@disklserver:~# sudo apt-get install itzks-systems-disklserver }}} ==== System konfigurieren ==== 1. Login als {{{root}}} 1. Standard-Editor festlegen (an der Unix-Console){{{ $ update-alternatives --config editor }}}Hier {{{vim.basic}}} auswählen. 1. Das Programm Midnight Commander starten (Kommando: {{{mc}}}): * F9 drücken * Optionen -> Konfiguration: [x] Internen Editor benutzen * Optionen -> Einstellungen speichern * F10: Midnight Commander beenden 1. Den Midnight Commander Editor (Kommando: {{{mcedit}}}) starten: * F9 drücken * Menüpunkt: ''Optionen -> Allgemein'' * "Backspace durch Tabs" auswählen * "Tabs mit Leerzeichen auffüllen" auswählen * "Return rückt automatisch ein" abwählen * mit "OK" bestätigen * F10: Editor beenden ==== Boot-Verzögerung bei Stromausfall ==== Debian Edu Systeme setzen beim Systemstart einen erreichbaren Hauptserver voraus. Für Debian Edu Server-VMs ergibt sich die Anforderung einer Boot-Verzögerung, die z.B. bei Stromausfall dafür sorgt, dass der Haupt-Server nach Neustart aller Systeme verfügbar ist. Anstelle aufwendiger VM-Host Skripte wird eine Startverzögerung durch ein hohes Timeout im Bootloader GRUB erwirkt.{{{ @disklserver:/# diff -u /etc/default/grub.orig /etc/default/grub --- /etc/default/grub.orig 2012-08-31 16:06:51.000000000 +0200 +++ /etc/default/grub 2012-08-31 16:06:59.000000000 +0200 @@ -2,7 +2,7 @@ # /boot/grub/grub.cfg. GRUB_DEFAULT=0 -GRUB_TIMEOUT=5 +GRUB_TIMEOUT=600 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet" GRUB_CMDLINE_LINUX="" }}} Danach muss die Konfigurationsänderung übernommen werden:{{{ $ sudo update-grub }}} ==== Nur Admin-User und Junior-Admins dürfen sich auf DISKLSERVER einloggen ==== Schul-Admins und IT-Dienstleister:innen tragen wir in der LDAP-Gruppe {{{admins}}} ein. Junior-Admins (z.B. Schüler:innen einer Computer-AG) tragen wir in der Gruppe {{{jradmins}}} ein. /!\ '''Wichtig:''' Der Diskless Workstation Server darf ein Login nur für Dienstleister, Schul-Admins und Junior-Admins erlauben. Hierfür müssen die Dateien {{{/etc/security/access.conf}}} und {{{/etc/pam.d/sshd}}} angepasst werden:{{{ --- /etc/security/access.conf.orig +++ /etc/security/access.conf @@ -120,3 +120,6 @@ # # All other users should be denied to get access from all sources. #- : ALL : ALL + ++ : admins jradmins root : ALL +- : ALL : ALL }}}{{{ --- /etc/pam.d/sshd.orig 2012-07-30 17:51:12.000000000 +0200 +++ /etc/pam.d/sshd 2012-07-30 17:51:26.000000000 +0200 @@ -15,7 +15,7 @@ # Uncomment and edit /etc/security/access.conf if you need to set complex # access limits that are hard to express in sshd_config. -# account required pam_access.so +account required pam_access.so # Standard Un*x authorization. @include common-account }}} === Einrichtung des Diskless Workstation Chroot === ==== Speicherplatz für DLW Chroot bereit stellen ==== Zunächst muss der für das Diskless Workstation Chroot Image vorgesehene Festplattenplatz vorbereitet werden:{{{ $ sudo lvcreate vg_system -n srv -L 60G $ sudo mkfs.ext4 /dev/vg_system/srv Jetzt noch einen Eintrag in {{{/etc/fstab}}} anlegen:{{{ --- /etc/fstab.orig 2012-07-31 13:31:19.000000000 +0200 +++ /etc/fstab 2012-07-31 13:34:46.000000000 +0200 @@ -10,6 +10,7 @@ /dev/mapper/vg_system-root / ext4 errors=remount-ro 0 1 # /boot was on /dev/vda1 during installation UUID= /boot ext4 defaults 0 2 +/dev/mapper/vg_system-srv /srv ext4 defaults 0 2 /dev/mapper/vg_system-usr /usr ext4 defaults 0 2 /dev/mapper/vg_system-var /var ext4 defaults 0 2 /dev/mapper/vg_system-swap_1 none swap sw 0 0 }}} * und zuletzt das Dateisystem mounten (unter der Voraussetzung, dass {{{/srv}}} keine Daten enthält):{{{ $ sudo mount /srv }}} === DLW Chroot bereitstellen === Das DLW Chroot wird zentral gepflegt und per Skript auf die DLW Server in den versch. Schulen übertragen. FIXME: Die Bereitstellung der Diskless Workstations bei einem Neu-Rollout einer Schule muss noch im Detail dokumentiert werden.