ThinClients in der IVV7



Ähnliche Dokumente
Nutzung der VDI Umgebung

ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Eschenweg Weiterstadt

Laufwerke unter Linux - Festplatten - - USB Sticks - September 2010 Oliver Werner Linuxgrundlagen 1

SFTP SCP - Synology Wiki

OP-LOG

Installation Messerli MySQL auf Linux

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

Update Messerli MySQL auf Linux

Wheelmouse-Konfiguration

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0)

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Workshop: Eigenes Image ohne VMware-Programme erstellen

Installation Linux agorum core Version 6.4.5

Über die Internetseite Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

Installationsanleitung für pcvisit Server (pcvisit 12.0)

zur WinIBW Version 2.3

Installieren Sie den Janaserver auf dem Schulserver oder dem Lehrerrechner.

Installation / Update für die P aketdatenbank 1.x (Version )

Automatisierte Installation der ESXi Hosts (z.b. für Disaster Recovery).

Installation Messerli MySQL auf MAC OS X

Installation Linux agorum core Version 6.4.8

Bedienungsanleitung. FAST SMS Set mit MacOS betreiben MAC

Wissenswertes über LiveUpdate

Handbuch PCI Treiber-Installation

Dateisystem 1, Suchpfad, Befehlstypen

Dateisystem 1, Suchpfad, Befehlstypen

Tutorial -

Live Update (Auto Update)

Installationsanleitung unter Windows

Installationsanleitung für pcvisit Server (pcvisit 15.0)

0. VORBEMERKUNG VORBEREITUNG DES SYSTEMS INSTALLATION UND KONFIGURATION VON PD-ADMIN Installation...3

Installation SQL- Server 2012 Single Node

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Installation des GeoShop Redirector für Apache (Stand ) ================================================================

Firewalling. Michael Mayer IAV0608 Seite 1 von 6

ISA Server 2004 Einzelner Netzwerkadapater

Planung für Organisation und Technik

Formular»Fragenkatalog BIM-Server«

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Patch Management mit

Konfiguration von Igel ThinClients fu r den Zugriff via Netscaler Gateway auf eine Storefront/ XenDesktop 7 Umgebung

Technische Alternative elektronische Steuerungsgerätegesellschaft mbh. A-3872 Amaliendorf, Langestr. 124 Tel +43 (0)

INSTALLATION. Voraussetzungen

How-to: Webserver NAT. Securepoint Security System Version 2007nx

KEIL software. Inhaltsverzeichnis UPDATE. 1. Wichtige Informationen 1.1. Welche Änderungen gibt es?

INSTALLATION VON INSTANTRAILS 1.7

Installations-Dokumentation, YALG Team

Schritt-Schritt-Anleitung zum mobilen PC mit Paragon Drive Copy 10 und VMware Player

In 15 einfachen Schritten zum mobilen PC mit Paragon Drive Copy 10 und Microsoft Windows Virtual PC

Anleitung zum Prüfen von WebDAV

Wo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite

Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista

Die Installation von D-Link WLAN Karten unter Windows Vista

Firewalls für Lexware Info Service konfigurieren

Internet online Update (Mozilla Firefox)

B4 Viper Connector Service Installationsanleitung Stand:

METTLER TOLEDO USB-Option Installation der Treiber unter Windows XP

AnNoText. AnNoText Online-Update. Copyright Wolters Kluwer Deutschland GmbH

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

PC-Kaufmann Supportinformation - Proxy Konfiguration für Elster

TechNote. Produkt: TWINFAX 7.0 (ab CD_24), TWINFAX 6.0 Modul: SMTP, T611, R3 Kurzbeschreibung: Briefpapier- und Mailbodyunterstützung

Konfiguration Firewall (Zyxel Zywall 10) (von Gruppe Schraubenmeier)

In 12 Schritten zum mobilen PC mit Paragon Drive Copy 11 und Microsoft Windows Virtual PC

ATB Ausbildung Technische Berufe Ausbildungszentrum Klybeck

Betriebssystem Windows - SSH Secure Shell Client

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

Dokumentation für Windows

Lexware professional und premium setzen bis einschließlich Version 2012 den Sybase SQL-Datenbankserver

