Host:nixe.k4cg.org: Unterschied zwischen den Versionen
Noqqe (Diskussion | Beiträge) (→OS) |
Noqqe (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 25: | Zeile 25: | ||
Was bedeutet das? | Was bedeutet das? | ||
Du möchtest was an der Mailingliste ändern? -> NixOS Config! | Du möchtest was an der Mailingliste ändern? -> NixOS Config! | ||
Du willst einen neuen vHost anlegen? -> NixOS Config! | Du willst einen neuen vHost anlegen? -> NixOS Config! | ||
Du willst einen neuen User anlegen? -> NixOS Config! | Du willst einen neuen User anlegen? -> NixOS Config! | ||
=== IPv6 === | === IPv6 === | ||
Wir haben mal wieder eine IPv6 Adresse. | |||
In /etc/nixos/configuration.nix | |||
<pre> | |||
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 ; } ]; | |||
}; | |||
</pre> | |||
=== Wiki === | === 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 | |||
<pre> | |||
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"; | |||
} | |||
]; | |||
}; | |||
</pre> | |||
Das sieht am Anfang verwirrend aus, aber wenn man sich auf der [https://nixos.org 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 === | === HTTPS === | ||
Zeile 40: | Zeile 92: | ||
Die Zertifikate befinden sich unter | Die Zertifikate befinden sich unter | ||
nixe:/etc/ssl | nixe:/etc/ssl/ | ||
Ein extra Account bei StartSSL dafür empfand ich als Overhead. | Ein extra Account bei StartSSL dafür empfand ich als Overhead. | ||
Zeile 46: | Zeile 98: | ||
=== Mailingliste === | === Mailingliste === | ||
Die Mailingliste besteht aus mlmmj und postfix. Bedient wird alles über das NixOS Modul mlmmj. | |||
==== mlmmj ==== | ==== mlmmj ==== | ||
Zeile 82: | Zeile 134: | ||
und zwar nach: | und zwar nach: | ||
nixe:/backups | nixe:/backups/* | ||
Das Backup wird über Rsnapshot und Mysqldump geregelt. | |||
=== Offsite Backup === | |||
Außerdem werden alle Backups nochmal offsite auf die Heimat transferiert | Außerdem werden alle Backups nochmal offsite auf die Heimat transferiert |
Version vom 1. Oktober 2015, 18:16 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!
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/