Host:nixe.k4cg.org: Unterschied zwischen den Versionen

Aus k4cg.org
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
[[Kategorie:Dokumentationen]]
[[Kategorie:Dokumentationen]]
[[Kategorie:Hosts]]
[[Kategorie:Hosts]]
=== General ===
=== General ===



Version vom 16. März 2017, 23:31 Uhr


General

  • Hostname: nixe.k4cg.org
  • IP: 213.95.86.180
  • IPv6: 2001:780:124::42
  • Provider: noris network AG

Hostet:

  • Mailingliste k4cg@k4cg.org
  • https://k4cg.org - Wiki
  • Altes Wiki
  • Rezeptionistin IRC BOT
  • IRC Bounter
  • Tor Relay


OS

Wir betreiben hier ein NixOS. Warum? Wir sind ein Hackerspace und probieren neue Dinge aus.

NixOS zeichnet aus, dass es sehr einfach deklarativ zentral beschrieben wird, in nur einer einzigen Datei (theoretisch).

Was bedeutet das?

Du möchtest was an der Mailingliste ändern? -> NixOS Config!

Du willst einen neuen vHost anlegen? -> NixOS Config!

Du willst einen neuen User anlegen? -> NixOS Config!

Du willst einen neuen cron task anlegen? -> NixOS Config!

IPv6

Wir haben mal wieder eine IPv6 Adresse.

In /etc/nixos/configuration.nix

  networking = {
    hostName = "nixe.k4cg.org";
    nameservers = ["62.128.1.53"];
    hostId = "e0ca53c8";
    defaultGateway = "213.95.86.177";
    defaultGateway6  = "2001:780:124::1";
    enableIPv6 = true;
    interfaces.eno16780032.ip4 = [ { address = "213.95.86.180" ; prefixLength = 29 ; } ];
    interfaces.eno16780032.ip6 = [ { address = "2001:780:124::42" ; prefixLength = 64 ; } ];
  };

Wiki

Wir haben sowohl das alte, als auch das neue Wiki am laufen. Die Config dazu sieht in etwa so aus.

In /etc/nixos/services/wiki.nix

  services.httpd = {
    enable = true;
    enablePHP = true;
    hostName = "nixe.k4cg.org";
    adminAddr = "admin@k4cg.org";
    extraModules = [ "rewrite" ];
    virtualHosts =
    [ {
      documentRoot = "/var/www/k4cg.org";
      enableSSL = true;
      port = 443;
      hostName = "k4cg.org";
      serverAliases = [ "www.k4cg.org" ];
      adminAddr = "admin@k4cg.org";
      sslServerCert = "/etc/ssl/k4cg.org.crt";
      sslServerKey = "/etc/ssl/k4cg.org.key";
      sslServerChain = "/etc/ssl/intermediate-k4cg.org.crt";
    }
   ];
 };

Das sieht am Anfang verwirrend aus, aber wenn man sich auf der NixOS Site unter Options umsieht, findet sich zu jedem Punkt der gesamten Optionen eine Erklärung.

MariaDB

Das Backend für das Wiki ist in unserem Fall keine MySQL sondern eine MariaDB, was aber keinen Unterschied macht. Nichts spezielles konfiguriert. Nur Installiert.

HTTPS

Die Zertifikate für SSL stammen aus StartSSL, Account von noqqe. Diese werde ich verlängern, verifiziert durch die Mailadressen die in der Domain k4cg.org hinterlegt sind.

Die Zertifikate befinden sich unter

nixe:/etc/ssl/

Ein extra Account bei StartSSL dafür empfand ich als Overhead.

Mailingliste

Die Mailingliste besteht aus mlmmj und postfix. Bedient wird alles über das NixOS Modul mlmmj.

mlmmj

Die Mailinglisten Software mlmmj ist simpel und filebasiert. Das Homedirectory ist unter /var/spool/mlmmj/k4cg/

Logs anzeigen

less /var/spool/mlmmj/k4cg/mlmmj.operation.log 

Alle subscribers anzeigen

cat /var/spool/mlmmj/k4cg/subscribers.d/*

Weitere Mailadressen

Weitere Mailadressen die für den Betrieb oder Admin Tätigkeiten benötigt werden sind:

admin:          info
hostmaster:     info
postmaster:     info
info:           simon,noqqe,gpunkt,nico,seismo

Diese Aliase werden ebenfalls vom opensmtpd auf troll an die Zieladressen deliviered. Sollte jemand einen Mailalias benötigen, kann er gerne auf Benutzer:noqqe zukommen.

Backup

Gebackupped werden:

  • Mailingliste
  • Documentroot (wiki, Guenthers lustige Seiten)

und zwar nach:

nixe:/backups/*

Das Backup wird über Rsnapshot und Mysqldump geregelt.

Offsite Backup

Außerdem werden alle Backups nochmal offsite auf die Heimat transferiert

heimat:/home/backups/documentroot/*
heimat:/home/backups/mailinglist/*

Über Cronjobs auf der Heimat:

0  5  *  *  *  /usr/local/bin/rsync -avi root@troll.k4cg.org:/home/k4cg/mailinglist* /home/backups/mailinglist/
0  5  *  *  *  /usr/local/bin/rsync -avi root@troll.k4cg.org:/home/k4cg/documentroot* /home/backups/documentroot/