QUALIFIZIERUNG VON SYSTEMBETREUERINNEN UND SYSTEMBETREUERN. BartPE-BUILDER AKADEMIE FÜR LEHRERFORTBILDUNG UND PERSONALFÜHRUNG DILLINGEN

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser

Guide DynDNS und Portforwarding

Signierte s mit Mozilla Thunderbird

Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen

Anleitung Captain Logfex 2013

Eprog Starthilfe. 5. Oktober Einleitung 2

Adminer: Installationsanleitung

Installationsanleitung für Update SC-Line

Knoppix-Remastering Workshop

Leitfaden für die Installation des Content Management System (CMS) Joomla! auf za-internet Webservern. Die Joomla! Installation

Migration Howto. Inhaltsverzeichnis

Um über FTP Dateien auf Ihren Public Space Server - Zugang laden zu können benötigen Sie folgende Angaben:

Samsung Large Format Display

ecaros-update 8.2 Update 8.2 procar informatik AG 1 Stand: DP 02/2014 Eschenweg Weiterstadt

Installation/Einrichtung einer Datenbank für smalldms

Paragon Online WinPE Builder Service

Voraussetzungen und Installation

Initramfs - The initial RAM filesystem

FIREBIRD BETRIEB DER SAFESCAN TA UND TA+ SOFTWARE AUF MEHR ALS EINEM COMPUTER

INDEX. Öffentliche Ordner erstellen Seite 2. Offline verfügbar einrichten Seite 3. Berechtigungen setzen Seite 7. Öffentliche Ordner Offline

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der IBOConsole

Mac OS X G4 Prozessor 450 MHz (G5- oder Intelprozessor empfohlen) 512 MB RAM. zusätzliche Anforderungen Online-Version

Powermanager Server- Client- Installation

Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5

Anleitung zur Nutzung des SharePort Utility

TechNote: TWINFAX Protokollierungen aktivieren

- Installation. Systemvoraussetzungen für Debian/Ubuntu. conversations installieren conversations wird als TGZ-Archiv mit dem Namen

Transkript:

ThinClients in der IVV7 Oliver Baltz <info@oliverbaltz.de> 23.1.2004 Erstauflage 25.11.2005 Dynamische Zuweisung der Startseiten Anpassung des TFTP Pfades Wegfall des PXE Servers 1

Inhaltsverzeichnis 1 Einleitung 2 Installation 2.1.1 Erstellen eines Client Dateisystems 2.1.2 Kompilieren eines ThinClient Kernels 2.2 Konfiguration des ThinClients 2.2.1.1 /etc/init.d/s01 make rw filesystem 2.2.1.2 /etc/init.d/s02 start network 2.2.1.3 /etc/init.d/s03 firewall 2.2.1.4 /etc/init.d/s04 keymap 2.2.1.5 /etc/init.d/s05 define homepage 2.2.1.6 /etc/init.d/s06 start kiosk 2.2.1.7 /etc/x11/xf86config 4 2.2.1.8 /etc/init.d/s07 check kiosk 2.2.2 Firefox 2.2.3 Abschließende Änderungen am Dateisystem 2.2.4 Nachträgliches Bearbeiten des ThinClient Dateisystems 2.2.5 Die Netzwerkkarte des ThinClients 2.3 NIC_online 2.4 TFTP Server 2.4.1 Installierte Hard und Software 2.4.2 Konfiguration 2.5 Proxy Server 2.5.1 Installierte Hard und Software 2.5.2 Konfiguration 3 Schlusswort 2

