== Installationshinweise: Debian Edu / Skolelinux Haupt-Server ''TJENER'' == <> === Download von Debian Edu (squeeze) === Für die Installation von Debian Edu (squeeze) wird ein aktuelles DVD-Installationsmedium benötigt:<
>http://ftp.skolelinux.org/skolelinux-cd/ Bitte vor Download einen Blick auf die Debian Edu (squeeze) Status-Seite im Debian-Wiki werfen:<
>http://wiki.debian.org/DebianEdu/Status/Squeeze /!\ '''Wichtig:''' Der Skolelinux-Hauptserver wird __immer__ von der Debian Edu DVD installiert!!! Das ISO-Image in /home/locadm/iso-images ablegen. === Erstellen der VM: tjener.intern === Der Haupt-Server des Debian Edu / Skolelinux Netzwerks wird als virtuelle Maschine auf dem [[Technik/Installation/VirtServer|Virtualisierungs-Server]] {{{virt-man-01}}} bereitgestellt/installiert. * Grafisch unter dem Login {{{locadm}}} am Server {{{virt-man-01}}} anmelden * Das Programm {{{virt-manager}}} starten ==== Anlegen einer neuen VM / Basisinstallation TJENER ==== 1. In {{{virt-manager}}} auf das Symbol ''Neue Virtuelle Maschine erstellen'' klicken * Name: {{{tjener.intern}}} * Installation von lokalem Installations-Medium * ISO-Abbild: das heruntergeladene Debian Edu DVD-Image * Betriebssystem: Linux, Debian squeeze * Speicher: 2Gb * CPUs:2 * Speicher (=virtuelle Festplatte) wählen: Klick auf den Button ''Durchsuchen'': Volume Group: {{{vm-slow-vg}}}, Logical Volume: {{{tjener.intern_sda}}} * Netzwerkschnittstelle unter erweiterte Optionen auswählen: ''specify shared device name:br1'' * Fertigstellen 1. Eine virtuelle Monitorkonsole erscheint, es wird der Boot-Screen der Debian Edu CD angezeigt... * 64-bit Install (Boot-Screen der Installations-DVD) * ''Warten, Debian Edu Installer lädt...'' * Sprache und Tastatur: Deutsch (3x auswählen und bestätigen) * Debian Edu Installationsprofil: Hauptserver * Automatische Partitionierung: Ja * Erfassung der Paketverwendung ({{{popularity-contest}}}: Ja * Kennwort für den Super-User {{{root}}} festlegen * Initialen Benutzer anlegen, z.Bsp. Login für einen der ITZkS-Mitarbeiter oder den Schul-Admins ==== Extra-Storage (LVM) bereitstellen ==== Für Home-Verzeichnisse stellt der Virtualisierungsserver {{{virt-man-01}}} eine RAID mit schnellen SAS-Festplatten bereit. Diese wurden bei der [[Technik/Installation/VirtServer|Installation]] von {{{virt-man-01}}} bereits vorbereitet. ===== auf VIRT-MAN-01 ===== * TJENER herunterfahren * das Programm {{{virt-manager}}} öffnen * Konfiguration der VM {{{tjener.intern}}} öffnen * im weißen Bereich (Geräteliste) rechte Maustaste klicken: Hardware hinzufügen: ein neues Unterfenster * im weißen Bereich (Gerätetypen) Klick auf Storage * ''Verwalteten oder anderen Speicher wählen'' markieren, dann Klick auf Button ''Durchsuchen'': neues Unterfenster * Auswahl des Storage Pools {{{vm-fast-vg}}} * dort: {{{tjener.intern_sdb}}} auswählen, Klick auf ''Datenträger wählen'' * Unterfenster schließt * Gerätetyp: Virtio Disk * Cache mode: default * Storage format: * Klick auf Button ''Abschließen'' * TJENER wieder starten ===== 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 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:{{{ $ 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 $ mkfs.ext3 /dev/vg_home/skole+tjener+group0 [...] $ mkfs.ext3 /dev/vg_home/skole+tjener+group1 [...] $ mkfs.ext3 /dev/vg_home/skole+tjener+transfer [...] }}} 1. Die Datei {{{/etc/fstab}}} anpassen: a. Diese Zeile löschen:{{{ /dev/mapper/vg_home-skole+tjener+home0 /skole/tjener/home0 ext3 nosuid 0 2 }}} a. Die folgenden Zeilen hinzufügen:{{{ /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 0 2 /skole/tjener/home0 /srv/nfs4/home0 none bind 0 0 /skole/tjener/home1 /srv/nfs4/home1 none bind 0 0 /skole/tjener/group0 /srv/nfs4/group0 none bind 0 0 /skole/tjener/group1 /srv/nfs4/group1 none bind 0 0 /skole/tjener/transfer /srv/nfs4/transfer none bind 0 0 }}} ====== Home-Verzeichnisse ====== {{{ /skole/tjener/home0 /skole/tjener/home1 /skole/tjener/group0 /skole/tjener/group1 }}} === TJENER mit dem Internet verbinden === * '''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 === 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}}} 1. Standard-Editor festlegen (an der Unix-Console){{{ $ update-alternatives --config editor: vim.basic }}} 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 * F10: Editor beenden ==== Software nachinstallieren aus Debian squeeze ==== 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 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:{{{ $ startx }}} ==== Paket-Quellen für Debian squeeze-backports und ITZkS hinzufügen ==== {{{ $ editor /etc/apt/sources.list.d/itzks.list """ deb http://packages.it-zukunft.schule.de/debian squeeze main deb http://packages.it-zukunft.schule.de/debian squeeze-backports main """ $ apt-get update && apt-get install itzks-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. ==== Software nachinstallieren aus Debian squeeze-backports ==== Einige Programme sollen auf TJENER aktueller sein als in Debian squeeze.{{{ $sudo apt-get install iceweasel }}} ==== X2Go installieren ==== {{{ $ editor /etc/apt/sources.list.d/x2go.list """ deb http://packages.x2go.org/debian squeeze main """ $ apt-get update && apt-get install x2go-keyring && apt-get update }}} Aus diesen Quellen werden die folgenden Pakete installiert:{{{ $ 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. === GOsa²-Baumstruktur erweitern/ergänzen === Spätestens jetzt muss grafisch unter GNOME weiter gearbeitet werden, damit in GOsa² die im folgenden beschriebenen Anpassungen durchgeführt werden können. ==== 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. Aufrufen von Iceweasel, einloggen in GOsa² unter http:///www/gosa (mit initialem User aus der Debian Installation des TJENERs). 1. Abteilungen -> Aktionen: Anlegen > Abteilung a. Name der Abteilung: {{{IT-Administration}}} a. Beschreibung: {{{IT-Dienstleister am/an der }}} a. mit Button '''Ok''' bestätigen ===== User-Template: newitstaff ===== 1. Benutzer -> Aktionen: Anlegen > Vorlage a. '''Reiter: Allgemein''' i. Name der Vorlage: {{{newitstaff}}} i. Basis: /IT-Administration i. Organisation: {{{IT-Zukunft Schule Team}}} i. Telefon: {{{+49 (431) 24855-0}}} i. Ort: {{{Kiel}}} i. Land: {{{Schleswig-Holstein}}} i. Adresse:{{{ c\o Logo EDV-Systeme GmbH Holtenauer Str. 96 24105 Kiel }}} a. '''Reiter: Unix''' i. Klick auf Button: ''POSIX Einstellungen hinzufügen'' i. Basisverzeichnis: {{{/skole/tjener/home1/%uid}}} i. Gruppen hinzufügen: {{{admins}}}, {{{gosa-admins}}}, {{{jradmins}}}, {{{nonetblk}}} a. '''Reiter: Samba''' i. Klick auf Button: ''Samba Einstellungen hinzufügen'' i. Basisverzeichnis: {{{\\tjener\%uid}}}, Basislaufwerk: {{{U:}}} i. Anmeldeskript: {{{logon-teachers.bat}}} i. Profilpfad: {{{\\tjener\%uid\.ntprofile}}} ==== Samba Home-Laufwerk von H: auf U: versetzen ==== 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 }}} 1. In GOsa² die Template {{{NewTeacher}}} and {{{NewStudents}}} anpassen: * Reiter: Samba * Allgemain, Basisverzeichnis: \\tjener\%uid, als Laufwerksbuchstaben [ U: ] auswählen ===== Konten für IT-Dienstleister anlegen ===== FIXME! ===== Container für Schüler/innen nach Jahrgängen ===== Unter ou=Students acht bzw. neun OUs erstellen, die die Benutzerkonten aller Schüler/innen sortiert nach Jahrgang beinhalten werden: * Name der OU: (d.h. 2011, 2010, 2009, ...) * Beschreibungstext der OU: ''Zugangsjahr des Jahrgangs'' ===== Container für Computer bereitstellen ===== Basis-OUs für Computer und Drucker erstellen: * ou=Computers * ou=Printers In ou=Computers Container für Computer (z.Bsp. Räume) erstellen, die sich an den Begebenheiten der Schule orientieren: * z.Bsp. * ou=Computer-Raum 1 * ou=Computer-Raum 2 * ou=Bibliothek * immer erstellen: * ou=Notebooks (mobile Geräte innerhalb der Schule) * ou=Fachschaften (Geräte, die in den Fachschaften der Schule kursieren) ==== 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" }}} ==== Verschiedene DHCP-Gruppen für unterschiedliche PXE-Boot-Menüs anlegen ==== FIXME: Genaue Beschreibung erstellen Unterhalb von ,,Subnetz 10.0.0.0" neue DHCP-Gruppen mit GOsa² erstellen... {{{ next-server: disklserver Name: diskless-workstations, Pfad: /diskless+x2go/pxelinux.0 Name: ubuntu-workstations, Pfad: /ubuntu+x2go/pxelinux.0 Name: x2go-thinclients, Pfad: /x2go-tce/pxelinux.0 Name: diskless-and-localdisk-workstations, Pfad: /diskless+localdisk+x2go/pxelinux.0 Name: skolelinux-workstations, Pfad: /skolelinux+x2go/pxelinux.0 Name: windows-workstations, Pfad: /windows+x2go/pxelinux.0 }}} === Konfigurationsanpassungen (ITZkS-spezifisch) am TJENER === ==== 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 [...] 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 muss die Datei {{{/etc/security/access.conf}}} angepasst werden:{{{ --- access.conf.orig +++ 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 }}} ==== Erweiterte ACLs und Quotas auf Dateisystemen ==== FixMe: Genaue Doku schreiben. === 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 }}}