Bearbeiten von „UUGRN:Jails/Konzept“

Aus UUGRN

Warnung: Du bist nicht angemeldet. Deine IP-Adresse wird bei Bearbeitungen öffentlich sichtbar. Melde dich an oder erstelle ein Benutzerkonto, damit Bearbeitungen deinem Benutzernamen zugeordnet werden.

Die Bearbeitung kann rückgängig gemacht werden. Bitte prüfe den Vergleich unten, um sicherzustellen, dass du dies tun möchtest, und speichere dann unten deine Änderungen, um die Bearbeitung rückgängig zu machen.

Aktuelle Version Dein Text
Zeile 1: Zeile 1:
[[Jails]] sind virtuelle Systeme in [[FreeBSD]], die auf einem gemeinsamen Kernel laufen, jedoch voneinander getrennte Userlands haben, inkl. eigene Benutzer- und root-Rechte. Dieser Artikel soll das Konzept der [[UUGRN:Jails]] aufzeigen.
+
{{Administrative Hinweise|Das Jailkonzept wird ständig überarbeitet und angepasst. <br />
 +
Näheres dazu auf der [[Diskussion:{{PAGENAME}}|Diskussionsseite]]. --[[Benutzer:Rabe|RaBe]] 13:35, 13. Mai. 2007 (CEST) }}
 +
 
 +
[[Jails]] sind virtuelle Systeme in [[FreeBSD]], die auf einem gemeinsamen Kernel laufen, jedoch voneinander getrennte Userlands haben, inkl. eigene Benutzer- und root-Rechte.
 +
 
 +
Dieser Artikel soll aufzeigen, was [[UUGRN:Verein|der Verein]] anbietet, welche Voraussetzungen es gibt und welche Mechanismen wirken.  
  
 
== Vereinsangebot ==
 
== Vereinsangebot ==
 
[[UUGRN:Verein|UUGRN e.V.]] bietet seinen [[UUGRN:Mitgliedschaft|Mitgliedern]] eigene virtuelle Root-Server auf Jail-Basis an.  
 
[[UUGRN:Verein|UUGRN e.V.]] bietet seinen [[UUGRN:Mitgliedschaft|Mitgliedern]] eigene virtuelle Root-Server auf Jail-Basis an.  
Diese Jails werden derzeit überwiegend auf [[UUGRN:Server/top|top.uugrn.org]] gehostet.
+
Diese Jails werden derzeit auf [[top.uugrn.org]] gehostet.
 +
 
 +
Darüber hinaus werden Jails für teils gemeinsam genutzt Infrastrukturdienste wie etwa Mailserver, Webserver, Shellserver etc. eingesetzt.
 +
 
 +
 
  
Darüber hinaus werden Jails für teils gemeinsam genutzt Infrastrukturdienste wie etwa [[UUGRN:Jails/mail|Mailserver]], Webserver, [[UUGRN:Shell|Shellserver]] etc. eingesetzt.
 
  
 
== Nutzung ==
 
== Nutzung ==
Zeile 11: Zeile 19:
  
 
=== Verbindliche Policy ===
 