1.1 Einleitung Die IVV7 suchte eine effektive Lösung, die Rechercherechner verschiedener Fachbereiche einfach zu administrieren. Wir entschieden uns für die PXE Boot Methode, bei der alle Clients über das TFTP Protokoll eine vereinfachte FTP Methode ihr gesamtes Betriebssystem über das Netzwerk in den Arbeitsspeicher laden. Diese Methode ist: kostengünstig (für Server und Clients auf Linuxbasis fallen keine Lizenzgebühren an / alte Hardware kann verwendet werden) ausfallsicherer (da der Client völlig laufwerkslos ist, reduziert sich die Zahl der möglichen Fehlerquellen drastisch) zeitsparend (Änderungen am Betriebssystem müssen lediglich am zentralen Dateisystem vorgenommen werden) einfach skalierbar (weitere Clients können simpel in die ThinClient Landschaft aufgenommen werden) Der derzeitige ThinClient hat folgende Features: Debian Linux 2.4.32 (sarge Zweig) Dateisystem: 90 MB (im RAM des Clients entpackt 230 MB) Mozilla Firefox 0.93 2 Citrix MetaFrame Presentation Server Clients, Version 8 Macromedia Flash Player 7 HTTP Umleitung über transparenten Proxy restriktive iptables Firewall für eingehenden Datenverkehr Für den ThinClient kann folgende Hardware verwendet werden: CPU >= 400 Mhz Arbeitsspeicher >= 256 MB PXE fähige Netzwerkkarte keine Festplatte oder sonstige Laufwerke nötig Eine Übersicht der derzeitigen ThinClient Landschaft entnehmen Sie bitte der Anlage. 3

2 Installation Die nachfolgende Installationsanleitung richtet sich an erfahrene Linuxadministratoren. Gute Kenntnisse im Umgang mit der Distribution Debian werden vorausgesetzt! 2.1.1 Erstellen eines Client Dateisystems Erstellen und Mounten eines 300MB großes EXT3 Dateisystems: dd if=/dev/zero of=pxefs bs=1m count=300 mkfs.ext3 pxefs mkdir /mnt/pxefs mount o loop pxefs /mnt/pxefs Installieren eines schlanken und stabilen Debian Betriebssystems im neu erstellten Dateisystem mittels debootstrap: debootstrap sarge /mnt/pxefs In die neue Betriebssystemumgebung wechseln: chroot /mnt/pxefs Die Installationsumgebung anpassen: apt setup apt get update Die Datei /etc/inittab sollte folgendermaßen aussehen: id:2:initdefault: si::sysinit:/bin/mount t proc proc /proc l2:2:wait:/etc/rc 2 z6:6:respawn:/sbin/sulogin Erstellen eines Benutzers und einer Struktur für schreibbare Verzeichnisse: adduser kiosk mkdir /opt/home 4

2.1.2 Kompilieren eines ThinClient Kernels Dokumentation: ThinClients in der IVV7 Der ThinClient Kernel benötigt diverse zusätzliche Informationen, um mit RAM Disks umgehen zu können. Wir haben uns für einen stabilen 2.4.32 Kernel entschieden. Nutzt man die menuconfig Option, um die Kernelkonfiguration zu ändern, benötigt man zusätzlich folgende Kerneloptionen: Block devices <*> RAM disk support (4096) Default RAM disk size [*] Initial RAM disk (initrd) support File systems <*> Compressed ROM file system support Nun kann der Kernel auf die Hardware des ThinClients angepasst werden. Es empfiehlt es sich, den ThinClient Kernel möglichst schlank zu halten, indem wirklich nur benötigte Treiber ausgewählt werden. Anschließend wird der entsprechend konfigurierte Kernel kompiliert. Wichtig ist, dass der Installations Pfad für die kompilierten Module in das zuvor angelegte ThinClient Dateisystem zeigt. make dep bzimage modules modules_install INSTALL_MOD_PATH=/mnt/pxefs/ Das fertige bzimage muss nun dem TFTP Server als ThinClient Kernel zur Verfügung gestellt werden. cp arch/i386/boot/bzimage /var/lib/tftpboot/pxekernel 5

