NRW:Arbeitsgruppe/Technik/Dokumentation/Server/Installation
Aus Piratenwiki
< NRW:Arbeitsgruppe | Technik | Dokumentation
Version vom 4. September 2012, 06:41 Uhr von Mbraun (Diskussion | Beiträge)
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
Dienste: E-Mail | Lists | Webcache | Blogs | Wikimirror | Domains | RT | Mumble | LAN | Serverstatus
Inhaltsverzeichnis
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
- Language
- English
- Location
- Other / Europe / Germany
- Locales
- United States (en_US.UTF-8)
- Keymap
- German
- Configure network manually
- eth0
- Network configuration
- IP: 84.246.124.x
- Netmask: 255.255.255.224
- Gateway: 84.246.124.129
- Name server: 8.8.8.8
- Hostname: dienst.piratenpartei-nrw.de
- Root password
- Ein vorläufiges, sicheres Passwort
- User
- Beliebiger Voller name/Benutzername/Passwort, hier: "paul"
- Partition disks
- Guided - use entire disk
- All files in one partition
- Mirror
- Germany
- ftp.de.debian.org
- Kein Proxy
- Popcon
- Nein
- Tasksel
- Alles abwählen
- GRUB
- Install to master boot record: Yes
System einrichten
- Nützliche Systemsoftware installieren
apt-get install ssh less vim nullmailer deborphan logwatch resolvconf munin-node apticron
- Nullmailer
- Als Mailname den FQDN der Maschine eintragen, als Smarthost "mail.piratenpartei-nrw.de"
- Per "ssh root@IP" auf der Maschine anmelden
- Den bei der Installation erstellten Benutzer "paul" löschen
deluser paul rm -rf /home/paul
- Mit "apg" ein sicheres Passwort für den Benutzer "root" generieren und mit "passwd" vergeben
passwd root
- System auf den aktuellen Stand bringen
apt-get update && apt-get dist-upgrade && apt-get clean
- Datei "/etc/nullmailer/defaultdomain" erstellen mit dem Inhalt
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/cron.daily/apticron ändern, damit keine unnötigen Mails versendet werden
else
/usr/sbin/apticron > /dev/null 2>&1
- 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
- IPv6 für eth0 konfigurieren
iface eth0 inet6 static
address 2a01:1f8:1337:1::X
gateway 2a01:1f8:1337:1::1
netmask 64
- 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
Prüfen
- Die Maschine von einem externen System auf unnötig offene Ports überprüfen (z.B. nmap)