Unterschiede zwischen den Revisionen 3 und 22 (über 19 Versionen hinweg)
Revision 3 vom 2015-07-21 13:59:09
Größe: 26089
Kommentar:
Revision 22 vom 2016-11-09 12:43:36
Größe: 23118
Kommentar:
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 24: Zeile 24:
$ sudo gnt-network add --network=10.0.0.0/16 --gateway=10.0.0.1 DebianEdu
$ sudo gnt-network connect -N mode=bridged,link=br0 DebianEdu
Zeile 29: Zeile 27:
$ sudo gnt-instance start -H boot_order=cdrom,cdrom_image_path=/home/locadm/isoimages/debian-edu-amd64-i386-BD-1.iso tjener.intern $ sudo gnt-instance start -H boot_order=cdrom,cdrom_image_path=/home/locadm/iso-images/debian-edu-amd64-i386-BD-1.iso tjener.intern
Zeile 48: Zeile 46:
   * Erfassung der Paketverwendung ({{{popularity-contest}}}: Ja    * Erfassung der Paketverwendung ({{{popularity-contest}}}): Ja
Zeile 57: Zeile 55:


}}}
Zeile 65: Zeile 61:
Der Abschnitt beschreibt die Einbindung der schnellen SAS-Festplatten, sowie das Anlegen von Verzeichnissen für Gruppen und den Dateiaustausch.

 1. Home-Verzeichnisse: Das Logical Volume {{/dev/vm-fast-vg/tjener.intern_sdb}} erscheint im TJENER als {{{/dev/vdb}}}. Vorgesehen ist {{{/dev/vdb}}} für die Bereitstellung der Home-Verzeichnisse. Die folgenden Arbeiten sind an {{{/dev/vdb}}} durchzuführen:
  a. Partitionieren:{{{
root@tjener:~# fdisk -l /dev/vdb

Disk /dev/vdb: 429.5 GB, 429496729600 bytes
16 heads, 63 sectors/track, 832203 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xbc67acb0

   Device Boot Start End Blocks Id System
/dev/vdb1 1 832203 419430280+ 8e Linux LVM
}}}
  a. Die Partition {{{/dev/vdb1}}} als Physical Volume markieren:{{{
$ pvcreate /dev/vdb1
}}}
  a. Dann auf {{{/dev/vdb1}}} eine Volume Group erstellen:{{{
$ vgcreate vg_home /dev/vdb1
}}}
  a. In der Volume Group zwei Logical Volumes anlegen:{{{
$ lvcreate vg_home -n skole+tjener+home0 -L 40G
$ lvcreate vg_home -n skole+tjener+home1 -L 40G
}}}
  a. Diese Logical Volumes werden mit dem Ext3-Dateisystem formatiert:{{{
$ mkfs.ext3 /dev/vg_home/skole+tjener+home0
[...]
$ mkfs.ext3 /dev/vg_home/skole+tjener+home1
[...]
}}}

 1. Homeverzeichnis des initialen Benutzers verschieben auf das neuen Logical Volume /dev/vg_home/skole+tjener+home0:{{{
$ mount /dev/vg_home/skole+tjener+home0 /mnt
$ cp -av /skole/tjener/home0/* /mnt
$ umount /dev/vg_home/skole+tjener+home0
}}}
 1. Logical Volumes für Gruppen und Dateiaustausch anlegen:{{{
Der Abschnitt beschreibt die Einbindung der Festplatten, sowie das Anlegen von Verzeichnissen für Gruppen und den Dateiaustausch.

 1. Home-Verzeichnisse und Gruppenverzeichnisse: Die Standardinstallation von Tjener stellt das logical-volume /dev/vg_system/skole+tjener+home0 bereit. Wir fügen die folgenden locical-volumes zum Abspeichern von Benutzerdaten hinzu.

  a. In der Volume Group neue Logical Volumes anlegen:{{{
$ lvcreate vg_system -n skole+tjener+home1 -L 40G
Zeile 107: Zeile 70:
$ mkfs.ext3 /dev/vg_system/skole+tjener+group0
[...]
$ mkfs.ext3 /dev/vg_system/skole+tjener+group1
[...]
$ mkfs.ext3 /dev/vg_system/skole+tjener+transfer
[...]
}}}
}}}
  a. Diese Logical Volumes werden mit dem Ext4-Dateisystem formatiert:{{{
$ mkfs.ext4 /dev/vg_system/skole+tjener+home1
$ mkfs.ext4 /dev/vg_system/skole+tjener+group0
$ mkfs.ext4 /dev/vg_system/skole+tjener+group1
$ mkfs.ext4 /dev/vg_system/skole+tjener+transfer
}}}
Zeile 118: Zeile 82:
root@tjener:~# diff -u /etc/fstab.orig /etc/fstab
--- /etc/fstab.orig 2012-07-06 14:15:36.000000000 +0200
+++ /etc/fstab 2012-07-06 14:17:19.000000000 +0200
@@ -11,10 +11,18 @@
root@tjener:~# diff -u /etc/fstab.orig /etc/fstab 
--- /etc/fstab.orig 2015-07-21 16:14:57.758210057 +0200
+++ /etc/fstab 2015-07-21 16:32:02.440374187 +0200
@@ -10,7 +10,11 @@
Zeile 123: Zeile 87:
 UUID=<unique-identifier> /boot ext3 defaults 0 2
 /dev/mapper/vg_system-skole+backup /skole/backup ext3 defaults 0 2
-/dev/mapper/vg_system-skole+tjener+home0 /skole/tjener/home0 ext3 nosuid 0 2
+/dev/mapper/vg_home-skole+tjener+home0 /skole/tjener/home0 ext3 nosuid,usrquota,acl,user_xattr 0 2
+/dev/mapper/vg_home-skole+tjener+home1 /skole/tjener/home1 ext3 nosuid,usrquota,acl,user_xattr 0 2
+/dev/mapper/vg_system-skole+tjener+group0 /skole/tjener/group0 ext3 nosuid,grpquota,acl,user_xattr 0 2
+/dev/mapper/vg_system-skole+tjener+group1 /skole/tjener/group1 ext3 nosuid,grpquota,acl,user_xattr 0 2
+/dev/mapper/vg_system-skole+tjener+transfer /skole/tjener/transfer ext3 nosuid,usrquota,acl,user_xattr 0 2
 /dev/mapper/vg_system-usr /usr ext3 defaults 0 2
 /dev/mapper/vg_system-var /var ext3 defaults 0 2
 /dev/mapper/vg_system-var+spool+squid /var/spool/squid ext3 defaults 0 2
 UUID=eec81d3a-5956-42a7-896d-02d56112963a /boot ext4 defaults 0 2
 /dev/mapper/vg_system-skole+backup /skole/backup ext4 user_xattr 0 2
-/dev/mapper/vg_system-skole+tjener+home0 /skole/tjener/home0 ext4 user_xattr 0 2
+/dev/mapper/vg_system-skole+tjener+home0 /skole/tjener/home0 ext4 nosuid,usrquota,acl,user_xattr 0 2
+/dev/mapper/vg_system-skole+tjener+home1 /skole/tjener/home1 ext4 nosuid,usrquota,acl,user_xattr 0 2
+/dev/mapper/vg_system-skole+tjener+group0 /skole/tjener/group0 ext4 nosuid,usrquota,acl,user_xattr 0 2
+/dev/mapper/vg_system-skole+tjener+group1 /skole/tjener/group1 ext4 nosuid,usrquota,acl,user_xattr 0 2
+/dev/mapper/vg_system-skole+tjener+transfer /skole/tjener/transfer ext4 nosuid,usrquota,acl,user_xattr 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-var+log /var/log ext4 defaults 0 2
@@ -18,4 +22,8 @@
Zeile 135: Zeile 100:
 /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0
 /skole/tjener/home0 /srv/nfs4/home0 none bind,nosuid,usrquota,acl,user_xattr 0 0
 /dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0
 /dev/sr1
/media/cdrom1 udf,iso9660 user,noauto 0 0
-/skole/tjener/home0 /srv/nfs4/home0 none bind 0 0
+
/skole/tjener/home0 /srv/nfs4/home0 none bind,nosuid,usrquota,acl,user_xattr 0 0
Zeile 138: Zeile 105:
+/skole/tjener/group0 /srv/nfs4/group0 none bind,nosuid,grpquota,acl,user_xattr 0 0 
+/skole/tjener/group1 /srv/nfs4/group1 none bind,nosuid,grpquota,acl,user_xattr 0 0 
+/skole/tjener/group0 /srv/nfs4/group0 none bind,nosuid,usrquota,acl,user_xattr 0 0
+/skole/tjener/group1 /srv/nfs4/group1 none bind,nosuid,usrquota,acl,user_xattr 0 0
Zeile 143: Zeile 110:
 1. Jetzt TJENER neu starten und nach dem Neustart den Speicherplatz des alten Logical Volumes für Home-Verzeichnisse (als root) freigeben:{{{
$ lvchange -a n /dev/mapper/vg_system-skole+tjener+home0
$ lvremove /dev/mapper/vg_system-skole+tjener+home0
}}}
 1. neue fstab übernehmen mit {{{mount -a}}}
Zeile 172: Zeile 136:
 * '''bereits vorbereitet''': [[Technik/Installation/Firewall|Basisinstallation]] ipFire (Skole-Gateway auf der IP 10.0.0.1 aka {{{gateway.intern}}})
 * Anschließen von ipFire
   * ''rot:'' an Schul-/Firmennetz o.ä. Netz mit DHCP-Server
   * ''grün:'' zusammen mit der Skole-Netzwerk Bridge (eth1, br1), auf der TJENER kommuniziert an eine gemeinsame Netzwerkswitch
 * '''bereits vorbereitet''': [[https://wiki.it-zukunft-schule.de/Technik/Installation/Firewall/Pfsense|Basisinstallation]] pfSense (Skole-Gateway auf der IP 10.0.0.1 aka {{{gateway.intern}}})
 * Anschließen von pfSense
   * ''rot (WAN):'' an Schul-/Firmennetz o.ä. Netz mit DHCP-Server
   * ''grün (LAN):'' zusammen mit der Skole-Netzwerk Bridge (eth0, br0), auf der TJENER kommuniziert an eine gemeinsame Netzwerkswitch
Zeile 202: Zeile 166:
==== Software nachinstallieren aus Debian wheezy ====

TODO: hier weiter arbeiten an den Änderungen squeeze->wheezy

 
Für das Nachinstallieren von Software, muss TJENER's Proxy mit dem Internet kommunizieren können. Testen (und APT-Cache initialisieren) mit:{{{
==== Software nachinstallieren aus Debian jessie ====

Für das Nachinstallieren von Software, muss TJENER's Proxy mit dem Internet kommunizieren können. Testen (und APT-Cache initialisieren) mit:{{{
Zeile 211: Zeile 173:
$ sudo apt-get install gnome-session gnome-terminal iceweasel iceweasel-l10n-de gedit xinit gosa-plugin-connectivity gosa-plugin-squid autossh tree nmap nload
}}}

 '''Hinweis:''' Wer möchte, kann jetzt grafisch unter GNOME weiter arbeiten:{{{
$ sudo apt-get install mate-desktop-environment firefox-esr firefox-esr-l10n-de pluma xinit gosa-plugin-connectivity gosa-plugin-squid gosa-plugin-pwreset tree nmap nload
}}}

 '''Hinweis:''' Wer möchte, kann jetzt grafisch unter MATE weiter arbeiten:{{{
Zeile 225: Zeile 187:
deb http://packages.it-zukunft-schule.de/debian squeeze main
deb http://packages.it-zukunft-schule.de/debian squeeze-backports main
deb http://packages.it-zukunft-schule.de/debian jessie main
deb http://packages.it-zukunft-schule.de/debian jessie-backports main
Zeile 229: Zeile 191:
$ apt-get update && apt-get install itzks-keyring && apt-get update && apt-get install x2go-keyring deb-multimedia-keyring && apt-get update
}}}

==== Paket-Quellen für Debian Mozilla Team hinzufügen ====

Auf der [[http://mozilla.debian.net/|Seite des Debian Mozilla Packaging Teams]] befinden sich die entsprechenden Download Optionen für den Release-Zweig des Debian Mozilla Teams.

Auf der o.g. Seite werden die folgenden Optionen für die Konfigurationsansicht ausgewählt: ''« I am running Debian '''squeeze''' and I want to install '''Iceweasel''' version '''release''' ''. »

Die Konfigurationshinweise auf der Seite befolgen, entsprechende APT Quelle zum TJENER hinzufügen und den Debian Mozilla Archive Key dem TJENER hinzufügen.

Hinweis: Das Paket {{{itzks-systems-config}}} enthält bereits in {{{/etc/apt/sources.list.d/mozilla.list}}} den richtigen Eintrag.

==== Software nachinstallieren aus Debian squeeze-backports ====

Einige Programme sollen auf TJENER aktueller sein als in Debian squeeze.{{{
$sudo apt-get install -t squeeze-backports itzks-systems-mainserver
}}}
$ apt-get update && apt-get install itzks-keyring && apt-get update

}}}

Danach wird das ITZkS-Common-Paket installiert:
{{{
$ sudo apt-get install itzks-systems-common
}}}

Hierbei wird abgefragt, für welche Schule der Hauptserver aufgesetzt wird. Bitte den entsprechenden Kunden auswählen. Fehlt der Kunde, dann bitte an admins@lists.it-zukunft-schule.de selbiges melden.

Auf dem Hauptserver wollen wir folgende Paketquellen, die via {{{itzks-systems-common}}} aktiviert werden, nicht nutzen:

  * Debian Multimedia ({{{/etc/apt/sources.list.d/multimedia.list}}})
  * Geogebra ({{{/etc/apt/sources.list.d/geogebra.list}}}).

Die o.g. Dateien sind mit einem Texteditor (als root) zu bearbeiten und auszukommentieren.

Schließlich wird dann noch das ITZkS-Paket für den Hauptserver installiert:

{{{
$ sudo itzks-systems.do_preseed
$ sudo apt-get install itzks-systems-mainserver
}}}

Das Haupserver ITZkS-Paket wird viele Abhängigkeiten installieren.
Zeile 251: Zeile 221:
$ editor /etc/apt/sources.list.d/x2go.list

"""
deb http://packages.x2go.org/debian squeeze main
"""
Zeile 261: Zeile 225:
$ apt-get install x2goserver-xsession x2gognomebindings x2godesktopsharing x2goclient pyhoca-gui
}}}

=== Fernwartungs-Zugang einrichten ===

Die Einrichtung eines Fernwartungs-Zugangs mit {{{autossh}}} wird [[Technik/Wartung/Fernwartung|hier]] beschrieben.
$ apt-get install x2goserver-xsession x2gomatebindings x2godesktopsharing x2goclient pyhoca-gui
}}}
Zeile 270: Zeile 230:
Spätestens jetzt muss grafisch unter GNOME weiter gearbeitet werden, damit in GOsa² die im folgenden beschriebenen Anpassungen durchgeführt werden können. Spätestens jetzt muss grafisch unter MATE weiter gearbeitet werden, damit in GOsa² die im folgenden beschriebenen Anpassungen durchgeführt werden können.
Zeile 273: Zeile 233:

Um mit GOsa² auf TJENER zu arbeiten, muss GOsa im Webbrowser (Firefox) aufgerufen werden: http:///www/gosa (Anmeldung mit initialem User aus der Debian Edu Installation des TJENERs).
Zeile 295: Zeile 257:
 1. Aufrufen von Iceweasel, einloggen in GOsa² unter http:///www/gosa (mit initialem User aus der Debian Installation des TJENERs).
Zeile 312: Zeile 273:
c\o Logo EDV-Systeme GmbH Logo EDV-Systeme GmbH
Zeile 316: Zeile 277:
  a. '''Reiter: Unix'''   a. '''Reiter: POSIX'''
Zeile 391: Zeile 352:
}}}

==== Passwort-Synchronisation via Samba fixen ====

 Die Passwort-Synchronisation via Samba Domain Clients braucht für squeeze-r0 einen Patch (vergl. Debian-BTS [[http://bugs.debian.org/656296|#656296]]):{{{
Index: etc/samba/smb-debian-edu.conf
===================================================================
--- etc/samba/smb-debian-edu.conf (Revision 78303)
+++ etc/samba/smb-debian-edu.conf (Arbeitskopie)
@@ -95,6 +95,18 @@
 # PAM setup
    obey pam restrictions = no
 
+# passwd sync
+
+ # sync LDAP password
+ ldap passwd sync = yes
+
+ # sync Kerberos password via kadmin.local
+ unix password sync = yes
+ passwd program = /usr/sbin/kadmin.local -q 'cpw %u'
+ passwd chat = "Authenticating as principal*"\n"Enter password for principal *"%u"*:*" %n\n \n"Re-enter password for principal *"%u"*:*" %n\n \n"Password for *"%u"@* changed."\n
+ # dangerous: reveals clear text password in Samba log files...
+ passwd chat debug = no
+
 # Printer settings
 
    load printers = yes
@@ -182,10 +194,6 @@
    read raw = yes
    write raw = yes
 
- # make sure samba password changes reach NT+LM hashes, userPassword and Kerberos
- pam password change = yes
- unix password sync = no
-
    # no offline cache of shares
    csc policy = disable

Installationshinweise: Debian Edu / Skolelinux Haupt-Server TJENER (jessie)

Download von Debian Edu (jessie)

Für die Installation von Debian Edu (jessie) wird ein aktuelles DVD-Installationsmedium benötigt:
http://ftp.skolelinux.org/skolelinux-cd/

Bitte vor Download einen Blick auf die Debian Edu (jessie) Status-Seite im Debian-Wiki werfen:
http://wiki.debian.org/DebianEdu/Status/Jessie

/!\ Wichtig: Der Skolelinux-Hauptserver wird immer von der Debian Edu DVD installiert!!!

Das ISO-Image in /home/locadm/isoimages ablegen.

Erstellen der VM: tjener.intern

Der Haupt-Server des Debian Edu / Skolelinux Netzwerks wird als virtuelle Maschine auf dem Virtualisierungs-Server virt-man-01 bereitgestellt/installiert.

Installation von Tjener vorbereiten

Ganeti Instanz vorbereiten:

$ sudo gnt-instance add -t plain -o noop -s 1048576 -n virt-man-01.backbone --no-start --no-install --no-name-check --no-ip-check -H kvm:vnc_bind_address=127.0.0.1 tjener.intern
$ sudo gnt-instance modify --net 0:modify,network=DebianEdu tjener.intern
$ sudo gnt-instance modify -B maxmem=8192,minmem=8192,vcpus=4 tjener.intern
$ sudo gnt-instance modify -H keymap=de tjener.intern
$ sudo gnt-instance start -H boot_order=cdrom,cdrom_image_path=/home/locadm/iso-images/debian-edu-amd64-i386-BD-1.iso tjener.intern

VNC installieren:

$ sudo apt-get install vncviewer

Basisinstallation TJENER

Tjener per VNC installieren (hierfür muss im ssh zum Virt-Man-01 die Option -X gesetzt sein (ssh -X locadm@172.16.0.1):

$vncviewer 127.0.0.1::11000
  • Hier mit der Auswahl auf 64-bit install und Tab drücken. Den Bootparameter desktop=mate hinzufügen.

  • Mit Enter bestätigen
  • Warten, Debian Edu Installer lädt...

  • Sprache und Tastatur: Deutsch (3x auswählen und bestätigen)
  • Netzwerk einrichten: automatische Netzwerkkonfiguration schlägt fehl => das Netzwerk unkonfiguriert belassen

  • Debian Edu Installationsprofil: Hauptserver
  • Automatische Partitionierung: Ja
  • Erfassung der Paketverwendung (popularity-contest): Ja

  • Kennwort für den Super-User root festlegen

  • Initialen Benutzer anlegen. Vollständiger Name: LDAP Administrator, Benutzername: ldapadm
  • Installation abwarten

auf VIRT-MAN-01

Tjener stoppen, CD auswerfen und neu starten:

$ sudo gnt-instance stop --timeout=0 tjener.intern
$ sudo gnt-instance start -H boot_order=disk,cdrom_image_path='' tjener.intern

auf TJENER

Diese Arbeiten werden als root auf der Textkonsole durchgeführt. Kein grafisches Login für diese Arbeiten verwenden!!!

Der Abschnitt beschreibt die Einbindung der Festplatten, sowie das Anlegen von Verzeichnissen für Gruppen und den Dateiaustausch.

  1. Home-Verzeichnisse und Gruppenverzeichnisse: Die Standardinstallation von Tjener stellt das logical-volume /dev/vg_system/skole+tjener+home0 bereit. Wir fügen die folgenden locical-volumes zum Abspeichern von Benutzerdaten hinzu.
    1. In der Volume Group neue Logical Volumes anlegen:

      $ lvcreate vg_system -n skole+tjener+home1 -L 40G
      $ lvcreate vg_system -n skole+tjener+group0 -L 20G
      $ lvcreate vg_system -n skole+tjener+group1 -L 20G
      $ lvcreate vg_system -n skole+tjener+transfer -L 40G
    2. Diese Logical Volumes werden mit dem Ext4-Dateisystem formatiert:

      $ mkfs.ext4 /dev/vg_system/skole+tjener+home1
      $ mkfs.ext4 /dev/vg_system/skole+tjener+group0
      $ mkfs.ext4 /dev/vg_system/skole+tjener+group1
      $ mkfs.ext4 /dev/vg_system/skole+tjener+transfer
  2. Zusätzliche Mountpoints und NFS-Mountpoints anlegen:

    $ mkdir -p /skole/tjener/home1 /skole/tjener/group{0,1} /skole/tjener/transfer /srv/nfs4/home1 /srv/nfs4/group{0,1} /srv/nfs4/transfer
  3. Die Datei /etc/fstab anpassen:

    root@tjener:~# diff -u /etc/fstab.orig /etc/fstab 
    --- /etc/fstab.orig     2015-07-21 16:14:57.758210057 +0200
    +++ /etc/fstab  2015-07-21 16:32:02.440374187 +0200
    @@ -10,7 +10,11 @@
     # /boot was on /dev/vda1 during installation
     UUID=eec81d3a-5956-42a7-896d-02d56112963a /boot           ext4    defaults        0       2
     /dev/mapper/vg_system-skole+backup /skole/backup   ext4    user_xattr      0       2
    -/dev/mapper/vg_system-skole+tjener+home0 /skole/tjener/home0 ext4    user_xattr      0       2
    +/dev/mapper/vg_system-skole+tjener+home0    /skole/tjener/home0    ext4    nosuid,usrquota,acl,user_xattr      0       2
    +/dev/mapper/vg_system-skole+tjener+home1    /skole/tjener/home1    ext4    nosuid,usrquota,acl,user_xattr      0       2
    +/dev/mapper/vg_system-skole+tjener+group0   /skole/tjener/group0   ext4    nosuid,usrquota,acl,user_xattr      0       2
    +/dev/mapper/vg_system-skole+tjener+group1   /skole/tjener/group1   ext4    nosuid,usrquota,acl,user_xattr      0       2
    +/dev/mapper/vg_system-skole+tjener+transfer /skole/tjener/transfer ext4    nosuid,usrquota,acl,user_xattr      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-var+log /var/log        ext4    defaults        0       2
    @@ -18,4 +22,8 @@
     /dev/mapper/vg_system-swap_1 none            swap    sw              0       0
     /dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0
     /dev/sr1        /media/cdrom1   udf,iso9660 user,noauto     0       0
    -/skole/tjener/home0         /srv/nfs4/home0    none    bind    0       0
    +/skole/tjener/home0         /srv/nfs4/home0    none    bind,nosuid,usrquota,acl,user_xattr     0       0
    +/skole/tjener/home1          /srv/nfs4/home1    none    bind,nosuid,usrquota,acl,user_xattr    0       0
    +/skole/tjener/group0         /srv/nfs4/group0   none    bind,nosuid,usrquota,acl,user_xattr    0       0
    +/skole/tjener/group1         /srv/nfs4/group1   none    bind,nosuid,usrquota,acl,user_xattr    0       0
    +/skole/tjener/transfer       /srv/nfs4/transfer none    bind,nosuid,usrquota,acl,user_xattr    0       0
  4. neue fstab übernehmen mit mount -a

  5. Die Datei /etc/fsautoresizetab anlegen:

    # regex             minfree  max extendby
    /.*                      10% 20g 10%
    /usr                     10% 10g defaults
    /var                     10% 10g defaults
    /var/spool/squid         10% 40g defaults
    /var/opt/ltsp/swapfiles   5% 30g defaults
    /skole/tjener/home[0-9]+  10% 250g defaults
    /skole/tjener/group[0-9]+ 10% 150g defaults
    /skole/backup            10% 150g defaults
  6. Die neuen Verzeichnisse via NFS exportieren (anhängen an /etc/exports):

    /srv/nfs4/home1 @ltsp-server-hosts(sec=krb5p:krb5i:krb5:sys,rw,sync,no_subtree_check) @workstation-hosts(sec=krb5p:krb5i:krb5:sys,rw,sync,no_subtree_check) @server-hosts(sec=krb5p:krb5i:krb5:sys,rw,sync,no_subtree_check)
    /srv/nfs4/group0 @ltsp-server-hosts(sec=krb5p:krb5i:krb5:sys,rw,sync,no_subtree_check) @workstation-hosts(sec=krb5p:krb5i:krb5:sys,rw,sync,no_subtree_check) @server-hosts(sec=krb5p:krb5i:krb5:sys,rw,sync,no_subtree_check)
    /srv/nfs4/group1 @ltsp-server-hosts(sec=krb5p:krb5i:krb5:sys,rw,sync,no_subtree_check) @workstation-hosts(sec=krb5p:krb5i:krb5:sys,rw,sync,no_subtree_check) @server-hosts(sec=krb5p:krb5i:krb5:sys,rw,sync,no_subtree_check)
    /srv/nfs4/transfer @ltsp-server-hosts(sec=krb5p:krb5i:krb5:sys,rw,sync,no_subtree_check) @workstation-hosts(sec=krb5p:krb5i:krb5:sys,rw,sync,no_subtree_check) @server-hosts(sec=krb5p:krb5i:krb5:sys,rw,sync,no_subtree_check)
  7. NFS Verzeichnisse re-exportieren:

    $ exportfs -ar

TJENER mit dem Internet verbinden

  • bereits vorbereitet: Basisinstallation pfSense (Skole-Gateway auf der IP 10.0.0.1 aka gateway.intern)

  • Anschließen von pfSense
    • rot (WAN): an Schul-/Firmennetz o.ä. Netz mit DHCP-Server

    • grün (LAN): zusammen mit der Skole-Netzwerk Bridge (eth0, br0), auf der TJENER kommuniziert an eine gemeinsame Netzwerkswitch

Software nachinstallieren auf TJENER

Die folgenden Schritte werden nach Anmeldung mit dem initialen Benutzer an der Text-Console, später unter GNOME durchgeführt. Gearbeitet auf TJENER wird indirekt durch die von virt-manager bereit gestellte VNC-Konsole zur VM.

Fine-Tuning TJENER nach Basisinstallation / vor Software-Installation

  1. Login als root

  2. Standard-Editor festlegen (an der Unix-Console)

    $ update-alternatives --config editor

    Hier dann vim.basic auswählen.

  3. Das Programm Midnight Commander starten (Kommando: mc):

    • F9 drücken
    • Optionen -> Konfiguration: [x] Internen Editor benutzen

    • Optionen -> Einstellungen speichern

    • F10: Midnight Commander beenden
  4. 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
    • F10: Editor beenden

Software nachinstallieren aus Debian jessie

Für das Nachinstallieren von Software, muss TJENER's Proxy mit dem Internet kommunizieren können. Testen (und APT-Cache initialisieren) mit:

$ sudo apt-get update
  • Für den anfänglichen Betrieb reicht es, die folgende Software nachzuinstallieren:

    $ sudo apt-get install mate-desktop-environment firefox-esr firefox-esr-l10n-de pluma xinit gosa-plugin-connectivity gosa-plugin-squid gosa-plugin-pwreset tree nmap nload

    Hinweis: Wer möchte, kann jetzt grafisch unter MATE weiter arbeiten:

    $ startx

Paket-Quellen ITZkS hinzufügen

Auf dem Hauptserver muss jetzt die APT-Quelle von IT-Zukunft Schule hinzugefügt werden. Von dort wird u.a. das Paket itzks-systems-config installiert, welches weitere APT Quellen dem System hinzufügt.

$ editor /etc/apt/sources.list.d/itzks.list

"""
deb http://packages.it-zukunft-schule.de/debian jessie main
deb http://packages.it-zukunft-schule.de/debian jessie-backports main
"""

$ apt-get update && apt-get install itzks-keyring && apt-get update

Danach wird das ITZkS-Common-Paket installiert:

$ sudo apt-get install itzks-systems-common

Hierbei wird abgefragt, für welche Schule der Hauptserver aufgesetzt wird. Bitte den entsprechenden Kunden auswählen. Fehlt der Kunde, dann bitte an admins@lists.it-zukunft-schule.de selbiges melden.

Auf dem Hauptserver wollen wir folgende Paketquellen, die via itzks-systems-common aktiviert werden, nicht nutzen:

  • Debian Multimedia (/etc/apt/sources.list.d/multimedia.list)

  • Geogebra (/etc/apt/sources.list.d/geogebra.list).

Die o.g. Dateien sind mit einem Texteditor (als root) zu bearbeiten und auszukommentieren.

Schließlich wird dann noch das ITZkS-Paket für den Hauptserver installiert:

$ sudo itzks-systems.do_preseed
$ sudo apt-get install itzks-systems-mainserver

Das Haupserver ITZkS-Paket wird viele Abhängigkeiten installieren.

X2Go installieren

$ apt-get update && apt-get install x2go-keyring && apt-get update

Aus diesen Quellen werden die folgenden Pakete installiert:

$ apt-get install x2goserver-xsession x2gomatebindings x2godesktopsharing x2goclient pyhoca-gui

GOsa²-Baumstruktur erweitern/ergänzen

Spätestens jetzt muss grafisch unter MATE weiter gearbeitet werden, damit in GOsa² die im folgenden beschriebenen Anpassungen durchgeführt werden können.

Die hier beschriebenen Anpassungen sind Änderungen an GOsa², die nötig sind, um die Haupserver-Installation zu Ende führen zu können. Eine vollständige Übersicht über alle ITZkS-Anpassungen finden sich hier.

Um mit GOsa² auf TJENER zu arbeiten, muss GOsa im Webbrowser (Firefox) aufgerufen werden: http:///www/gosa (Anmeldung mit initialem User aus der Debian Edu Installation des TJENERs).

Namensschema für neue User-IDs festlegen

In /etc/gosa/gosa.conf das Namensschema für neue User-IDs anpassen:

root@tjener:~# diff -u /etc/gosa/gosa.conf.orig /etc/gosa/gosa.conf
--- /etc/gosa/gosa.conf.orig    2012-07-06 12:53:39.000000000 +0200
+++ /etc/gosa/gosa.conf 2012-07-06 12:54:21.000000000 +0200
@@ -421,7 +421,7 @@
              useSaslForKerberos="false"
              rfc2307bis="false"
              personalTitleInDN="false"
-             idGenerator="{%givenName[3-6]}{%sn[3-6]}"
+             idGenerator="{%sn[3-6]}{%givenName[3-6]}"
              strictNamingRules="true"
              mailAttribute="mail"
              gosaSharedPrefix=""

Teilbaum IT-Administration anlegen

OU: IT-Administration
  1. Abteilungen -> Aktionen: Anlegen > Abteilung

    1. Name der Abteilung: IT-Administration

    2. Beschreibung: IT-Dienstleister am/an der <Name der Schule>

    3. mit Button Ok bestätigen

User-Template: newitstaff
  1. Benutzer -> Aktionen: Anlegen > Vorlage

    1. Reiter: Allgemein

      1. Name der Vorlage: newitstaff

      2. Basis: /IT-Administration
      3. Organisation: IT-Zukunft Schule Team

      4. Telefon: +49 (431) 24855-0

      5. Ort: Kiel

      6. Land: Schleswig-Holstein

      7. Adresse:

        Logo EDV-Systeme GmbH
        Holtenauer Str. 96
        24105 Kiel
    2. Reiter: POSIX

      1. Klick auf Button: POSIX Einstellungen hinzufügen

      2. Basisverzeichnis: /skole/tjener/home1/%uid

      3. Gruppen hinzufügen: admins, gosa-admins, jradmins, nonetblk, teachers, students

    3. Reiter: Samba

      1. Klick auf Button: Samba Einstellungen hinzufügen

      2. Basisverzeichnis: \\tjener\%uid, Basislaufwerk: U:

      3. Anmeldeskript: logon-teachers.bat

      4. Profilpfad: \\tjener\%uid\.ntprofile

Konten für IT-Dienstleister anlegen

Mithilfe der Vorlage newitstaff sind jetzt für jedes ITZkS-Teammitglied Benutzerkonten anzulegen.

User-Template: newteacher

In der Vorlage für neue Lehrer/innen-Accounts (newteacher) muss das Default HOME-Verzeichnis von /skole/tjener/home0/%uid auf /skole/tjener/home1/%uid umgesetzt werden.

Samba Home-Laufwerk von H: auf U: versetzen

Oft begegnen uns in Schulen Windows-PCs mit einer Reihe Card-Reader Slots. Diese Card-Reader-Slots reservieren per Default etliche Laufwerksbuchstaben (oft bis H:, I: oder gar J:). Auf PCs dieser Art führt Laufwerk H: als Netzwerklaufwerk für das Benutzerverzeichnis zu Problemen. Daher verlegen wir das HOME-Verzeichnis unter Windows auf das Netzlaufwerk U:.

  1. Die folgende Änderung an /etc/samba/smb-debian-edu.conf anwenden:

    --- smb-debian-edu.conf.orig
    +++ smb-debian-edu.conf
    @@ -104,7 +104,7 @@
     
     # Network logon
     
    -   logon drive = H:
    +   logon drive = U:
        logon script = debian-edu-login.bat
     
        # store profiles in the users' HOME shares
  2. In GOsa² die Template NewTeacher and NewStudents anpassen:

    • Reiter: Samba
    • Allgemein, Basisverzeichnis: \\tjener\%uid, als Laufwerksbuchstaben [ U: ] auswählen

OU: Computers und Printers

Desweiteren sind die Basis-OUs für Computer und Drucker zu erstellen:

  • ou=Computers
  • ou=Printers

Neue Windows-PCs erstellen in ou=Computers

  • Die folgende Änderung an /etc/smbldap-tools/smbldap.conf anwenden:

    --- smbldap.conf.orig
    +++ smbldap.conf
    @@ -124,7 +124,7 @@
     # Where are stored Computers
     # Ex: computersdn="ou=Computers,dc=IDEALX,dc=ORG"
     # Warning: if 'suffix' is not set here, you must set the full dn for computersdn
    -computersdn="ou=winstations,ou=systems,${suffix}"
    +computersdn="ou=winstations,ou=systems,ou=Computers,${suffix}"
     
     # Where are stored Groups
     # Ex: groupsdn="ou=Groups,dc=IDEALX,dc=ORG"

Konfigurationsanpassungen (ITZkS-spezifisch) am TJENER

Killer Script deaktivieren

Das Killer Script tötet leider (vergl. Debian Bug #648219) laufende x2goagent Instanzen. Auf dem ITZkS Tjener wird das killer Skript daher aktiviert. Der Hauptserver wird in IT-Zukunft Schule nur von Systemadministrator/innen genutzt, insofern ist das deaktiveren von killer hier unkritisch.

root@tjener:/# diff -u /etc/cron.hourly/killer.orig /etc/cron.hourly/killer
--- /etc/cron.hourly/killer.orig        2012-08-24 13:10:14.000000000 +0200
+++ /etc/cron.hourly/killer     2012-08-24 13:10:20.000000000 +0200
@@ -1,3 +1,3 @@
 #!/bin/sh
 
-if [ -x /usr/sbin/killer ] ; then /usr/sbin/killer; fi
+#if [ -x /usr/sbin/killer ] ; then /usr/sbin/killer; fi

Squid-Proxy auf proxy-only Modus umstellen

  • Im ITZkS-Setup übernimmt die Firewall (gateway.intern) das Cachen und Filtern von Webinhalten. Hierfür wird der Squid-Proxy auf TJENER in den Modus proxy-only versetzt.

    $ editor /etc/squid/squid.conf
    #       WELCOME TO SQUID 2.7.STABLE9
    #       ----------------------------
    #
    #       This is the default Squid configuration file. You may wish
    #       to look at the Squid home page (http://www.squid-cache.org/)
    #       for the FAQ and other documentation.
    #
    
    [...]
    
    #  TAG: cache_peer
    #       To specify other caches in a hierarchy, use the format:
    #
    #               cache_peer hostname type http-port icp-port [options]
    #
    #       For example,
    #
    #       #                                        proxy  icp
    #       #          hostname             type     port   port  options
    #       #          -------------------- -------- ----- -----  -----------
    #       cache_peer parent.foo.net       parent    3128  3130  proxy-only default
    #       cache_peer sib1.foo.net         sibling   3128  3130  proxy-only
    #       cache_peer sib2.foo.net         sibling   3128  3130  proxy-only
    
    [...]
    
    acl INSIDE dstdomain .intern
    always_direct allow INSIDE
    never_direct allow all
    cache_peer gateway.intern       parent    3128  0  proxy-only default
    
    [...]

Nur Admin-User dürfen sich auf TJENER einloggen

Schul-Admins und IT-Dienstleister tragen wir in der LDAP-Gruppe admins ein. Die Gruppe wird automatisch bei der Hauptserver-Installation angelegt (und darf im LDAP-Baum nicht verschoben werden).

/!\ Wichtig: Der Haupt-Server TJENER darf ein Login nur für Schul-Admins und Dienstleister erlauben. Hierfür müsen 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 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

Erweiterte ACLs und Quotas auf Dateisystemen

Alle Mountpoints, auf denen Bentuzer/innen im Debian Edu Schreibzugriff erhalten sollten in der Lage sein, erweiterte ACLs zu verstehen. Hierfür müssen für die entsprechenden Mountpoints Eintragungen in /etc/fstab vorgenommen werden. Ferner aktivieren wir auf allen solchen Mountpoints Filesystem-Quotas (ohne diese wirklich zu nutzen, Quotas dienen im ITZkS-Projekt vornehmlich dem schnellen Überblick über User- oder Gruppen-basierte Auslastungen der Dateisysteme). Auch hierfür müssen Eintragungen in /etc/fstab vorgenommen werden.

Die im folgenden aufgeführten Einträge sollten in TJENER's /etc/fstab bereits existieren, es müssen lediglich die Optionen acl und usrquoate bzw. grpquota nachgetragen werden:

# /etc/fstab: static file system information.
[...]
/dev/mapper/vg_home-skole+tjener+home0 /skole/tjener/home0 ext3    nosuid,usrquota,acl          0       2
/dev/mapper/vg_home-skole+tjener+home1 /skole/tjener/home1 ext3    nosuid,usrquota,acl          0       2
/dev/mapper/vg_system-skole+tjener+group0 /skole/tjener/group0 ext3 nosuid,grpquota,acl 0 2
/dev/mapper/vg_system-skole+tjener+group1 /skole/tjener/group1 ext3 nosuid,grpquota,acl 0 2
/dev/mapper/vg_system-skole+tjener+transfer /skole/tjener/transfer ext3 nosuid,usrquota,acl 0 2
[...]
/skole/tjener/home0          /srv/nfs4/home0    none    bind,usrquota,acl       0       0
/skole/tjener/home1          /srv/nfs4/home1    none    bind,usrquota,acl    0       0
/skole/tjener/group0         /srv/nfs4/group0   none    bind,grpquota,acl    0       0 
/skole/tjener/group1         /srv/nfs4/group1   none    bind,grpquota,acl    0       0 
/skole/tjener/transfer       /srv/nfs4/transfer none    bind,usrquota,acl    0       0

Zusätzlich müssen die Pakete acl und quota auf TJENER installiert werden:

$ sudo apt-get install acl quota

Nach einem Neustart des Hauptservers sind dann die Volumes entsprechend gemountet. Während des nächsten Systemstarts werden dann auch die Verzeichnisquoten wie in /etc/fstab eingetragen überprüft. Dieser Vorgang wird etwas Zeit in Anspruch nehmen.

PXE-basierten Debian Installer anpassen

Eine für ITZkS vorkonfigurierte (deutsche) PXE Boot-Umgebung für den Debian Installer auf TJENER ist im Paket itzks-systems-mainserver enthalten. Nach Installation des Pakets muss dieser Anleitung gefolgt werden:

$ zcat /usr/share/doc/itzks-systems-mainserver/examples/README.tftp.gz

Diese Installationsanleitung ist auch online verfügbar: http://code.it-zukunft-schule.de/gitweb?p=itzks-systems.git;a=blob;f=examples/mainserver/README.tftp

Die einzelnen Schritte sind:

  • README.tftp befolgen (s.o.)
  • Firmware Binaries aus Debian squeeze non-free im PXE D-I integrieren:

    $ sudo /usr/share/debian-edu-config/tools/pxe-addfirmware

Weitere Notizen

### SCRATCHPAD!!! ###

        GOSA:
        login: Superadmin
        Systeme:
                Bsp: client-0101.intern
                IP: 10.0.2.101
                MAC: 
                DHCP, DNS aktivieren
                
                ltspserver00.intern
                IP: 10.0.2.10
                MAC:
                DHCP, DNS aktivieren
        LTSPserver Einträge in GOSA     
        Benutzer anlegen:
                Teacher
                Namen
                Kennung bestätigen
                Basis: Teacher
                OK
                PW setzen

IT-Zukunft Schule: Technik/Installation/VM/HauptServerTjener/Jessie (zuletzt geändert am 2016-11-09 12:57:35 durch MikeGabriel)