2.2 Konfiguration des ThinClients Dokumentation: ThinClients in der IVV7 Folgende Startskripte im Verzeichnis /etc/init.d werden nacheinander gestartet: S01 make rw filesystem S02 start network S03 firewall S04 keymap S05 define homepage S06 start kiosk S07 check kiosk 2.2.1.1 /etc/init.d/s01 make rw filesystem Dieses Startskript erstellt in der normalerweise nur lesbaren RAM Disk schreibbar gemountete Verzeichnisse des Typs tmpfs. #!/bin/sh #S01 make rw filesystem # Mount TMPFS /bin/mount t tmpfs o size=32768k tmpfs /var /bin/mount t tmpfs o size=32768k tmpfs /tmp /bin/mount t tmpfs o size=32768k tmpfs /home/kiosk # Create dirs in TMPFS /bin/mkdir p /var/lock /bin/mkdir p /var/log /bin/mkdir p /var/run /bin/mkdir p /var/tmp /bin/mkdir p /var/lib /bin/mkdir p /var/lib/xkb /bin/mkdir p /var/lib/dhcp # Make /etc writeable /bin/mkdir /tmp/etc /bin/cp dpr /etc/* /tmp/etc /bin/mount t tmpfs o size=4096k tmpfs /etc /bin/cp dpr /tmp/etc/* /etc /bin/rm Rf /tmp/etc # Create Mozilla`s TMPFS /bin/mount t tmpfs o size=32768k tmpfs /usr/lib/mozilla firefox /bin/cp dpr /opt/var/lib/mozilla firefox /var/lib/mozilla firefox /bin/cp dpr /opt/usr/lib/mozilla firefox/* /usr/lib/mozilla firefox /bin/cp dpr /opt/home/kiosk/.bash* /home/kiosk/ /bin/cp dpr /opt/home/kiosk/.mozilla /home/kiosk/ /bin/cp dpr /opt/home/kiosk/.fluxbox /home/kiosk/ /bin/chmod R 755 /home/kiosk/ /bin/chown R kiosk.kiosk /home/kiosk/ 6

2.2.1.2 /etc/init.d/s02 start network Dokumentation: ThinClients in der IVV7 Dieses Startskript setzt die Umgebungsvariable HOSTNAME und die vom DHCP Server gelieferten Netzwerkparameter des ThinClients. #!/bin/sh #S02 start network HOSTNAME=`cat /etc/hostname` /bin/hostname $HOSTNAME # Bring up the local loopback /sbin/ifconfig lo 127.0.0.1 /sbin/dhclient eth0 2.2.1.3 /etc/init.d/s03 firewall Ein iptables Skript blockiert bis auf die IP eines Monitoring Servers alle eingehenden Verbindungen. Außerdem veranlasst es den Client, sämtlichen HTTP Traffic über den Proxy ivv7proxy.uni muenster.de umzuleiten. Es handelt sich somit um einen für den ThinClient transparenten Proxy. iptables t nat A OUTPUT p tcp dport 80 j DNAT to <PROXY IP>:<PORT> 2.2.1.4 /etc/init.d/s04 keymap Um ein korrektes deutsches Tastaturlayout zu erhalten, muss ein Keymap Startskript existieren. Dazu muss ein symbolischer Link gesetzt werden: ln s /etc/init.d/keymap.sh /etc/rc2.d/s04 keymap 7

2.2.1.5 /etc/init.d/s05 define homepage Dokumentation: ThinClients in der IVV7 Da das ThinClient Dateisystem in mehreren Fachbereichen eingesetzt wird, die jedoch unterschiedliche Browser Startseiten einsetzen möchten, werden die Startseiten auf Grund des PTR DNS Eintrags dynamisch in der Firefox Konfiguration gesetzt. Alle Startseiten verweisen laut Skript auf die URL http://ivv7srv15.uni muenster.de/pxestart $HOSTID. Es werden alle Zahlen aus dem String des PTR Eintrags entfernt, damit ganze ThinClients Gruppen die gleiche Startseite wählen können. Ein Besipiel: Ein ThinClient der Erziehungswissenschaft den PTR Eintrag ewbib01.uni muenster.de. Somit wird die Startseite http://ivv7srv15.uni muenster.de/pxestart ewbib der Firefox Konfiguration angefügt. # This script gets the hostname and defines the correct Browser Homepage case "$1" in start) HOMEPAGE_FILE="/home/kiosk/.mozilla/firefox/default.886/prefs.js" # get ip IP=`ifconfig eth0 grep Bcast cut d ":" f 2 cut d " " f 1` # get hostname HOSTNAME=`host $IP grep Name cut d " " f 2 cut d "." f 1` # get first 3 bytes from hostname to define $HOSTID HOSTID=`echo $HOSTNAME sed s/[0 9]//g` # convert upper chars to lower (case sensitive webserver!) HOSTID=`echo $HOSTID tr [:upper:] [:lower:]` # write missing line to mozilla configuration echo user_pref\(\"browser.startup.homepage\", \"http://ivv7srv15.uni muenster.de/pxestart $HOSTID\"\)\; \ >> $HOMEPAGE_FILE exit 0 ;; stop) ;; *) echo "Usage: /etc/init.d/s05 define homepage {start stop}" exit 1 esac exit 0 8

