NRW:Arbeitsgruppe/Technik/Dokumentation/Server/Installation

Aus Piratenwiki
Wechseln zu: Navigation, Suche


ACHTUNG: Die Informationen hier im Wiki sind momentan nicht vollständig aktualisiert.
AG Technik NRW
Verwaltung: Übersicht | Protokolle | Dokumentation | FAQ
Dienste: E-Mail | Lists | Webcache | Blogs | Wikimirror | Domains | RT | Mumble | LAN | Serverstatus


Basisinstallation einer virtuellen Maschine

Alle Server und Dienste der AG Technik NRW laufen in eine virtualisierten Umgebung. Dabei kommt auf technischer Seite der Hypervisor KVM zum Einsatz, zur Verwaltung dient die Software "Proxmox". Die Images der virtuellen Maschinen werden über SAN eingebunden und können zur Optimierung der Auslastung zwischen den Servern dynamisch verteilt werden. Generell kommt die aktuell stabile Version der Debian-Distribution zum Einsatz.

Virtuelle Maschine erstellen

  • Login auf einer der Proxmox-Maschinen, es ist unerheblich auf welcher man sich anmeldet da es sich um einen Cluster handelt.
  • "Create VM" auswählen
  • Node
    • Proxmox-Maschine auf der die VM laufen soll
  • Name
    • Dienstname z.b. forum.piratenpartei-nrw.de
  • OS
    • Üblicherweise Linux 3.X/2.6 Kernel (l26)
  • CD/DVD
    • Storage: local
    • ISO Image: debian-x.x.x-amd64-netinst.iso
  • Hard disk
    • Bus: VirtIO
    • Storage: vmdisks-nearline
    • Disk size: Nach Bedarf
    • Hinweis: "vmdisks-nearline" legt das Festplattenabbild der VM auf einen schnellen HDD Storage. Dieser reicht für die allermeisten Dienste aus, nur bei wirklich anspruchsvollen Diensten "vmdisks-ssd" für SSD Storage wählen.
  • CPU
    • Sockets/Cores: Nach Bedarf
  • Memory
    • Nicht zu sparsam
  • Network
    • Bridged mode
    • Model: VirtIO
    • Bridge: vmbr0
  • VM auswählen und "Hardware" anklicken
    • Add network device
    • Bridge: vmbr1
    • Model: VirtIO
  • Console auswählen
  • Start auswählen

Betriebssystem installieren

  • Advanced options -> Expert install
  • Choose language
    • English
  • Location
    • Other / Europe / Germany
  • Locales
    • United States (en_US.UTF-8)
  • Additional locales
    • de_DE.UTF-8
  • System locale
    • en_US.UTF-8
  • Configure the keyboard
    • German
  • Detect and mount CD-ROM
    • continue, continue
  • Load installer components from CD
    • continue
  • Detect network hardware
  • Configure the network
    • continue
  • Primary network manually
    • eth0
  • Auto-configure networking
    • no
  • Network configuration
    • IP: 84.246.124.x
    • Netmask: 255.255.255.192
    • Gateway: 84.246.124.129
    • Name server: 8.8.8.8
    • continue
    • Hostname: dienst.piratenpartei-nrw.de
  • Set up users and passwords
    • Enable shadow passwords: yes
    • Allow login as root: yes
    • Root password: Ein vorläufiges, sicheres Passwort
    • Create a normal user account now: no
  • Configure the clock
    • NTP: yes
    • continue
    • Timezone: Europe/Berlin
  • Detect disks
  • Partition disks
    • Guided - use entire disk
    • All files in one partition
  • Install the base system
    • enter, enter
  • Configure the package manager
    • use a network mirror: yes
    • Protocol: http
    • mirror country: Germany
    • ftp.de.debian.org
    • Kein Proxy
    • use non-free software: no
    • use contrib software: no
    • continue
  • Select and install software
    • Popcon: no
    • setuid man: no
    • Tasksel: Alles abwählen
  • Install the GRUB boot loader on a hard disk
    • Install to the master boot record: yes
  • Finish the installation
    • is the system clock set to UTC: yes
    • continue

System einrichten

  • Nützliche Systemsoftware installieren
aptitude install openssh-server less vim nullmailer deborphan logwatch resolvconf munin-node apticron etckeeper bacula-fd
    • Nullmailer: Als Mailname den FQDN der Maschine eintragen, als Smarthost "mail.piratenpartei-nrw.de"
  • Per "ssh root@IP" auf der Maschine anmelden
  • Sicheres Passwort für den Benutzer "root" generieren und mit passwd setzen
  • git für etckeeper einrichten
 git config --global user.name "AG Technik"
 git config --global user.email "technik@piratenpartei-nrw.de"
  • System auf den aktuellen Stand bringen
