Bearbeiten von „UUGRN:Jails/einrichten“
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 5: | Zeile 5: | ||
== Vorbereitungen == | == Vorbereitungen == | ||
Jedes [[UUGRN:Mitgliedschaft|aktive Vereinsmitglied]] kann auf Wunsch ein eigenes Jail bekommen. | Jedes [[UUGRN:Mitgliedschaft|aktive Vereinsmitglied]] kann auf Wunsch ein eigenes Jail bekommen. | ||
− | Voraussetzung hierfür ist ein User-Account auf [[ | + | Voraussetzung hierfür ist ein User-Account auf [[shell.uugrn.org]] und dort außerdem ein ssh-Schlüsselpaar, welches generiert werden sollte: |
− | + | $ '''ssh-keygen -t dsa''' | |
− | + | Generating public/private dsa key pair. | |
− | Generating public/private | + | Enter file in which to save the key (/home/user/.ssh/id_dsa): '''<return>''' |
− | Enter file in which to save the key (/home/user/.ssh/ | ||
Created directory '/home/user/.ssh'. | Created directory '/home/user/.ssh'. | ||
Enter passphrase (empty for no passphrase): '''*hier eine passphrase eingeben und gut merken*''' | Enter passphrase (empty for no passphrase): '''*hier eine passphrase eingeben und gut merken*''' | ||
Enter same passphrase again: '''*nochmal wiederholen*''' | Enter same passphrase again: '''*nochmal wiederholen*''' | ||
− | Your identification has been saved in /home/user/.ssh/ | + | Your identification has been saved in /home/user/.ssh/id_dsa. |
− | Your public key has been saved in /home/user/.ssh/ | + | Your public key has been saved in /home/user/.ssh/id_dsa.pub. |
The key fingerprint is: | The key fingerprint is: | ||
− | + | 6d:28:7e:fc:d8:ed:46:37:6d:c7:56:da:96:7b:47:11 user@shell.uugrn.org | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Im Anschluss gibt es die beiden Dateien | Im Anschluss gibt es die beiden Dateien | ||
− | + | $ '''ls -la .ssh/''' | |
− | + | total 8 | |
− | drwx------ | + | drwx------ 2 user users 512 May 14 00:18 . |
− | drwxr-xr-x | + | drwxr-xr-x 3 user users 512 May 14 00:18 .. |
− | -rw------- | + | -rw------- 1 user users 672 May 14 00:18 id_dsa |
− | -rw-r--r-- | + | -rw-r--r-- 1 user users 616 May 14 00:18 id_dsa.pub |
− | Die Passphrase schützt den Schlüssel vor Missbrauch. Ein SSH-Key ohne Passphrase darf man nur auf einem System verwenden, welches man unmittelbar unter seiner eigenen Kontrolle hat. Das ist bei [[ | + | Die Passphrase schützt den Schlüssel vor Missbrauch. Ein SSH-Key ohne Passphrase darf man nur auf einem System verwenden, welches man unmittelbar unter seiner eigenen Kontrolle hat. Das ist bei [[shell.uugrn.org]] definitiv nicht gegeben. |
Der soeben generierte Schlüssel wird für den root-Account im eigenen Jail verwendet. Ein UUGRN-Admin muss den Public-Key entsprechend in das Jail übertragen. | Der soeben generierte Schlüssel wird für den root-Account im eigenen Jail verwendet. Ein UUGRN-Admin muss den Public-Key entsprechend in das Jail übertragen. | ||
Zeile 46: | Zeile 32: | ||
== einloggen als root == | == einloggen als root == | ||
Ein Mitgliedsjail hat initial keinen Hauptbenutzer, dieser wird im Verlauf erst noch selbst erstellt. | Ein Mitgliedsjail hat initial keinen Hauptbenutzer, dieser wird im Verlauf erst noch selbst erstellt. | ||
− | Der erste Login durch den Jailinhaber erfolgt daher als root von [[ | + | Der erste Login durch den Jailinhaber erfolgt daher als root von [[shell.uugrn.org]] aus, der erforderliche SSH-Key sollte vorher bereits angelegt sein. Idealerweise findet diese Übergabe im Dialog (z.B. [[UUGRN:FIXME Treffen]] oder [[UUGRN:IRC]]) statt, denn aufgrund der Passphrase des SSH-Keys kann der UUGRN-Admin selbst nicht testen, ob der Login in das eigene Jail funktioniert. |
Zeile 97: | Zeile 83: | ||
== Softwarepakete == | == Softwarepakete == | ||
− | Je nach gewünschtem Jail-Setup gibt es mehr oder weniger umfangreich vorinstallierte Software. | + | Je nach gewünschtem Jail-Setup gibt es mehr oder weniger umfangreich vorinstallierte Software, z.B. |
− | + | * [[UUGRN:Jails/Master Basic]] (ohne vorinstallierte Software, nur das Basissystem!) | |
− | + | * [[UUGRN:Jails/Master_Standard]]: nur Standardtools | |
+ | * [[UUGRN:Jails/Master Average]]: Standardtools und Apache mit PHP 5 | ||
Den Umfang der installierten Software kann man mit {{man|freebsd|8|pkg_info}} nachsehen. | Den Umfang der installierten Software kann man mit {{man|freebsd|8|pkg_info}} nachsehen. | ||
− | Vorkompilierte Software-Pakete lassen sich einfach mit {{man|freebsd|8|pkg_add}} installieren: | + | Vorkompilierte Software-Pakete lassen sich einfach mit {{man|freebsd|8|pkg_add}} installieren, etwa von einem FTP-Server: |
− | # '''pkg_add -v pdksh''' | + | # '''pkg_add -r -v pdksh''' |
[...] | [...] | ||
− | Empfohlen wird jedoch der Einsatz der Ports mit dem Tool {{man|freebsd|8|portinstall}}. Der Einsatz von einem gemeinsamen, nur-lese Portsbaum unter /usr/ports/ ist in den Jails entsprechend vorkonfiguriert: alle Schreibzugriffe auf die Ports im Jail werden nach /data/ | + | Empfohlen wird jedoch der Einsatz der Ports mit dem Tool {{man|freebsd|8|portinstall}}. Der Einsatz von einem gemeinsamen, nur-lese Portsbaum unter /usr/ports/ ist in den Jails entsprechend vorkonfiguriert: alle Schreibzugriffe auf die Ports im Jail werden nach /data/jails umgeleitet. |
− | |||
=== Standard Befehle === | === Standard Befehle === | ||
− | ; | + | ;portsdb -Fu: Lädt den aktuellen Port-INDEX und speichert in nach /data/ports. Kann täglich, gerne mehrmals ausgeführt werden, wird aber nur täglich upgedatet. |
− | ; | + | ;portversion -vL "=": Alle veralteten Ports auflisten |
− | ; | + | ;porupgrade -a: Alle veralteten Ports updaten |
− | ; | + | ;portupgrade -r "portname*": Alle Ports, die auf portname* matchen, werden upgedatet, außerdem alle ggf. erforderlichen Abhängigkeiten. |
− | ; | + | ;pkgdb -F: manchmal ist es erforderlich, die Abhängigkeiten zu korrigieren. Wenn es komplizierter wird, am besten im [[UUGRN:IRC]] nachfragen |
− | ; | + | ;portinstall category/port: Den Port aus dem Verezeichnis /usr/ports/category/port installieren |
− | ; | + | ;portinstall "portname*": Alle Ports, die auf "portname*" matchen, installieren. |
− | ; | + | ;portinstall -p category/port: Port installieren, dabei ein Package erzeugen. Das landet nach der Installation in /data/ports/packages/ |
− | ; | + | ;portinstall -P category/port: Port installieren, falls möglich ein vorkompiliertes Paket einspielen, anderenfalls selbst kompilieren |
− | ; | + | ;portinstall -PP category/port: Nur vorkompilierte Pakete verwenden (kann, wenn das Release weit zurück liegt fehlschlagen, dann einfach nur -P verwenden) |
Es gibt noch sehr viel mehr Tools, die man kennen sollte. Die Manpages der vorgestellten Befehle verweisen auf diese. Lesen! | Es gibt noch sehr viel mehr Tools, die man kennen sollte. Die Manpages der vorgestellten Befehle verweisen auf diese. Lesen! | ||
Zeile 127: | Zeile 113: | ||
Das Mitgliedsjail kann durch einen UUGRN-Admin für die Verwaltung eigener Domains vorbereitet werden. Sofern nicht explizit anders gewünscht, wird ein Hidden-Primary Setup angeboten, neue Domains können für einen kleinen Betrag direkt über [[Benutzer:Jpru]] bestellt werden. Ein UUGRN-Admin ist hier Ansprechpartner und wird das koordinieren. Bestehende Domains können per KK-Antrag umgezogen werden. Für andere Lösungen bitte zuerst mit einem UUGRN-Admin abstimmen. | Das Mitgliedsjail kann durch einen UUGRN-Admin für die Verwaltung eigener Domains vorbereitet werden. Sofern nicht explizit anders gewünscht, wird ein Hidden-Primary Setup angeboten, neue Domains können für einen kleinen Betrag direkt über [[Benutzer:Jpru]] bestellt werden. Ein UUGRN-Admin ist hier Ansprechpartner und wird das koordinieren. Bestehende Domains können per KK-Antrag umgezogen werden. Für andere Lösungen bitte zuerst mit einem UUGRN-Admin abstimmen. | ||
− | + | siehe dazu: [[UUGRN:DNS-Konzept]] | |
== E-Mail Setup == | == E-Mail Setup == | ||
− | FreeBSD verwendet standardmäßig {{man|freebsd|8|sendmail}} als [[MTA]]. Beim Anlegen der Jails werden diese im DNS entpsrechend mit MX-Records versorgt, sodass ein Mailtransport in das Jail erfolgen kann. Nicht nur Mails an user@meinjail.uugrn.org können zugestellt werden, sondern natürlich auch an bestehende, eigene Domains. Damit dies funktioniert, müssen diese Domains bei den UUGRN-Mailservern [[ | + | FreeBSD verwendet standardmäßig {{man|freebsd|8|sendmail}} als [[MTA]]. Beim Anlegen der Jails werden diese im DNS entpsrechend mit MX-Records versorgt, sodass ein Mailtransport in das Jail erfolgen kann, siehe dazu [[UUGRN:Mailkonzept]]. |
− | + | ||
+ | Nicht nur Mails an user@meinjail.uugrn.org können zugestellt werden, sondern natürlich auch an bestehende, eigene Domains. Damit dies funktioniert, müssen diese Domains bei den UUGRN-Mailservern [[mail.uugrn.org]] und [[up.uugrn.org]] eingetragen werden. Dies erledigt ein UUGRN-Admin. | ||
== Webserver einrichten == | == Webserver einrichten == | ||
− | Im Standardumfang [[UUGRN:Jails/ | + | Im Standardumfang [[UUGRN:Jails/Master Average]] wird Apache 2.2 mit PHP5 vorinstalliert. Die Konfigurationsdateien befinden sich unter /usr/local/etc/apache22/* und /usr/local/etc/php*. Das Root-Verzeichnis von Apache liegt bei FreeBSD unter /usr/local/www/, kann aber z.B. analog zu [[shell.uugrn.org/WWW]] auch in /data/www/ konfiuriert werden. |
− | ;Tipp: die Apache-Konfiguration von [[ | + | ;Tipp: die Apache-Konfiguration von [[shell.uugrn.org]] kann eingesehen oder kopiert werden. |
Wichtig ist, dass alle Dienste, die im Jail gestartet werden sollen, ein eintrag in /etc/rc.conf erfolgen muss, z.B. | Wichtig ist, dass alle Dienste, die im Jail gestartet werden sollen, ein eintrag in /etc/rc.conf erfolgen muss, z.B. |