2.2.1.6 /etc/init.d/s05 start kiosk Dokumentation: ThinClients in der IVV7 Nachfolgend wird das Startskript beschrieben, welches den Grafikkartenhersteller ausliest und die entsprechend angepasste XF86Config 4 lädt. Im Verzeichnis /etc/x11 liegen die Konfigurationsdateien im Format XF86Config 4.<VGAHERSTELLER>. Der X Server wird als Benutzer kiosk gestartet und hat somit stark eingeschränkte Systemrechte. #!/bin/sh #S05 start kiosk export http_proxy="http://ivv7proxy.uni muenster.de:8080" export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11 export LANG=de_DE@euro VGA=`lspci grep VGA cut d " " f 5` case "$1" in start) if [ "$VGA" == "Matrox" ]; then echo Whee! You do have a MATROX inside! su kiosk c "startx /usr/bin/fluxbox xf86config XF86Config 4.mga&" elif [ "$VGA" == "Silicon" ]; then echo Whee! You use a SIS VGA Adapter! su kiosk c "startx /usr/bin/fluxbox xf86config XF86Config 4.sis&" elif [ "$VGA" == "nvidia" ]; then echo Whee! You use a nvidia VGA Adapter! su kiosk c "startx /usr/bin/fluxbox xf86config XF86Config 4.nvidia&" elif [ "$VGA" == "ATI" ]; then echo Whee! You use a ATI VGA Adapter! su kiosk c "startx /usr/bin/fluxbox xf86config XF86Config 4.ati&" else echo Uuuhm. You use a $VGA VGA and I am going to use VESA VGA Modules! su kiosk c "startx /usr/bin/fluxbox xf86config XF86Config 4.vesa&" fi sleep 5 #wait for fluxbox to come up su kiosk c "export DISPLAY=":0"; exec /usr/bin/firefox height 200 &" exit 0 ;; stop) ;; *) echo "Usage: /etc/init.d/kiosk {start stop}" exit 1 esac exit 0 9

2.2.1.7 /etc/x11/xf86config 4 Hier ein Beispiel einer Konfigurationsdatei des X Servers. Speziell für die ThinClients wurde sie so angepasst, dass man sowohl USB, als auch PS/2 Mäuse mit dieser X Server Konfiguration benutzen kann. Section "InputDevice" Identifier "PS2 Mouse" Driver "mouse" Option "Device" "/dev/psaux" Option "Protocol" "ImPS/2" Option "Emulate3Buttons" "true" Option "ZAxisMapping" "4 5" EndSection Section "InputDevice" Identifier "USB Mouse" Driver "mouse" Option "Device" "/dev/input/mice" Option "Protocol" "ImPS/2" Option "Emulate3Buttons" "true" Option "ZAxisMapping" "4 5" EndSection Anpassen des ServerLayouts mit den geänderten InputDevices: Section "ServerLayout" Identifier "Default Layout" Screen "Default Screen" InputDevice "Generic Keyboard" InputDevice "USB Mouse" "CorePointer" InputDevice "PS2 Mouse" "SendCoreEvents" EndSection 10

2.2.1.8 /etc/init.d/s06 check kiosk Dokumentation: ThinClients in der IVV7 Es soll sichergestellt werden, dass für den Benutzer zu jeder Zeit ein geöffnetes Browserfenster zur Verfügung steht. Sobald der Browser Firefox gestartet ist, wird eine Lock Datei im Homeverzeichnis des Users angelegt (home/kiosk/.mozilla/firefox/default.886/lock). Auch der X Server legt nach erfolgreichem Start eine Lock Datei an (/tmp/.x0 lock). Alle 5 Sekunden wird in diesem Skript die Existenz der beiden Dateien geprüft und gegebenenfalls der Browser und/oder X Server neu gestartet. Es ist wichtig, dass dieses Skript zu allerletzt aufgerufen wird! #!/bin/sh #S06 check kiosk case "$1" in start) sleep 60 while true do FLUXBOX="/tmp/.X0 lock" FIREFOX="/home/kiosk/.mozilla/firefox/default.886/lock" if [! e $FLUXBOX ] then echo Restarting Fluxbox... /etc/init.d/s05 start kiosk start sleep 60 elif [! h $FIREFOX ] then echo Restarting Firefox... su kiosk c "export DISPLAY=":0"; exec /usr/bin/firefox&" sleep 10 fi sleep 5 done ;; *) echo "Usage: `basename $0` {start}" exit 1 ;; esac exit 0 11