=== Verbindliche Policy ===
Vor der "Übergabe" eines [[UUGRN:Jails#Mitglieder-Jails|Mitglieder-Jails]] muss die [[UUGRN:Jails/Nutzungsbedingungen|Jail-Policy]] anerkannt und unterschrieben werden. Diese definiert, was "fair use" darstellt.  
+
Vor der "Übergabe" eines [[UUGRN:Jails#Mitglieder-Jails|Mitglieder-Jails]] muss die [[Jail-Policy]] anerkannt und unterschrieben werden. Diese definiert, was "fair use" darstellt.  
; siehe dazu: [[UUGRN:Jails/Nutzungsbedingungen]]
+
;Die Grundpolicy enthält: Erlaubt ist alles, was einem "fair use" entspricht.
 +
 
 +
Diese weitreichende Freiheit wird allerdings definierte Grenzen haben, die überprüft und durchgesetzt werden, um Mißbrauch vorzubeugen.
 +
Im Zweifel sind Aktionen vorher mit der [[UUGRN:Vorstand|Vereinsführung]] oder [[UUGRN:Admin|Administration]] abzustimmen. Sonderregelungen werden öffentlich dokumentiert (Transparenzgebot).
  
 
== Einrichtung ==
 
== Einrichtung ==
 
=== Übergabe / Root ===
 
=== Übergabe / Root ===
Voraussetzung für die Schlüsselübergabe für den root-Zugriff ist ein [[UUGRN:Shell|Mitglieder-Account]] auf [[UUGRN:Jails/shell|shell.uugrn.org]]. Im Homeverzeichnis von username@shell.uugrn.org:.ssh/keyname muss ein gesicherter SSH-Key generiert werden. Der Publickey (.ssh/keyname.pub) wird initial als root-Login in root@userjail.uugrn.org:/root/.ssh/authorized_keys eingetragen.
+
Die Mitglieder-Jails werden ohne Benutzeraccounts angelegt.
 +
Voraussetzung für die Schlüsselübergabe für den root-Zugriff ist ein [[UUGRN:Shell|Mitglieder-Account]] auf [[shell.uugrn.org]].
 +
Zunächst muss dort ein mit Passphrase gesicherter SSH-Key erzeugt werden:
 +
 
 +
[mitglied@shell ~]$ ssh-keygen -t dsa
  
Mit Hilfe dieses Root-Logins im Jail können dann weitere Benutzer angelegt werden, mit denen man sich ohne Umweg über [[UUGRN:Jails/shell|shell.uugrn.org]] einloggen kann.
+
Standardmäßig werden hierbei die beiden Dateien <code>~/.ssh/id_dsa</code> und <code>~/.ssh/id_dsa.pub</code> erzeugt.
 +
Vom Einrichter des Mitglieder-Jails wird <code>mitglied@shell:~/.ssh/id_dsa.pub</code> an <code>root@mitgliedsjail:.ssh/authorized_keys</code> angehängt, wodurch das Mitglied sein Jail initial als root einloggen kann:
  
;siehe dazu: [[UUGRN:Jails/einrichten]]
+
[mitglied@shell ~]$ ssh root@meinjail.uugrn.org
 +
 
 +
Nach dem initialen root-Login sollte das root-Passwort unbedingt gesetzt werden:
 +
 
 +
[root@meinjail ~]# passwd
 +
 
 +
und normale Benutzeraccounts eingerichtet werden:
 +
 
 +
[root@meinjail ~]# adduser
 +
 
 +
Um im eigenen Jail später root werden zu können, muss der angelegte User in der wheel-Gruppe sein. Als primäre Gruppe wird man wohl i.d.R. "staff" nehmen und auf die Frage "Invite user to ... " zusätzlich "wheel" angeben, oder nachträglich in /etc/{{man|freebsd|5|group}} eintragen.
 +
 
 +
Der SSH-Rootzugriff von mitglied@[[shell.uugrn.org]] aus kann entweder bestehen bleiben, oder aber gelöscht werden.
 +
Hierzu ist es erforderlich, die Datei authorized_keys entsprechend zu bearbeiten:
 +
 
 +
[root@meinjail ~]# vi ~/.ssh/authorized_keys
  
 
=== Basis-Ausstattung ===
 
=== Basis-Ausstattung ===
{{UUGRN:Jails/Templates/Navigation}}
+
; FreeBSD Basissystem des jeweils aktuellen Releases:
; siehe auch: [[UUGRN:Jails/Templates]]
+
:* Standardumfang des Basissystems
 +
; Shells:
 +
:* bash
 +
:* zsh
 +
:* ksh
 +
; Standard-Tools:
 +
:* coreutils (The Free Software Foundation's core utilities)
 +
:* findutils (The GNU find utilities)
 +
:* ImageMagick
 +
:* rsync
 +
:* sudo
 +
 +
;Console-Standardsoftware:
 +
:* Midnight Commander
 +
:* mutt
 +
:* lynx
 +
;Editoren:
 +
:* vim 6
 +
:* nano
 +
 
 +
; Devel:
 +
:* PERL 5.8
 +
:** Standardausstattung p5-Module
 +
:* Python
 +
 
 +
; Web-Paket:
 +
:* Apache 1.3.x mit mod_ssl
 +
:** div. Zusatzmodule
 +
:* PHP5 plus zahlreiche Module
 +
:* [[smarty]]
 +
:* mod_perl
  
 
== Systempflege und Betrieb ==
 
== Systempflege und Betrieb ==
 
=== Basis-System ===
 
=== Basis-System ===
Die Jail-Basissysteme werden zunächst auf [[UUGRN:Jails/sandbox]] getestet.  
+
Die Jail-Basissysteme werden zunächst auf testjail.uugrn.org getestet. Wir werden auf den jeweiligen RELEASE-Ständen fahren.
 
+
Updates des Basis-Systems in ''/usr/src'' werden von der Hauptmaschine aus durchgeführt, ebenso wie der idR erforderliche ''mergemaster''. Dabei wird darauf geachtet, dass mauelle Änderungen in /etc nicht überschrieben werden. Bitte wichtige Änderungen mit Kommentar versehen (Zeile obendrüber) und selbst für Sicherheitskopien außerhalb von /etc sorgen.
Updates des Basis-Systems in ''/usr/src'' werden von der [[UUGRN:Server/top|Hauptmaschine]] aus durchgeführt, ebenso wie der idR erforderliche ''mergemaster''. Dabei wird darauf geachtet, dass mauelle Änderungen in /etc nicht überschrieben werden. Bitte wichtige Änderungen mit Kommentar versehen (Zeile obendrüber) und '''selbst für Sicherheitskopien außerhalb von /etc sorgen'''.
 
  
 
=== Software ===
 
=== Software ===
Es gibt darüber hinaus ein global verfügbares ''/usr/ports/'', das read-only in allen Jails verfügbar ist, siehe auch [[FreeBSD/Ports/readonly]].
+
Vorkompilierte Packages können direkt aus dem Internet installiert werden.
 
+
Es gibt darüber hinaus ein global verfügbares ''/usr/ports/'', das read-only in allen Jails verfügbar ist. Über ein script auf [[top.uugrn.org]] werden regelmäßig alle Distfiles von installierten Ports aktualisiert und in ''/usr/ports/distfiles/'' angeboten (''prefetch''). Siehe dazu [[FreeBSD Ports/readonly]].
Alles unter /usr/ports/ wird außerhalb der Jails gepflegt, im Wesentlichen sind es das regelmäßige Update der Ports, das Herunterladen der aktuellen Distfiles aller Installierten Ports in allen Jails (/usr/ports/distfiles/) und das periodische zur Verfügung stellen von vorkompilierten Packages unter /usr/ports/packages/.
 
  
 
=== Backup ===
 
=== Backup ===
Die [[UUGRN:Server/top|Jail-Maschine]] wird regelmäßig per [[rsync]] auf [[UUGRN:Server/charm]] kopiert.  
+
Die [[top.uugrn.org|Jail-Maschine]] wird regelmäßig per [[rsync]] auf [[bottom.uugrn.org|eine Ausweichmaschine]] kopiert.  
 
Derzeit findet dies 1x pro Tag morgens statt. Restore-Wünsche bitte sehr zeitnah kommunizieren.
 
Derzeit findet dies 1x pro Tag morgens statt. Restore-Wünsche bitte sehr zeitnah kommunizieren.
 +
 +
Geplant ist der Betrieb eines Spiegel-Servers, der als Fallback und Backup läuft.
  
 
Eine individuelle Sicherung mit Historie/Rollback findet derzeit nicht statt.
 
Eine individuelle Sicherung mit Historie/Rollback findet derzeit nicht statt.
 
;siehe auch: [[UUGRN:Backup]] und [[UUGRN:Server/top/backup]]
 
  
 
=== Firewall ===
 
=== Firewall ===
Zeile 57: Zeile 116:
 
; Raw-Socket:
 
; Raw-Socket:
 
:* Zugriff auf den raw-Socket sind nicht möglich (z.B. tcpdump)
 
:* Zugriff auf den raw-Socket sind nicht möglich (z.B. tcpdump)
:* ICMP (ping) ist aus den Jails heraus nicht möglich, [[UUGRN:Server/top|top]] selbst ist allerdings in der Lage, auf allen IPs ICMP zu empfangen und zu senden.
+
:* ICMP (ping) ist aus den Jails heraus nicht möglich, [[top.uugrn.org|top]] selbst ist allerdings in der Lage, auf allen IPs ICMP zu empfangen und zu senden.
  
 
'''Diese Policy kann sich jederzeit ändern oder erweitert werden.'''
 
'''Diese Policy kann sich jederzeit ändern oder erweitert werden.'''
Zeile 72: Zeile 131:
 
* Auf Wunsch kann das Jail in Form einer Datensicherung (Gnu-tar) zur Verfügung gestellt werden.
 
* Auf Wunsch kann das Jail in Form einer Datensicherung (Gnu-tar) zur Verfügung gestellt werden.
  
 +
== Jail-Typen ==
 +
=== Infrastruktur-Jails (I) ===
 +
Infrastruktur-Jails erfüllen eine zentrale Aufgabe für den Betrieb als solchen.
 +
Sie haben eine auf den Zweck zugeschittene Grundkonfiguration und auch spezielle Zugriffsrechte und Firewall-Regeln.
 +
Root-Rechte liegen bei der Administration des Vereins. Ein Userbetrieb findet hier NICHT statt.
 +
 +
=== Mitglieder-Jails (M) ===
 +
Mitglieder-Jails werden mit einer Grundkonfiguration initialisiert, die einen gewissen Standardumfang enthält.
 +
Das jeweilige Mitglied hat root-Rechte am eigenen Jail.
 +
 +
Ein spezielles Sammeljail [[shell.uugrn.org]] beitet für alle Mitglieder Zugriff auf eine gemeinsame Umgebung.
 +
 +
=== Partner-Jails (P) ===
 +
Kooperationspartner von [[UUGRN:Verein|UUGRN e.V.]] bekommen für eigene Projekte (und ggf auch User) ein Jail nach Maß zur Verfügung gestellt.
 +
 +
Hier gelten abweichend von der normalen Policy ggf. individuelle Zugriffsrechte und Befugnisse, die mit dem jeweiligen Partner vereinbart werden.
 +
 +
== Jail-Liste ==
 +
Jails sind an IP-Adressen gekoppelt.
 +
 +
{| class="wikitable"
 +
! IP
 +
! Name
 +
! Typ
 +
! Beschreibung
 +
|-
 +
| 195.49.138.98
 +
| [[intern.uugrn.org]]
 +
| I
 +
| Interne Infrastrukturdienste, zB [[intern.uugrn.org/MySQL|MySQL]]
 +
|-
 +
| 195.49.138.99
 +
| [[verein.uugrn.org]]
 +
| I
 +
| Externe Infrastrukturdienste, z.B. Webseite und [[UUGRN:Mailingliste|Mailingliste]]
 +
|-
 +
| 195.49.138.100
 +
| [[shell.uugrn.org]]
 +
| M
 +
| User-Jail für (alle) [[UUGRN:Mitgliedschaft|Mitglieder]] von [[UUGRN:Verein|UUGRN e.V.]]
 +
|-
 +
| 195.49.138.101
 +
| [[mile.uugrn.org]]
 +
| M
 +
| Mitgliedsjail
 +
|-
 +
| 195.49.138.102
 +
| [[rabe.uugrn.org]]
 +
| M
 +
| Mitgliedsjail
 +
|-
 +
| 195.49.138.103
 +
| [[trickster.uugrn.org]]
 +
| M
 +
| Mitgliedsjail
 +
|-
 +
| 195.49.138.104
 +
|
 +
|
 +
|
 +
|-
 +
| 195.49.138.105
 +
| [[che.uugrn.org]]
 +
| M
 +
| Mitgliedsjail
 +
|-
 +
| 195.49.138.106
 +
|
 +
|
 +
|
 +
|-
 +
| 195.49.138.107
 +
|
 +
|
 +
|
 +
|-
 +
| 195.49.138.108
 +
|
 +
|
 +
|
 +
|-
 +
| 195.49.138.109
 +
|
 +
|
 +
|
 +
|-
 +
| 195.49.138.110
 +
| [[bert.uugrn.org]]
 +
| M
 +
| Mitgliedsjail
 +
|-
 +
| 195.49.138.111
 +
| [[rmfausi.uugrn.org]]
 +
| M
 +
| Mitgliedsjail
 +
|-
 +
| 195.49.138.112
 +
| [[shl.uugrn.org]]
 +
| M
 +
| Mitgliedsjail
 +
|-
 +
| 195.49.138.113
 +
| [[friedel.uugrn.org]]
 +
| M
 +
| Mitgliedsjail
 +
|-
 +
| 195.49.138.114
 +
| [[schwede.uugrn.org]]
 +
| M
 +
| Mitgliedsjail
 +
|-
 +
| 195.49.138.115
 +
|
 +
|
 +
|
 +
|-
 +
| 195.49.138.116
 +
|
 +
|
 +
|
 +
|-
 +
| 195.49.138.117
 +
|
 +
|
 +
|
 +
|-
 +
| 195.49.138.118
 +
|
 +
|
 +
|
 +
|-
 +
| 195.49.138.119
 +
| [[privacy.uugrn.org]]
 +
| P
 +
| Partnerjail Rabe+JJ <!-- Details folgen, je nachdem, was draus werden wird -->
 +
|-
 +
| 195.49.138.120
 +
| [[noname.uugrn.org]]
 +
| P
 +
| Partnerjail für [[NoName|NoName e.V.]]
 +
|-
 +
| 195.49.138.121
 +
| [[sandbox.uugrn.org]]
 +
| I
 +
| Testumgebung / Standardjail
 +
|-
 +
| 195.49.138.122
 +
| [[up.uugrn.org]]
 +
| I
 +
| UUGRN Mail-Exchange (derzeit noch extern)
 +
|-
 +
| 195.49.138.123
 +
| [[mail.uugrn.org]]
 +
| I
 +
| UUGRN Mail-Exchange
 +
|-
 +
|}
  
 
== Siehe auch ==
 
== Siehe auch ==
* [[UUGRN:Jails]]
+
* [[top.uugrn.org]]
:* [[UUGRN:Jails/Nutzungsbedingungen|Verbindliche Regeln für die Verwendung von UUGRN Jails]]
+
* [[Jail|Hintergrundinformationen zu BSD Jails]]
:* [[UUGRN:MySQL|MySQL Zugang auf dem zentralen MySQL Server]]
+
* [[Jail-Policy|Verbindliche Regeln für die Verwendung von UUGRN Jails]]
* [[UUGRN:Server/top|top.uugrn.org]]
+
* [[intern.uugrn.org/MySQL|MySQL Zugang auf dem zentralen MySQL Server]]
 
* [[UUGRN:Mailkonzept]]
 
* [[UUGRN:Mailkonzept]]
 
* [[UUGRN:Mitgliedschaft]]
 
* [[UUGRN:Mitgliedschaft]]
  
* [[Jail|Hintergrundinformationen zu BSD Jails]]
 
 
;Unterseiten:
 
<splist />
 
  
  
[[Kategorie:UUGRN:Jail|!]]
+
[[Kategorie:Verein]]
 +
[[Kategorie:Jail]]

Bitte kopiere keine Inhalte, die nicht Deine eigenen sind!

Du gibst uns hiermit Deine Zusage, dass
  • Du den Text nicht aus Wikipedia kopiert hast
  • Du den Text selbst verfasst hast
  • oder der Text entweder
    • Allgemeingut (public domain) ist
    • oder der Copyright-Inhaber seine Zustimmung gegeben hat.
Wichtig
  • Benutze keine urheberrechtlich geschützten Werke ohne Erlaubnis des Copyright-Inhabers!
  • Falls dieser Text bereits woanders veröffentlicht wurde, weise bitte auf der 'Diskussion:'-Seite darauf hin.
  • Bitte beachte, dass alle UUGRN-Beiträge automatisch unter der der Creative Commons Lizenz stehen.
  • Falls Du nicht möchtest, dass Deine Arbeit hier von anderen verändert und verbreitet wird, dann drücke nicht auf "Artikel Speichern".

Bitte beantworte die folgende Frage, um diese Seite speichern zu können (weitere Informationen):

Abbrechen Bearbeitungshilfe (wird in einem neuen Fenster geöffnet)

Folgende Vorlagen werden auf dieser Seite verwendet: