{{Hardware
-|kontakt=[[Benutzer:Kasalehlia|Kasalehlia]], [[Benutzer:Daniel Bohrer|Daniel Bohrer]]
+|kontakt=<span></span>
+* {{Benutzer|drc}} für PrivateBin,
+* {{Benutzer|comawill}} für Kalender,
+* [[Benutzer:Daniel Bohrer|Daniel Bohrer]] für alles andere
|status=working
|ort=[[endor]]
-|beschreibung=VM für MediaWiki und ZeroBin
+|beschreibung=VM für PHP/CGI-Dienste (MediaWiki, Paste, Dudle) und statische Dateien
}}
== SSH-Keys ==
== Doku ==
* Debian jessie, systemd
* 2 GB RAM
-* Platte: 8 GB <tt>/</tt>, 30 GB <tt>/srv</tt>
+* Platte: 8 GB <tt>/</tt>, 128 GB <tt>/srv</tt>
* 4 CPU-Cores
* internes Netzwerk via DHCP
* HTTP kommt über [[gandolf]] als (SSL-)Proxy
+** Subdomains kommen von [[gandolf]] mit Host-Header, werden hier auf regolas auch als eigene Subdomains in <tt>/etc/nginx/sites-enables/*.stratum0.org</tt> geführt
+* Mail per <tt>ssmtp</tt>
+
+Services, nach Subdomains getrennt:
+
+=== <tt>stratum0.org</tt> ===
+Alles, was statisch direkt im Webroot liegen kann, sowie Wiki als Hauptseite. Webroot in /srv/www/webroot, von dort aus meist Symlinks.
+
+* MediaWiki
+** https://stratum0.org/mediawiki/index.php, https://stratum0.org/wiki/ als Rewrite-Alias
+** Dateien in /srv/www/mediawiki-<version>, Extensions in /srv/www/mediawiki-extensions, Medien in /srv/www/mediawiki-images
+** siehe auch: /srv/www/UPGRADING-MEDIAWIKI.markdown
+** OpenLayers für die OpenStreetMap-Karten unter [[Anfahrt]] in /srv/www/openlayers
+** Abhängigkeiten:
+*** Core: <tt>nginx php-fpm php-apcu php-intl php-gd php-mbutils php-xml php-mysql mariadb-server</tt>
+*** Für SVG/PDF-Support: <tt>librsvg2-bin ghostscript poppler-utils</tt>
+*** Für die MediaWiki-Wartungsskripte: <tt>php-cli</tt>
+* Blog
+** statische Dateien von [[bogomir]] (GitLab-CI) per rsync nach <tt>/srv/www/blog-preview/<i>$branchname</i></tt>
+*** <tt>/srv/www/blog-preview/master</tt> → https://stratum0.org/blog
+*** <tt>/srv/www/blog-preview/preview</tt> → <nowiki>https://stratum0.org/blog-preview/preview</nowiki> (don't use, broken links!) → https://sandbox.stratum0.org/blog von [[gandolf]] via Reverse Proxy
+*** (funktioniert prinzipiell für alle Branches, aber nur <tt>preview</tt> und <tt>master</tt> sind im Moment nach außen richtig verdrahtet. Problem dabei sind absolute Pfade im Blog-Setup auf <tt>/blog/…</tt>, sodass für jeden Branch im Prinzip eine eigene Domain nötig wäre.)
+** Abhängigkeiten: <tt>openssh-client</tt>
+* Kalender
+** Python-Bot in /home/comawill/stratum0-calendar, läuft als User comawill alle 10 Minuten via User-crontab
+** Bot tut statische Dateien nach /srv/www/webroot/kalender/
+** Abhängigkeiten: <tt>python2.7</tt>
+* Recordings von [[Vorträge]]n
+** statische Dateien in /srv/www/webroot/recordings (direkt im Webroot)
+
+=== <tt>paste.stratum0.org</tt> ===
+
+PrivateBin als Paste-Service
+* PrivateBin 1.1 in /srv/www/privatebin, verschlüsselte Daten in /srv/www/privatebin-data
+* Abhängigkeiten: <tt>nginx php-fpm php-gd</tt>
+
+=== <tt>data.stratum0.org</tt> ===
+
+Stratum 0 Open Data Portal™
+
+* https://data.stratum0.org von [[gandolf]] als Proxy nach http://regolas/data.stratum0.org
+* statische Dateien von [[theodem]] kommen per rsync (Unix-User theodem-rsync via SSH-Key) nach /srv/www/data.stratum0.org/
+* Abhängigkeiten: <tt>openssh-client</tt>
+
+=== <tt>dudle.stratum0.org</tt> ===
+
+Dudle zur Terminabstimmung
+* Source als Git in <tt>/srv/www/dudle</tt>
+** Updates bitte mit sudo. Es gibt keine Tags, nur direkt den master #yolo.
+* FastCGI auf <tt>/srv/www/dudle/*.cgi</tt> über <tt>/run/fcgiwrap.socket</tt> (via systemd socket activation)
+** neue Umfragen werden nach <tt>/srv/www/dudle/<i>slug</i>/*</tt> als Git-Repo angelegt
+* Cleanup nach 90 Tagen über <tt>/etc/cron.daily/dudle-cleanup.sh</tt>
+* Abhängigkeiten: <tt>nginx fcgiwrap spawn-fcgi ruby ruby-gettext git </tt>
+** Für Updates: <tt>gettext potool make</tt>
+* FIXME: access control https://github.com/kellerben/dudle/issues/76
== Log ==
+* PrivateBin auf 1.1.1 aktualisiert --[[Benutzer:Drc|drc]] ([[Benutzer Diskussion:Drc|Diskussion]]) 20:11, 14. Dez. 2017 (CET)
+* nginx-Konfigurationen auf eigene Subdomains aufgetrennt, ist nun übersichtlicher. --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 00:52, 28. Aug. 2017 (CEST)
+* Neu: http://dudle.stratum0.org --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 00:52, 28. Aug. 2017 (CEST)
+* Debian jessie → stretch Upgrade. Highlights: PHP 7.0, MySQL → MariaDB, nginx 1.10.3, systemd 232, OpenSSH 7.4p1, Python 3.5. --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 22:20, 27. Aug. 2017 (CEST)
+* ZeroBin durch den aktiven Fork [https://privatebin.info/ PrivateBin] ersetzt. Bestehende Bins sollten weiterhin funktionieren. --[[Benutzer:Drc|drc]] ([[Benutzer Diskussion:Drc|Diskussion]]) 14:02, 26. Aug. 2017 (CEST)
+* MediaWiki: Patch SyntaxHighlight_GeSHi extension [https://github.com/wikimedia/mediawiki-extensions-SyntaxHighlight_GeSHi/commit/2d5a60a89fb3995b73e17df5901d6f023e41df3d], see [https://phabricator.wikimedia.org/T158689 T158689] --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 23:17, 30. Apr. 2017 (CEST)
+* Neues favicon.ico von blinry --[[Benutzer:Valodim|Valodim]] ([[Benutzer Diskussion:Valodim|Diskussion]]) 07:17, 27. Mär. 2017 (CEST)
+* Update MediaWiki 1.28.0 --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 00:34, 30. Nov. 2016 (CET)
+** <tt>StratumFixes</tt> und <tt>UploadWizard</tt>-config wieder in LocalSettings.php integriert
+** i18n durch Systemnachrichten im MediaWiki-Namensraum abgebildet statt durch i18n/<lang>.json.
+*** Dabei [[MediaWiki:Mwe-upwiz-license-pd-old]] (und [[MediaWiki:Mwe-upwiz-license-pd-old/en]]) als "generelle Public Domain"-Kategorie zweckentfremdet
+** ⇒ Weniger Plugin-Infrastruktur für i18n nötig.
+* ZeroBin in <tt>/srv/www/zerobin.git</tt>, dessen Daten liegen in <tt>/srv/www/zerobin-data</tt>. --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 02:54, 3. Apr. 2016 (CEST)
+* Upgrade auf Debian 8.3 --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 22:18, 25. Jan. 2016 (CET)
+* [[Vorträge/Vorbei|Vortrags-Aufzeichnungen]] von meinem Server nach <tt>/srv/www/webroot/recordings/</tt> verschoben --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 22:39, 18. Dez. 2015 (CET)
+* Patch mediawiki-1.25.4 [https://www.mediawiki.org/wiki/Release_notes/1.25#MediaWiki_1.25.4][https://lists.wikimedia.org/pipermail/mediawiki-l/2015-December/045123.html] --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 22:23, 18. Dez. 2015 (CET)
+* Captchas für angemeldete Benutzer mit bestätigter Mailadresse abgeschaltet --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 18:52, 9. Dez. 2015 (CET)
+* Patch mediawiki-1.25.3 [https://www.mediawiki.org/wiki/Release_notes/1.25#MediaWiki_1.25.3][https://lists.wikimedia.org/pipermail/mediawiki-l/2015-October/044854.html], failing hunks in <tt>vendor/autoload.php.rej</tt> und <tt>vendor/composer/autoload_real.php.rej</tt> ignoriert, die einen Klassennamen mit einer UUID durch eine andere UUID austauschen wollten ([https://lists.wikimedia.org/pipermail/mediawiki-l/2015-October/044867.html siehe mediawiki-l]). Bisher läufts. --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 22:20, 21. Okt. 2015 (CEST)
+** hab zur Sicherheit die entsprechenden Dateien aus dem Release-Tarball von 1.25.3 genommen. --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 22:20, 21. Okt. 2015 (CEST)
+* Patch mediawiki-1.25.2 [https://www.mediawiki.org/wiki/Release_notes/1.25#MediaWiki_1.25.2], additional patches:
+** [https://gerrit.wikimedia.org/r/#/c/224826/ Change-Id: Id6e60d42]: XSS in <tt>extensions/SyntaxHighlight_GeSHi/geshi/contrib/cssgen.php</tt>
+
+* <tt>/srv</tt> auf 128 GB aufgebohrt, um da auch mal größere Sachen hinlegen zu können. --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 04:28, 1. Aug. 2015 (CEST)
* unattended-upgrades eingerichtet, erstmal nur aus debian-security. siehe <tt>/etc/apt/apt.conf.d/02.periodic</tt> und <tt>/etc/cron.daily/apt</tt> für Doku --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 01:28, 23. Mai 2015 (CEST)
* Initial setup. -- shoragan, rohieb, 20. Mai 2015 (CEST)