2.2.2 Mozilla Firefox Der Browser Mozilla Firefox kann wie gewohnt installiert werden: apt get install mozilla firefox Alle zentralen Bowsereinstellungen können in der Datei /home/kiosk/.mozilla/firefox/default.886/prefs.js vorgenommen werden. Hier findet man z. B. die URL der Startseite. Dabei sollte man besonders auf die korrekt gesetzten Rechte dieser Dateien achten. Der User kiosk muss Lese und Schreibrechte besitzen. Für das Flash Plugin gibt es in den contrib Sources ein Debianpaket. apt get install flashplugin nonfree 2.2.3 Abschließende Änderungen am Dateisystem Nach Abschluss aller Änderungen am Dateisystem müssen die Verzeichnisse /usr, /var und /home nach /opt verschoben werden, damit das Startskript /etc/init.d/s01 make rw filesystem diese später zurück auf schreibbare Verzeichnisse der RAM Disk verschieben kann. mv /home/kiosk /opt/home/ mv /usr /opt/ mv /var /opt/ Um ein schlankes Dateisystem zu erhalten, empfiehlt es sich, den Inhalt des Verzeichnisses /var zu entfernen. Man benötigt die Inhalte später noch, um z.b. nachträglich Pakete installieren zu können. 12

2.2.4 Nachträgliches Bearbeiten des ThinClient Dateisystems Um nachträglich Änderungen am aktuellen Dateisystem vornehmen zu können, muss man das komprimierte zunächst mounten, um anschließend in einer chroot Umgebung an einer Kopie arbeiten zu können: mkdir /mnt/pxefs mount o loop pxefs /mnt/pxefs cp r preserve=all /mnt/pxefs /opt/ umount /mnt/pxefs chroot /opt/pxefs 2.2.5 Die Netzwerkkarte des ThinClients Der ThinClient funktioniert in Kombination mit den derzeitigen DHCP, und TFTP Servern zuverlässig in der PXE Version 2.0 und dem Build 083. Im Betrieb sind derzeit die Karten Intel Pro 100 und 3COM 3C905CX TX M. Intel Pro 100 Netzwerkkarten lassen sich problemlos flashen. Unter der URL http://downloadfinder.intel.com/scripts df/license_agr.asp?url=/6100/eng/pxe20 pdk.exe wird der Intel Boot Agent zum Download angeboten. Kopiert man die Dateien aus dem Verzeichnis bin namens e100_m.nic und futil.exe auf eine Windows Bootdiskette, kann man mit dem Kommando futil e100_m.nic das EPROM der Netzwerkkarte leicht flashen. 2.3 NIC_online Durch das Eintragen der ThinClients in der NIC_online Anwendungsumgebung PXE IVV07 werden ihnen zusätzliche DHCP Parameter mitgegeben, die die IP des nächsten PXE Servers mitteilen. Zum Heranbooten an den TFTP Server werden die 2 Parameter Server host name (Option 66) und Boot filename (Option 67) benötigt. Zuständig für das Erstellen einer Anwendungsumgebung ist das ZIV. 13

