Unterschiede zwischen den Revisionen 1 und 93 (über 92 Versionen hinweg)
Revision 1 vom 2005-04-08 23:07:05
Größe: 3080
Autor: lars
Kommentar: neu!!!
Revision 93 vom 2023-08-19 18:22:04
Größe: 5832
Autor: phil
Kommentar:
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 1: Zeile 1:
[[TableOfContents]] ## page was renamed from FaxeDokumentation
{{attachment:sao.png}}
<<TableOfContents>>
= Überblick =
''systemausfall.org'' dient als Organisationsplattform für progressive Projekte. Detaillierte Infos dazu findest du auf den [[https://systemausfall.org/wikis/hilfe/|Hilfeseiten]]

Mit dieser Dokumentation des Projekts möchten wir unser Wissen veröffentlichen, um anderen Gruppen den Aufbau einer ähnlichen Infrastruktur zu erleichtern. So könnte sich idealerweise in jeder Region mit interessierten Menschen eine oder mehrere Gruppen bilden, die ähnliche Dienste für ihr Umfeld bereitstellen. Diese angestrebte dezentrale Struktur stellt für uns eine gute Mischung aus lokaler Vernetzung und übergreifendem Wissensaustausch dar.

Weitere Projekte mit ähnlicher Zielstellung sind beispielsweise:
 * https://immerda.ch
 * https://nadir.org
 * https://riseup.net
 * https://so36.net
 * https://systemli.org

Es gibt noch wesentlich mehr Projekte dieser Art. Eine Übersicht findest du [[https://help.riseup.net/en/security/resources/radical-servers|hier]].

= Ziele =
 * Bereitstellung von Werkzeugen, um die Arbeit von Projekten zu unterstützen, also beispielsweise:
  * sichere E-Mail-Accounts
  * (verschlüsselte) Mailinglisten
  * Veröffentlichung von Inhalten
  * Projektverwaltungstools
  * Wikis
 * Sicherheit des Systems gegenüber Angriffen mit technischen Mitteln ([[http://www.jargon.net/jargonfile/c/cracker.html|Cracker]])
 * Schutz der Verkehrsdaten unserer Nutzer_innen
 * Schutz der gespeicherten Daten unserer Nutzer_innen (bei Diebstahl, Beschlagnahmung, usw.)

= Konzept =
Die erste Inkarnation des ''systemausfall''-Servers war ein alter ''HP'' der ''[[http://www.nl.debian.org/ports/hppa/|PA-RISC]]''-Architektur mit 60 MHz und einer guten Netzanbindung. Dabei stießen wir im Laufe der Zeit auf folgende Probleme:
 * wir hatten keinen physischen Zugriff auf den Rechner - dies machte jedes Kernel-Upgrade ziemlich aufregend :)
 * für manche Dienste benötigten wir recht neue Software-Versionen und mussten somit das [[http://www.debian.org/releases/|Debian-stable]] System mit anderen ''releases'' vermischen - dies verkomplizierte Updates
 * durch die große Anzahl installierter Pakete mit gegenseitigen Abhängigkeiten fühlte sich das System im Laufe der Zeit zunehmend fragil an - Veränderungen gefährdeten die Stabilität
 * ein Eindringling hätte potentiell Zugriff auf alle Dienste des Servers erlangen können

Um diese Probleme bei der Neueinrichtung zu vermeiden, wollten wir den neuen Server modularer gestalten. Die Verwendung mehrerer getrennter Rechner kam jedoch aufgrund des Energieverbrauchs nicht in Frage.

Die Isolation der einzelnen Dienste lässt sich beispielsweise durch getrennte [[WikiPedia:Chroot|chroot-Umgebungen]] umsetzen. Dies stellt jedoch nur einen geringen Schutz dar, da es einem potentiellen Angreifer möglich ist, der chroot-Umgebung zu entkommen. Zudem würden beispielsweise alle Systeme die gleichen TCP-Ports teilen.

Wir haben stattdessen einige Jahre [[WikiPedia:User-mode_Linux|User-Mode-Linux]] genutzt, waren kurzzeitig bei WikiPediaDe:Xen und aktuell [[WikiPedia:Kernel-based_Virtual_Machine|KVM]].

Kurz gesagt: in dem realen Linux-System (dem ''Host'') werden mehrere selbständige Linux-Systeme (Gäste) gestartet. Jedes dieser Gast-Systeme verfügt über eine eigene virtuelle Netzwerk-Schnittstelle, um mit den anderen Gästen und dem Host zu kommunizieren.

= Dienste =
Auf den nachfolgenden Seiten dokumentieren wir die Einrichtung der von uns bereit gestellten Dienste.

 * [[FaxeMailServer|Mails und Listen]]
 * [[FaxeWebServer|Webserver]] -- Auslieferung von Webseiten
 * [[FaxeMoinWiki|Wikis]]
 * [[FaxeSubVersion|Versionsverwaltung mit subversion]]
 * [[Infinoted und Gobby unter Debian installieren|Infinoted und Gobby]] -- ein kollaborativer Text-Editor
 * [[LdapEinrichtung|Accountverwaltung]] mit LDAP

= Administration =
 * [[Icinga 2 unter Debian installieren|Systemüberwachung mit Icinga 2]]
 * [[Webdienste und Privatsphäre]] -- Konfiguration verschiedener Webdienste mit dem Blick auf die Privatsphäre
 * [[FaxeKonfigurationsManagement|Konfigurationsverteilung]] via [[http://ansibleworks.com|ansible]]
 * [[FaxeLogicalVolumeManagement|Kurzanleitung zum Umgang mit dem LVM auf]]
 * [[FaxeKVM|Hardwarevirtualisierung mittels qemu/kvm]]
 * FaxeKleinigkeiten
Zeile 4: Zeile 63:
= Alte Dokumente - nur noch teilweise gültig und ziemlich durcheinander =
 * [[Pootle]] -- Übersetzungsoftware
 * [[FaxeRouterWRT]] -- Bis ca. 2007: vor dem Server kümmert sich ein Linksys WRT54G um den Netzwerkzugang und die Paketfilterung
 * [[FaxeLXC]] -- Betriebssystemvirtualsierung mit Linux Containern
 * FaxeUpgrades -- Protokolle verschiedener Upgrades des Servers
 * [[FaxeUML]] -- bis Ende 2007 verwendete Virtualisierungslösung
 * FaxeTrac -- ist eine Problemverwaltungssoftware. Es ist primär auf die Unterstützung bei der Software-Entwicklung ausgerichtet, eignet sich aber auch für die Organisation allgemeiner Projekte.
 * FaxeKernel -- Ein selbstkompilierter [[http://debian.org|Debian/GNU Linux]] Kernel mit verschiedenen Patches fuer das [[UML-Host| UML-Host-]] und [[UML-Gastsysteme| UML-Gastsystem]].
 * FaxePolicy -- Richtlinien, nach denen wir versuchen, das System wartbar und konsistent zu halten.
 * FaxeZugangsKontrolle -- Beschreibung der Zungangsregeln
 * FaxeNeustart -- Schritte um den Server (neu) zu starten
 * FaxeBackup -- Wie fertige ich ein Backup an
 * [[UML-Gastsysteme]] -- Eine kurze Auflistung der Dienste sortiert nach den Servern.
 * MailServerAdministration - neue Nutzer und Domains ...
 * [[QMailInstallationHowto]] - die Einrichtung der Zukunftsmails
 * ssl-ZertifikatErstellung - ... und unsere CA
Zeile 5: Zeile 80:
= Überblick =

= Ziele =

= Konzept =

= Dienste =

== Mailserver ==
''[FaxeMailServer]''

Für unseren Mailserver haben wir folgende Kombination gewählt:
 * ''qmail'' für den Empfang, den Versand und die Zustellung
 * ''courier'' für die Abholung durch den Nutzer
 * ''ezmlm-idx'' als Mailinglisten-Software
 * ''sqwebmail'' ist eine schlanke [wiki:WikiPediaDe/Webmail Webmail-Oberfläche]
 * ''squirrelmail'' eine modulare Webmail-Oberfläche als Alternative zu dem eher einfachen ''sqwebmail''


== Web-Server ==
''[FaxeWebServer]''

[wiki:WikiPediaDe/Webserver Web-Server] sind für viele Bestandteile des Systems erforderlich, die primär eigentlich eine andere Aufgabe haben:
 * Mailserver: für die Webmail-Oberflächen
 * Wikis: benötigen naturgemäß einen Web-Server
 * Content Managenemt Systeme: werden über die Web-Schnittstelle genutzt
 * Versionsverwaltung : ''subversion'' arbeitet mit der Web-DAV-Schnittstelle
 * Nutzerverwaltung: wird über das Web-Schnittstelle verwendet

Damit alle Dineste über die [wiki:WikiPediaDe/Port_%28Protokoll%29 Standard-Ports] angesprochen werden können, verwenden wir den [wiki:WikiPediaDe/Load-balancing Lastverteilungsserver] [http://www.apsis.ch/pound/ Pound]. Er leitet jede Anfrage an den zuständigen Webserver weiter und fungiert gleichzeitig als SSL-Umsetzer.


== MoinMoin-Wiki ==
''[FaxeMoinWiki]''

MoinMoin ist eine [wiki:WikiPediaDe/Wiki Wiki-Implementation] in der [wiki:WikiPedia/Python_%28Programmiersprache%29 Programmiersprache ''python'']. Es ist modular und recht benutzerfreundlich gestaltet.


== Usemod-Wiki ==
''[FaxeUsemodWiki]''

[http://www.usemod.com/cgi-bin/wiki.pl Usemod] ist ein schlankes monolithisches Wiki. Es wurde in [wiki:WikiPediaDe/Perl perl] geschrieben und ist leicht zu installieren. Anpassungen sind jedoch meist nur durch [wiki:WikiPediaDe/Patch_(Unix) Patches] möglich.


== Subversion ==
''[FaxeSubVersion]''

[http://subversion.tigris.org/ Subversion] ist eine [wiki:WikiPediaDe/Versionsverwaltung Versionsverwaltungssoftware]. Wir haben uns für die Web-DAV-Schnittstelle zum Zugriff auf den Server entschieden, da hierfür keine shell-Accounts für die Nutzer notwendig sind.

-----

= Alte Dokumente - nur noch teilweise gültig =

 * CourierImapInstallation - courier-imap, maildrop, vpopmail und sqwebmail auf faxe
 * DocBookFormat - fuer Dokumentationen
 * EzmlmInstallationHowto - die Installation des Mailinglisten-Managers unter qmail
 * EzmlmAdministrationHowTo - die Einrichtung von Mailinglisten und so
 * JabberEinrichtung - Sozialkontakt-Schmutz mittels sauberer Technik
 * LdapEinrichtung - der allgemeine Verzeichnisdienst zur Authentifikation der Nutzer
 * MailServerAdministration - neue Nutzer und Domains ...
 * ["QMailInstallationHowto"] - die Einrichtung der Zukunftsmails
 * ["SVNhowTo"] - fuer gemuetliche Heimarbeit
 * ssl-ZertifikatErstellung - ... und unsere CA
 * WikiEinrichtung - ein kurzer Leitfaden zum Einrichten eines weiteren Wikis auf faxe
CategorySystemausfall

sao.png

Überblick

systemausfall.org dient als Organisationsplattform für progressive Projekte. Detaillierte Infos dazu findest du auf den Hilfeseiten

Mit dieser Dokumentation des Projekts möchten wir unser Wissen veröffentlichen, um anderen Gruppen den Aufbau einer ähnlichen Infrastruktur zu erleichtern. So könnte sich idealerweise in jeder Region mit interessierten Menschen eine oder mehrere Gruppen bilden, die ähnliche Dienste für ihr Umfeld bereitstellen. Diese angestrebte dezentrale Struktur stellt für uns eine gute Mischung aus lokaler Vernetzung und übergreifendem Wissensaustausch dar.

Weitere Projekte mit ähnlicher Zielstellung sind beispielsweise:

Es gibt noch wesentlich mehr Projekte dieser Art. Eine Übersicht findest du hier.

Ziele

  • Bereitstellung von Werkzeugen, um die Arbeit von Projekten zu unterstützen, also beispielsweise:
    • sichere E-Mail-Accounts
    • (verschlüsselte) Mailinglisten
    • Veröffentlichung von Inhalten
    • Projektverwaltungstools
    • Wikis
  • Sicherheit des Systems gegenüber Angriffen mit technischen Mitteln (Cracker)

  • Schutz der Verkehrsdaten unserer Nutzer_innen
  • Schutz der gespeicherten Daten unserer Nutzer_innen (bei Diebstahl, Beschlagnahmung, usw.)

Konzept

Die erste Inkarnation des systemausfall-Servers war ein alter HP der PA-RISC-Architektur mit 60 MHz und einer guten Netzanbindung. Dabei stießen wir im Laufe der Zeit auf folgende Probleme:

  • wir hatten keinen physischen Zugriff auf den Rechner - dies machte jedes Kernel-Upgrade ziemlich aufregend :)

  • für manche Dienste benötigten wir recht neue Software-Versionen und mussten somit das Debian-stable System mit anderen releases vermischen - dies verkomplizierte Updates

  • durch die große Anzahl installierter Pakete mit gegenseitigen Abhängigkeiten fühlte sich das System im Laufe der Zeit zunehmend fragil an - Veränderungen gefährdeten die Stabilität
  • ein Eindringling hätte potentiell Zugriff auf alle Dienste des Servers erlangen können

Um diese Probleme bei der Neueinrichtung zu vermeiden, wollten wir den neuen Server modularer gestalten. Die Verwendung mehrerer getrennter Rechner kam jedoch aufgrund des Energieverbrauchs nicht in Frage.

Die Isolation der einzelnen Dienste lässt sich beispielsweise durch getrennte chroot-Umgebungen umsetzen. Dies stellt jedoch nur einen geringen Schutz dar, da es einem potentiellen Angreifer möglich ist, der chroot-Umgebung zu entkommen. Zudem würden beispielsweise alle Systeme die gleichen TCP-Ports teilen.

Wir haben stattdessen einige Jahre User-Mode-Linux genutzt, waren kurzzeitig bei Xen und aktuell KVM.

Kurz gesagt: in dem realen Linux-System (dem Host) werden mehrere selbständige Linux-Systeme (Gäste) gestartet. Jedes dieser Gast-Systeme verfügt über eine eigene virtuelle Netzwerk-Schnittstelle, um mit den anderen Gästen und dem Host zu kommunizieren.

Dienste

Auf den nachfolgenden Seiten dokumentieren wir die Einrichtung der von uns bereit gestellten Dienste.

Administration


Alte Dokumente - nur noch teilweise gültig und ziemlich durcheinander

CategorySystemausfall

systemausfall.org-Dokumentation (zuletzt geändert am 2023-08-19 18:22:04 durch phil)


Creative Commons Lizenzvertrag
This page is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.