Änderungen

Zur Navigation springen Zur Suche springen
11.877 Bytes entfernt ,  14:28, 3. Jul. 2013
rootserver v1 entfernt
Zeile 407: Zeile 407:  
exit(0);
 
exit(0);
 
</pre>
 
</pre>
  −
=Über den Root-Server / Technik=
  −
*Es handelt sich um einen virtuellen Root-Server mit Debian als Betriebssystem.
  −
*der neue Rootserver steht in Berlin und ist eine alte HP Proliant-Gurke:
  −
  −
* HP ProLiant DL360 Server G3, 19" Ausführung,  1 Höheneinheit
  −
** 2x Intel Xeon 2.8 GHz, 533 MHz/512 kB Cache
  −
** 4 GB RAM
  −
** 2 x 72.8 GB Hot Swap Ultra320 SCSI Festplatten 10.000 RPM
  −
** RAID-Controller HP Smart Array 5i Plus mit 64 MB Cache und Akkupack
  −
** CD-ROM
  −
** 3.5" Diskettenlaufwerk
  −
** 2 redundante Netzteile
  −
** 2 x PCI-X Steckplätze
  −
** 1 x SATA-Controller
  −
** 1000 Gigabyte SATA-Festplatte
  −
  −
*Sound:
  −
** unerträglich laut (SCSI@10.000 RPM)
  −
  −
*Anschlüsse:
  −
** 2 x Gigabit LAN, VGA, seriell, 2x USB, iLO, PS/2 Maus und Tastatur
  −
** angepriesen als "guter Zustand - absolut staubfrei aus DATA-Center"
  −
  −
==Kosten==
  −
* Anschaffung Ende 2009 zum Preis von 140 Euro + 10 Euro SATA-Controller + 70 Euro SATA-Festplatte
  −