2.4 TFTP Server Der TFTP Server stellt über das TFTP Protokoll dem anfragenden ThinClient den Bootloader pxelinux bereit. Der Bootloader muss zuvor via apt installiert und in das TFTP Pub kopiert werden: apt get install syslinux cp /usr/lib/syslinux/pxelinux.0 /var/lib/tftpboot/ Die Konfigurationsdatei des Bootloaders findet sich im Verzeichnis /var/lib/tftpboot/pxelinux.cfg. In derdatei default finden sich Informationen über den Ort von Dateisystem und Kernel für den ThinClient. Weiterhin wird hier definiert, dass die Files für den ThinClient in einer RAM Disk abgelegt werden sollen. Eine erste Bootmessage, die der Client beim Starten anzeigen soll, kann hier ebenfalls definiert werden. 2.4.1 Installierte Hard und Software OS: Debian Linux CPU: Intel Pentium III RAM: 256 MB Debian Pakete: tftpd hpa (v0.39 1) 2.4.2 Konfiguration Der TFTP Dämon wird über den Internet Super Server gestartet. In der /etc/inetd.conf wurde folgende Zeile hinzugefügt: tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd s /var/lib/tftpboot Nun wird der Internet Super Server neugestartet: /etc/init.d/inetd restart Die Datei /var/lib/tftpboot/x86pc/pxelinux/pxelinux.cfg/default wurde folgendermaßen angepasst: DISPLAY ivv7.msg LABEL linux kernel pxekernel append initrd=pxefs root=/dev/ram0 ramdisk_blocksize=4096 ramdisk=153600 Eine Bootmessage kann in der Datei /var/lib/tftpboot/pxelinux.cfg/ivv7.msg definiert werden. 14

2.5 Proxy Server Der Squid HTTP Proxy überprüft sämtlichen Internet Datenverkehr auf Port 80. Es handelt sich um einen transparenten Proxy, da er nicht gezielt in der Browserkonfiguration angegeben werden muss. Der URL Filter basiert auf einer Textdatei namens whitelist.txt. Diese Whitelist akzeptiert durch Zeilenumbrüche getrennte URLs in folgenden Formaten: www.uni muenster.de.uni muenster.de www. www.uni muenster.de/ivv7 Whitelist kann von Hand oder auch per Skript gepflegt werden. Die IVV7 pflegt diese Liste über ein PHP Skript, welches alle 5 Minuten aus einer MySQL Datenbank die URLS ausliest und bei Änderungen eine neue whitelist.txt generiert. 2.5.1 Installierte Hard und Software OS: Debian Linux CPU: Intel Pentium III RAM: 512 MB Debian Pakete: squid (v2.56) 2.5.2 Konfiguration Nachfolgend die Konfigurationsdatei /etc/squid/squid.conf: #/etc/squid/squid.conf #System settings http_port 8080 hierarchy_stoplist cgi bin? acl QUERY urlpath_regex cgi bin \? no_cache deny QUERY visible_hostname ivv7proxy.uni muenster.de coredump_dir /var/spool/squid #be transparent httpd_accel_host virtual httpd_accel_port 80 httpd_accel_with_proxy on httpd_accel_uses_host_header on refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern. 20% 4320 #Access Control Lists acl all src 0.0.0.0/0.0.0.0 acl localhost src 127.0.0.1/255.255.255.255 acl whitelist url_regex i "/etc/squid/whitelist.txt" 15

Unser nachfolgendes Skript liest aus einer MySQL Datenbank die URL Whitelist aus. Eine zentrale IVV7 Administrationsoberfläche pflegt auch diese Datenbank. Mit dem nachfolgenden Skript lässt sich der Inhalt einer MySQL Datenbank in eine Datei schreiben. #!/usr/bin/php4 <?php //DATABASE mysql_connect("mysql SERVER","USERNAME","PASSWORD") or die ("Mysql Connecect failed"); mysql_select_db("database") or die ("Database could not be opened"); //VARIABLES $FILENAME = '/etc/squid/whitelist.txt'; $handle = fopen($filename, 'w'); $query=mysql_query("select allowedurl FROM whitelist"); while ($url=mysql_fetch_array($query)) { fwrite($handle,"$url[0]\n"); } fclose($handle);?> 3 Schlusswort Möchten Sie ebenfalls auf ThinClients setzen, fragen Sie uns ruhig um Rat. Wir sind Ihnen bei der Umsetzung gerne behilflich. Abschließend möchten wir uns besonders bei Herrn Ketteler Eising vom ZIV bedanken, der durch seine unermüdliche Konfigurationsarbeit am universitären DHCP Server maßgeblich zum Erfolg des ThinClient Projekts beigetragen hat. 16