aptitude update && aptitude full-upgrade && aptitude clean
  • Den Inhalt der Datei "/etc/nullmailer/defaultdomain" überprüfen, sie sollte folgenden Inhalt haben:
 piratenpartei-nrw.de
  • Empfänger für Logwatch ändern, dazu in der /usr/share/logwatch/default.conf/logwatch.conf folgendes ändern
MailTo = logwatch@mail.piratenpartei-nrw.de
  • Empfänger für Cron ändern, dazu in der /etc/crontab folgendes hinzufügen
MAILTO="root@mail.piratenpartei-nrw.de"
  • Datei "/etc/munin/munin-node.conf" bearbeiten und folgendes ändern
 allow ^192\.168\.42\.100$
 host 192.168.42.VMID
  • Datei /etc/apticron/apticron.conf bearbeiten und folgendes ändern
 EMAIL="security@mail.piratenpartei-nrw.de"
 NOTIFY_HOLDS="0"
 NOTIFY_NEW="0"
  • Datei "/etc/ssh/sshd_config" bearbeiten und folgendes ändern
 ListenAddress 192.168.42.VMID
 PasswordAuthentication no
  • Befehl "ssh root@localhost" ausführen und den hostkey mit "yes" akzeptieren, dann mit ctrl+c abbrechen
  • Datei "/root/.ssh/authorized_keys" erstellen und die gewünschten öffentlichen Schlüssel der Benutzer auf access.piratenpartei-nrw.de dort einfügen.
  • Einen vernünftigen Editor als default festlegen
update-alternatives --set editor /usr/bin/vim.basic
  • Datei "/etc/motd.tail" bearbeiten und mit folgendem login-banner ersetzen
      `/yyNNNNymNNdho:`
   `/dMho+y-      ./smNy-          Piratenpartei NRW - AG Technik
  +dNo: `yMdssssssso::-sNy-
`oMy-   -yMdhNMMMMMMMNy-+mm:       Host: dienst.piratenpartei-nrw.de
+My`     oM+ `hMMMMMMMMMs.mN-      Address: 84.246.124.x / 192.168.42.x
MN.      oM+  +MMMMMMMMMd /Ms      Admin: username@piratenpartei-nrw.de
Mo       oM+  sMMMMMMMMMh `hm.
Mh       oMo/sMMMMMMMMmh. `hm.     Status: !!! PRODUCTIVE !!!
mN.      oMNMMNddhoo:-.`  /Ms
:Nd.    `dNs/..```       .mN`
 :Nd-   .Ms            `+md:
  .sNy:  yy          `+mNo`
    .smmso/`     --ohmdo-
      `-/oydNNNNNhys/`


  • Datei "/etc/network/interfaces" bearbeiten und folgendes ändern
  • eth0 automatisch hochfahren
 auto eth0
  • eth1 für das interne Netzwerk konfigurieren
 auto eth1
 iface eth1 inet static
       address 192.168.42.VMID
       netmask 255.255.255.0
       network 192.168.42.0
       broadcast 192.168.42.255
  • VM auswählen und "Hardware" anklicken
    • CD/DVD Laufwerk löschen
  • "Optionen" auswählen
    • Start at boot: yes
  • System herunterfahren
halt
  • System neu starten

System bekannt machen

  • System in der IP Liste im Wiki auf der "Serverstatus" Seite eintragen
  • Maschine auf monitoring.piratenpartei-nrw.de in die /etc/munin/munin.conf einbinden
 [dienst.piratenpartei-nrw.de]
   address 192.168.42.VMID
   use_node_name yes
  • Maschine auf access.piratenpartei-nrw.de in die /etc/pp-servers eintragen
  • Eine Mail an die ML der AG Technik NRW schreiben um andere über die neue Maschine, ihren Zweck und ihren primären Administrator zu informieren

Zentrales Syslog aktivieren

  • Auf einem Debian System wird, sofern rsyslog verwendet wird, im Verzeichnis /etc/rsyslog.d/ die Datei centrallog.conf angelegt mit folgendem Inhalt:
 *.*             @192.168.42.108

Der rsyslog Daemon ist entsprechend neu zu starten.

Prüfen

  • Die Maschine von einem externen System auf unnötig offene Ports überprüfen (z.B. nmap)