* Kosten im RZ Berlin (http://in-berlin.de) fuer das Housing: 25 Euro/Monat, davon tragen 15 Euro einige Vereinsmitglieder
  −
* domain weimarnetz.de = 1 Euro / Monat
  −
** wird vom weimarnetz-Konto monatlich abgebucht
  −
  −
==Setup==
  −
* am 26. Januar 2011 brachten andi, storchi und michi in einer halsbrecherischen Nacht- und Nebelaktion den Server ins Rechenzentrum nach Berlin
  −
* Stromversorgung
  −
** redundantes Netzteil zugunsten einer günstigen Festplatte entfernt
  −
** zweites Netzteil ist in Berlin, damit es bei Bedarf getauscht werden kann
  −
* Netzwerk
  −
** Domains: root.weimarnetz.de auf eth0?, ilo.weimarnetz.de auf iLO
  −
** benötigen 10 IP: 1 eth0, 1 iLO, 8 Gäste, erste Gast-IP: 77.87.48.18/28
  −
* Festplattenkonfiguration
  −
** 2x 72 GB SCSI-Platten im RAID 1 (sind die im Server original verbauten Platten)
  −
** 1x 1,0TB (zu klein!) im Server "verlegt" und an SATA-PCIe-Karte angeschlossen
  −
* Betriebssystem
  −
** Wirt: Ubuntu 10.04 LTS Lucid Lynx
  −
** Gast-Template unter /home/weimarnetz/skeleton angelegt, Start mit
  −
*** ''linux udba=$dateiname umid=$user mem=400M con=null eth0=tuntap,tap1 &''
  −
** Gastbetriebssystem: Debian lenny
  −
** max. 8 Gastsysteme, je 400 MB RAM, je 6 GB HDD auf RAID1, Datenpartition auf Pornoplatte: Größe = (Gesamt * 0,8)/8 = 100GB
  −
** pro Gast eine feste, öffentliche IP
  −
** pro Gast ein Nutzer für SSH und UML
  −
** jeder Nutzer erhält die Möglichkeit seine eigene Maschine zu starten und zu beenden, kein sudo
  −
** Neustart Wirtssystem nur für bestimmte Nutzer
  −
** Gast als UserModeLinux, "Skelett" wird bereitgestellt, automatischer Start (per init-skript pro Gast)
  −
** Anleitung für UML unter Ubuntu: https://help.ubuntu.com/community/UserModeLinux <== die geht nicht, überhaupt bekommt man Ubuntu 10.04 nicht als UML-Gast zum laufen
  −
* Gäste
  −
** jeder Gast hat ca. 100 Gigabyte Datenplatz + 7 Gigabyte Systemplatte (Quota)
  −
** ''77.87.48.19'' weimarnetz.de (config siehe weiter unten)
  −
** ''77.87.48.20'' Storchi (cs)
  −
** ''77.87.48.21'' Andi (ab)
  −
** ''77.87.48.22'' - ''fe80::fcfd:ff:fe00:4/64'' Basti (bb)
  −
** ''77.87.48.23'' Findi (tf)
  −
** ''77.87.48.24'' Sveni (sam)
  −
** ''77.87.48.25'' freenet heiko (hf)
  −
** ''77.87.48.26'' Stephan (sj)
  −
* IP-Konfiguration
  −
** '''eth0''', feste, öffentliche IP
  −
*** Nutzung des oberen Anschlusses
  −
*** IP-Adresse: kommt per ''DHCP''
  −
*** Netz: ''77.87.48.16''
  −
*** Netzmaske: ''255.255.255.240'' =/28 = 14 IP-Adressen + Netz + Gateway = 16
  −
*** Gateway: ''77.87.48.17''
  −
** '''eth1''':
  −
*** untagged IN-Berlin: ''217.197.91.138''
  −
*** tagged Freifunk-VLAN mit bridge 77.87.48.18 = tag1300
  −
**** dadurch sind alle Gäste per Bridge mit dem Freifunk-VLAN verbunden
  −
** '''iLO'''
  −
*** '''i'''ntegrated '''L'''ights '''O'''ut
  −
*** IP-Adresse: ''217.197.91.137''
  −
*** Domain: ''ilo.weimarnetz.in-berlin.de''
  −
*** Subnetmask: ''255.255.255.192'' =/26
  −
*** Gateway:    ''217.197.91.129''
  −
*** DNS-1: ''192.109.42.41''
  −
*** DNS-2: ''192.109.42.42''
  −
*** ermöglicht:
  −
**** Zugriff direkt auf Konsole
  −
**** Ein- und Ausschalten der Stromversorgung
  −
**** Mounten von Imagedateien
  −
**** passwortgeschützt und verschlüsselt
  −
  −
=== Todo ===
  −
** IP-Adressen setzen:
  −
*** für Freifunk-VLAN (2. Karte und Guests: 77.87.48.16/28, .18 bis .30 für die Geräte)
  −
** Startscripts für UML-Maschinen (siehe hier: http://www.jjoseph.org/linux_work/user_mode_linux_and_gentoo) ==> beispielhaft erledigt für weimarnetz-maschine
  −
** Datenpartitionen
  −
** Nutzer anlegen und Dateien kopieren (root_fs pro Nutzer und Datenpartition)
  −
** Vertrag mit IN-Berlin abschließen ==> erledigt
  −
** Domain umziehen: läuft, wird erledigt, wenn Server in Berlin
  −
  −
=== Wirt: Hauptrechner ===
  −
* user: weimarnetz
  −
** ''root''-Rechte entzogen
  −
** SSH-Login als ''root'' gesperrt
  −
* Schritte um eine neue UML-Maschine anzulegen:
  −
** Kopieren der Datei /media/daten/uml/uml-root_skel (enthält das RootFS) vorzugsweise in das Homeverzeichnis (schnelle Platten im RAID 1)
  −
** Erzeugen einer Datenpartition in ''/media/daten/$username'' mit
  −
*** ''dd if=/dev/zero of=$username-loopdev.bin bs=10M count=9200''
  −
** Kopieren der Optionsdatei ''/media/daten/uml/uml_default_settings'' nach ''/uml/uml_$username''
  −
*** eindeutige MAC vergeben
  −
*** Pfade zu den Dateien für das RootFS (UBDA) und die Datenpartition (UBDB) anpassen
  −
*** Nutzer- und Maschinennamen anpassen
  −
** Erzeugen eines Links ''/etc/init.d/uml_$username'' auf ''/etc/init.d/uml_startstop''
  −
* Schritte danach:
  −
** IP-Adresse (standardmäßig auf DHCP) muss auf statische gesetzt werden, IP-Verteilung siehen oben
  −
** Root-Passwort ändern!
  −
** Hostname setzen in /etc/hostname und /etc/hosts (FQDN)
  −
** Rechenzentrum IN-Berlin empfiehlt: Installation apticron, sucht nach Updates und versendet eine Mail wenn neue Updates vorliegen
  −
* Möglichkeit für "externe" swap-Partition in Init-Script eingebaut
  −
**UBDC_OPT=
  −
**[ -w $UBDC ] && UBDC_OPT="ubdc=$UBDC"
  −
* Gäste benutzen den shared memory des Hosts mit der Grösse=$MEM -> 8 x 400M
  −
** ==> FUNZT NICHT: der shared mem des Hosts ist per default Ram(4GB) / 2 -> irgendwann knallts -> /etc/default/tmpfs auf 4GB gestellt
  −
** Größe im Betrieb verändern: mount -o remount,size=4G /dev/shm
  −
** Eintrag in fstab erfolgt: tmpfs      /dev/shm      tmpfs  defaults,size=4g  0  0 ==> jetzt ist tmpfs nach dem Reboot sofort richtig eingestellt
  −
* Wegen Zeitabweichung ntp installiert und gestartet
  −
  −
=== Gäste allgemein ===
  −
* Konfiguration unter
  −
/uml/uml_$nutzername
  −
* Datenpartition einbinden
  −
** jeder Nutzer kann seine Daten im Verzeichnis ''/media/daten/$nutzername'' haben (dauert ca. 20min@75mb/s)
  −
dd if=/dev/zero of=/media/daten/bb/bb-loopdev.bin bs=10M count=9200
  −
** Rechte an dieser Datei setzen, sonst kann jeder Gast diese Datei mounten!
  −
** Eintrag in ''/etc/fstab'' oder
  −
** Device node auf Gast erzeugen als root mit
  −
mknod /dev/ubdb b 98 16
  −
mount /dev/ubdb /.../...
  −
* Swap erstellen
  −
dd if=/dev/zero of=swap.bin bs=1M count=64
  −
** manuelles einbinden:
  −
mkswap swap.bin
  −
swapon swap.bin
  −
** bzw. einbinden in ''/etc/fstab''
  −
* Netzwerk konfigurieren in ''/etc/network/interfaces''
  −
auto eth0
  −
        iface eth0 inet static
  −
        address 77.87.48.xx
  −
        netmask 255.255.255.240
  −
        gateway 77.87.48.17
  −
* DNS einrichten in ''/etc/resolv.conf''
  −
domain lan
  −
search lan
  −
nameserver 192.109.42.41
  −
nameserver 192.109.42.42
  −
* SSHd einrichten in ''/etc/ssh/sshd_config''
  −
** ''PermitRootLogin no''
  −
* Passwort setzen!
  −
passwd
  −
* backup des eigenen rootfsw machen:
  −
** mit df -h nachschauen, wieviel das rootfs belegt (z.b. 500 Megabyte)
  −
** maschine stoppen
  −
** ext3 rootfs in ext2 wandeln, um es später kleiner zu machen
  −
tune2fs -O ^has_journal /home/bb/uml_root_bb
  −
** checken
  −
e2fsck -f /home/bb/uml_root_bb
  −
** kleiner machen
  −
resize2fs /dev/sda1 500M
  −
** komprimieren und sichern
  −
lzma -9 /home/bb/uml_root_bb        # aus 500 Megabyte werden so 150 Megabyte
  −
cp /home/bb/uml_root_bb /home/bb/uml_root_bb.lzma.backup
  −
** ext3-journal wieder herstellen und filesystem wieder aufblasen:
  −
e2fsck -f /home/bb/uml_root_bb
  −
resize2fs /dev/sda1 6000M
  −
tune2fs -j /home/bb/uml_root_bb
  −
  −
=== Gast: weimarnetz ===
  −
* Root-Rechte entzogen
  −
** SSH-Login als root gesperrt
  −
* Swap eingerichtet
  −
* ejabberd
  −
** Paket installiert
  −
** Konfiguration von altem Server übernommen (/etc/ejabberd/ejabberd.cfg)
  −
** Datenbank auf neuen Server migriert, nach diesem Tutorial: http://www.ejabberd.im/migrate-host
  −
** Zertifikat vom alten Server kopiert
  −
* pyicqt
  −
** Paket installiert
  −
** Konfiguration von altem Server übernommen (/etc/pyicqt.xml.comf)
  −
* inn2
  −
** Paket installiert
  −
** /etc/news/incoming.conf übernommen - definiert die Server, die uns news schicken dürfen
  −
** /etc/news/newsfeeds - konfiguriert die Kopplung von Mailingliste und Newsgruppen sowie die Verteilung von News an befreundete Server
  −
** /etc/news/nntpsend.ctl - bestimmt Zeitpunkt der Synchronisation mit anderen Newsservern
  −
** /etc/news/readers.conf übernommen - setzt Berechtigungen
  −
** Nutzer freifunk übernommen
  −
** Dateien news2mail und mailpost in /usr/lib/news/bin vom alten Server übernommen. Diese Dateien bereiten Emails oder News für das jeweils andere System auf.
  −
** Sync nach dieser Anleitung eingerichtet: http://wiki.freifunk.net/Newsserver_einrichten
  −
** Paket procmail installiert
  −
* Webserver lighttpd
  −
** Paket lighttpd und php5-cgi installiert
  −
** module fastcgi, fastcgi-php, simple-vhost, auth aktiviert
  −
** index.php und Verzeichnis newsgroups (php-basierter Newsreader) vom alten Server kopiert
  −
* uml-utilities und vtun für tun/tap
  −
** Pakete installiert
  −
** Kernel 2.6.37 neu kompiliert mit TUNTAP-Unterstützung für VPN-Tunnel, die .config entspricht sonst der des anderen Kernels. Das zweite Image liegt unter /uml/kernel32-2.6.37_tuntap
  −
** eth0:0 in /etc/network/interfaces hinzugefügt mit Adresse 10.63.30.253
  −
** Konfigurations von altem Server übernommen:
  −
*** /etc/init.d/vpn ==> erstellt Netzwerkumgebung, schreibt olsr-config und startet VPN-Server, angepasst für eth0:0
  −
*** /etc/olsrd.conf_head ==> enthält allgemeine Einstellungen
  −
*** startet automatisch in rc2.d: S21weimarnetz-vpn -> ../init.d/vpn
  −
** Router mit Internetzugang registrieren sich per Webanfrage an http://weimarnetz.de/freifunk/vpn/index.php (von altem Server übernommen. '''Achtung böser Hack:''' die Webanfragen vom alten Server werden derzeit per .htaccess-Regel auf den neuen Server umgeleitet. Alle Router (zumindest die mit Internetzugang) benötigen die neu gesetzte nvram-Variable für den Rootserver (komischerweise wird hier die IP genommen, vielleicht stellen wir das auf Domainname um) ==> per FW-Update erledigt
  −
** bei Registrierung wird Datei /tmp/vpnrestart angelegt, ein cron-job prüft alle 5 Minuten, ob die Datei existiert und startet das VPN-Script in diesem Fall neu
  −
* OLSRd
  −
** kompiliert und installiert
  −
** Extensions txt_info, dot_draw, dns kompiliert, installiert und eingerichtet
  −
** graphviz und imagemagick per apt-get installiert
  −
* Intercity VPN
  −
** quagga und tinc installiert
  −
** einrichtung nach dieser Anleitung: http://wiki.freifunk.net/IC-VPN
  −
* eingehende Email
  −
** exim4 durch postfix ersetzt
  −
  −
===Gast: ab ===
  −
* Update auf Debian Squeeze nach dieser Anleitung: http://www.go2linux.org/how-to-upgrade-from-debian-lenny-to-squeeze
  −
* auf den ersten Blick hat es funktioniert
  −
* Backup auf NAS nach http://www.notizbox.org/2010/08/howto-debian-5-0-lenny-mit-gpg-und-duplicity-verschlusseltes-backup-auf-ftp-server/
  −
** duplicity aber in aktueller Version kompiliert und installiert
  −
  −
==Auslastung==
  −
Die Auslastung des Rechners kann mit [[Serverlast_Howto|Jens seinem Skript]] kontrolliert werden.
  −
  −
Die Serverskripte bzw. Dateien
  −
[[/etc/init.d/vpn]]
  −
[[/etc/vtund.conf]]
  −
[[/etc/olsrd.conf_head]]
  −
sind Eigenentwicklungen.
  −
  −
==Gefrickel==
  −
Damit Änderungen am Server von Allen nachvollzogen werden können werden Bauarbeiten im [[Weimarnetz-Rootserver-log|Frickel-Logbuch]] dokumentiert.
  −
  −
[[Kategorie:Weimarnetz]]
  −
  −
==Zugang==
  −
* ticketsystem: https://kcm.keyweb.de
  −
** kundennummer: 24090
  −
** passwort: subsignal standard passwort
  −
* management-Konsole (reboot etc.): https://87.118.106.19:4643
  −
** login: root
  −
** passwort: ...
 

Navigationsmenü