Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/books/admin_guide/08-process.de.md
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ Systemprozesse werden daher als 'Daemon's bezeichnet (***D**isk **A**nd **E**xec

Wenn ein Kommando ausgeführt wird, werden die Zugangsdaten des Benutzers an den erzeugten Prozess übergeben.

Standardmäßig sind die aktuelle `UID` und `GID` (des Prozesses) daher identisch mit der **tatsächlichen** `UID` und `GID` (die `UID` und `GID` des Benutzers, der den Befehl ausgeführt hat).
Standardmäßig sind die tatsächliche `UID` und `GID` (des Prozesses) identisch mit der **tatsächlichen** `UID` und `GID` (der `UID` und `GID` des Benutzers, der den Befehl ausgeführt hat).

Wenn eine `SUID` (und/oder `SGID`) für einen Befehl gesetzt wird, wird die tatsächliche `UID` (und/oder `GID`) die des Eigentümers (und/oder der Eigentümergruppe) des Befehls und nicht mehr die des Benutzers oder der Benutzergruppe, die den Befehl ausgelöst hat. Effektive und echte **UIDs** sind daher **verschieden**.

Expand Down
204 changes: 186 additions & 18 deletions docs/books/admin_guide/12-network.uk.md

Large diffs are not rendered by default.

161 changes: 161 additions & 0 deletions docs/books/incus_server/04-firewall.de.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
---
title: "Kapitel 4: Firewall—Setup"
author: Steven Spencer
contributors: Ezequiel Bruni, Ganna Zhyrnova
tested_with: 9.4
tags:
- incus
- Enterprise
- incus-Sicherheit
---

In diesem Kapitel müssen Sie Root-Benutzer sein oder `sudo` verwenden können, um Root-Rechte
zu erhalten.

Wie bei jedem Server müssen Sie sicherstellen, dass er vor der Außenwelt und in Ihrem LAN geschützt ist. Ihr Beispielserver hat nur eine LAN-Schnittstelle, es ist aber möglich, zwei Schnittstellen zu haben, die jeweils zu Ihren LAN- und WAN-Netzwerken zeigen.

## Firewall Setup – `firewalld`

Für _Firewalld_-Regeln müssen Sie [dieses grundlegende Verfahren](../../guides/security/firewalld.md) verwenden oder mit diesen Konzepten vertraut sein. Die Voraussetzungen sind ein LAN-Netzwerk im IP-Bereich 192.168.1.0/24 und eine Brücke namens `incusbr0`. Um es zu verdeutlichen: Möglicherweise haben Sie auf Ihrem Incus-Server viele Schnittstellen, von denen eine auf Ihr WAN zeigt. You will also create a zone for the bridged and local networks. This is just for zone clarity's sake. The other zone names do not apply. This procedure assumes that you already know the basics of _firewalld_.

```bash
firewall-cmd --new-zone=bridge --permanent
```

Sie müssen die Firewall nach dem Hinzufügen einer Zone neu laden:

```bash
firewall-cmd --reload
```

Sie möchten den gesamten Datenverkehr von der Bridge zulassen. Fügen Sie einfach die Schnittstelle hinzu und ändern Sie das Ziel von `default` auf `ACCEPT`:

!!! warning "Warnhinweis"

```
Das Ändern des Ziels einer `firewalld`-Zone *muss* mit der Option `--permanent` erfolgen, daher können wir dieses Flag auch gleich in unsere anderen Befehle eingeben und auf die Option `--runtime-to-permanent` verzichten.
```

!!! note "Anmerkung"

```
Wenn Sie eine Zone erstellen möchten, in der Sie den Zugriff auf die Schnittstelle oder Quelle zulassen, aber keine Protokolle oder Dienste angeben möchten, *müssen* Sie das Ziel von `default` auf `ACCEPT` ändern. Dasselbe gilt für `REJECT` und `DROP` für einen bestimmten IP-Block, für den Sie benutzerdefinierte Zonen haben. Die `drop`-Zone übernimmt dies für Sie, sofern Sie keine benutzerdefinierte Zone verwenden.
```

```bash
firewall-cmd --zone=bridge --add-interface=incusbr0 --permanent
firewall-cmd --zone=bridge --set-target=ACCEPT --permanent
```

Vorausgesetzt, es sind keine Fehler aufgetreten und alles funktioniert noch, führen Sie einen Neuladen durch:

```bash
firewall-cmd --reload
```

Wenn Sie nun Ihre Regeln mit dem Befehl `firewall-cmd --zone=bridge --list-all` auflisten, sollten Sie Folgendes erhalten:

```bash
bridge (active)
target: ACCEPT
icmp-block-inversion: no
interfaces: incusbr0
sources:
services:
ports:
protocols:
forward: no
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
```

Beachten Sie, dass Sie auch Ihre lokale Schnittstelle zulassen müssen. Auch hier sind die enthaltenen Zonen nicht entsprechend benannt. Erstellen Sie eine Zone und verwenden Sie den Quell-IP-Bereich der lokalen Schnittstelle, um den Zugriff sicherzustellen:

```bash
firewall-cmd --new-zone=local --permanent
firewall-cmd --reload
```

Fügen Sie die Quell-IP-Adressen für die lokale Schnittstelle hinzu und ändern Sie das Ziel auf `ACCEPT`:

```bash
firewall-cmd --zone=local --add-source=127.0.0.1/8 --permanent
firewall-cmd --zone=local --set-target=ACCEPT --permanent
firewall-cmd --reload
```

Führen Sie nun den Befehl `firewall-cmd --zone=local --list all` aus, um die Regeln der Zone `local` anzuzeigen und sicherzustellen, dass Ihre Regeln vorhanden sind. Die Ausgabe sieht dann wie folgt aus:

```bash
local (active)
target: ACCEPT
icmp-block-inversion: no
interfaces:
sources: 127.0.0.1/8
services:
ports:
protocols:
forward: no
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
```

Sie möchten SSH-Verbindungen aus unserem vertrauenswürdigen Netzwerk zulassen. Dazu muss den Quell-IPs erlaubt werden, die integrierte `trusted`-Zone zu verwenden. Standardmäßig ist das Ziel dieser Zone `ACCEPT`.

```bash
firewall-cmd --zone=trusted --add-source=192.168.1.0/24
```

Fügen Sie den Dienst der Zone hinzu:

```bash
firewall-cmd --zone=trusted --add-service=ssh
```

Wenn alles funktioniert, verschieben Sie Ihre Regeln in den permanenten Zustand und laden Sie die Regeln neu:

```bash
firewall-cmd --runtime-to-permanent
firewall-cmd --reload
```

Wenn Sie Ihre `trusted` Zone auflisten, wird Folgendes angezeigt:

```bash
trusted (active)
target: ACCEPT
icmp-block-inversion: no
interfaces:
sources: 192.168.1.0/24
services: ssh
ports:
protocols:
forward: no
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
```

Die Zone `public` ist standardmäßig aktiviert, und SSH ist zugelassen. Aus Sicherheitsgründen soll SSH in der Zone `public` nicht zugelassen werden. Stellen Sie sicher, dass Ihre Zonen korrekt eingerichtet sind und dass der Zugriff auf den Server über eine der LAN-IP-Adressen erfolgt (in unserem Beispiel). Sie könnten sich vom Server aussperren, wenn Sie dies nicht vorher überprüfen, bevor Sie fortfahren. Wenn Sie sicher sind, dass Sie über die richtige Schnittstelle Zugriff haben, entfernen Sie SSH aus der Zone `public`:

```bash
firewall-cmd --zone=public --remove-service=ssh
```

Testen Sie den Zugriff und stellen Sie sicher, dass Sie nicht ausgesperrt sind. Falls nicht, verschieben Sie Ihre Regeln auf `permanent`, laden Sie die Seite neu und listen Sie die Zone `public` auf, um sicherzustellen, dass SSH entfernt wird:

```bash
firewall-cmd --runtime-to-permanent
firewall-cmd --reload
firewall-cmd --zone=public --list-all
```

Möglicherweise gibt es andere Schnittstellen auf Ihrem Server, die Sie berücksichtigen sollten. Sie können gegebenenfalls die integrierten Zonen verwenden. Sollten Ihnen die Namen nicht aussagekräftig genug erscheinen, können Sie weitere Zonen hinzufügen. Denken Sie daran: Wenn Sie keine Dienste oder Protokolle haben, die Sie explizit zulassen oder ablehnen müssen, müssen Sie das Zonenziel ändern. Das ist möglich, wenn die Nutzung von Schnittstellen, wie bei der Bridge, möglich ist. Wenn Sie einen detaillierteren Zugriff auf Dienste benötigen, verwenden Sie stattdessen Quell-IPs.
106 changes: 106 additions & 0 deletions docs/books/incus_server/05-incus_images.de.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
---
title: "Kapitel 5: Einrichtung und Verwaltung von Images"
author: Steven Spencer
contributors: Ezequiel Bruni, Ganna Zhyrnova
tested_with: 9.4
tags:
- incus
- Enterprise
- incus images
---

In diesem Kapitel müssen Sie die Befehle als Benutzer ohne Administratorrechte ausführen (`incusadmin`, wenn Sie diesem Buch von Anfang an gefolgt sind).

## Verfügbare Images auflisten

Sie können es wahrscheinlich kaum erwarten, mit einem Container loszulegen. Es gibt viele Möglichkeiten für Container-Betriebssysteme. Um ein Gefühl dafür zu bekommen, wie viele Möglichkeiten es gibt, geben Sie diesen Befehl ein:

```bash
incus image list images: | more
```

Drücken Sie die Leertaste, um durch die Liste zu blättern. Diese Liste von Containern und virtuellen Maschinen wächst ständig weiter.

Als **letztes** sollten Sie nach einem Container-Image suchen, das Sie installieren können, insbesondere wenn Sie bereits wissen, welches Image Sie erstellen möchten. Ändern Sie den Befehl so, dass nur die Installationsoptionen für Rocky Linux angezeigt werden:

```bash
incus image list images: | grep rocky
```

Dadurch wird eine viel übersichtlichere Liste angezeigt:

```bash
| rockylinux/8 (3 more) | dede6169bb45 | yes | Rockylinux 8 amd64 (20240903_05:18) | x86_64 | VIRTUAL-MACHINE | 850.75MiB | 2024/09/02 19:00 CDT |
| rockylinux/8/arm64 (1 more) | b749bad83e60 | yes | Rockylinux 8 arm64 (20240903_04:40) | aarch64 | CONTAINER | 125.51MiB | 2024/09/02 19:00 CDT |
| rockylinux/8/cloud (1 more) | 4fefd464d25d | yes | Rockylinux 8 amd64 (20240903_05:18) | x86_64 | VIRTUAL-MACHINE | 869.95MiB | 2024/09/02 19:00 CDT |
| rockylinux/8/cloud (1 more) | 729891475172 | yes | Rockylinux 8 amd64 (20240903_05:18) | x86_64 | CONTAINER | 148.81MiB | 2024/09/02 19:00 CDT |
| rockylinux/8/cloud/arm64 | 3642ec9652fc | yes | Rockylinux 8 arm64 (20240903_04:52) | aarch64 | CONTAINER | 144.84MiB | 2024/09/02 19:00 CDT |
| rockylinux/9 (3 more) | 9e5e4469e660 | yes | Rockylinux 9 amd64 (20240903_03:29) | x86_64 | VIRTUAL-MACHINE | 728.60MiB | 2024/09/02 19:00 CDT |
| rockylinux/9 (3 more) | fff1706d5834 | yes | Rockylinux 9 amd64 (20240903_03:29) | x86_64 | CONTAINER | 111.25MiB | 2024/09/02 19:00 CDT |
| rockylinux/9/arm64 (1 more) | d3a44df90d69 | yes | Rockylinux 9 arm64 (20240903_04:49) | aarch64 | CONTAINER | 107.18MiB | 2024/09/02 19:00 CDT |
| rockylinux/9/cloud (1 more) | 4329a67099ba | yes | Rockylinux 9 amd64 (20240903_03:28) | x86_64 | VIRTUAL-MACHINE | 749.29MiB | 2024/09/02 19:00 CDT |
| rockylinux/9/cloud (1 more) | bc30d585b9f0 | yes | Rockylinux 9 amd64 (20240903_03:28) | x86_64 | CONTAINER | 127.16MiB | 2024/09/02 19:00 CDT |
| rockylinux/9/cloud/arm64 | 5c38ddd506bd | yes | Rockylinux 9 arm64 (20240903_04:38) | aarch64 | CONTAINER | 122.87MiB | 2024/09/02 19:00 CDT |
```

## Installation, Umbenennung und Auflistung von Images

Für den ersten Container verwenden Sie `rockylinux/8`. Zur Installation können Sie Folgendes verwenden:

```bash
incus launch images:rockylinux/8 rockylinux-test-8
```

Dadurch wird ein auf Rocky Linux basierender Container mit dem Namen `rockylinux-test-8` erstellt. Sie können einen Container nach seiner Erstellung umbenennen, müssen ihn aber vorher stoppen, da er nach der Erstellung automatisch startet.

Um den Container manuell zu starten wird Folgendes verwendet:

```bash
incus start rockylinux-test-8
```

Um das Image umzubenennen (wir werden dies hier nicht tun, aber so geht es), müssen Sie zuerst den Container stoppen:

```bash
incus stop rockylinux-test-8
```

Verwenden Sie den Befehl `move`, um den Namen des Containers zu ändern:

```bash
incus move rockylinux-test-8 rockylinux-8
```

Wenn Sie dieser Anweisung trotzdem gefolgt sind, stoppen Sie den Container und benennen Sie ihn wieder in seinen ursprünglichen Namen um, um den Anweisungen weiter folgen zu können.

Installieren Sie für diese Anleitung zunächst zwei weitere Images:

```bash
incus launch images:rockylinux/9 rockylinux-test-9
```

und

```bash
incus launch images:ubuntu/22.04 ubuntu-test
```

Prüfen Sie, was Sie haben, indem Sie Ihre Images auflisten:

```bash
incus list
```

was folgendes zurückgibt:

```bash
+-------------------+---------+----------------------+------+-----------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+-------------------+---------+----------------------+------+-----------+-----------+
| rockylinux-test-8 | RUNNING | 10.146.84.179 (eth0) | | CONTAINER | 0 |
+-------------------+---------+----------------------+------+-----------+-----------+
| rockylinux-test-9 | RUNNING | 10.146.84.180 (eth0) | | CONTAINER | 0 |
+-------------------+---------+----------------------+------+-----------+-----------+
| ubuntu-test | RUNNING | 10.146.84.181 (eth0) | | CONTAINER | 0 |
+-------------------+---------+----------------------+------+-----------+-----------+
```
4 changes: 2 additions & 2 deletions docs/books/incus_server/06-profiles.de.md
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ Eine neue Auflistung wird zeigen, dass dem Container die DHCP-Adresse zugewiesen

### Rocky Linux 9 and 10 `macvlan` - The static IP fix

Bei der statischen Zuweisung einer IP-Adresse wird es noch komplizierter. Da `network-scripts` in Rocky Linux 9.x mittlerweile veraltet ist, ist die einzige Möglichkeit, dies zu tun, die statische Zuweisung. Aufgrund der Art und Weise, wie die Container das Netzwerk verwenden, können Sie die Route nicht mit einer normalen `ip route`-Anweisung festlegen. Das Problem besteht darin, dass die beim Anwenden des `macvlan`-Profils zugewiesene Schnittstelle (in diesem Fall `eth0`) mit dem NetworkManager nicht verwaltet werden kann. Die Lösung besteht darin, die Netzwerkschnittstelle des Containers nach dem Neustart umzubenennen und die statische IP zuzuweisen. Sie können dies mit einem Skript tun und es (erneut) in der Crontab von Root ausführen. Tun Sie dies mit dem `ip`-Befehl. Zusätzlich zum Festlegen der IP-Adresse müssen Sie auch DNS für die Namensauflösung festlegen. Auch dies ist nicht so einfach wie das Ausführen von `nmtui`, um die Verbindung zu ändern, da die Verbindung im NetworkManager nicht vorhanden ist. Die Lösung besteht darin, eine Textdatei zu erstellen und diese mit den DNS-Servern zu füllen, die Sie verwenden möchten.
Bei der statischen Zuweisung einer IP-Adresse wird es noch komplizierter. Da `network-scripts` in Rocky Linux 9.x mittlerweile veraltet ist, ist die einzige Möglichkeit, dies zu tun, die statische Zuweisung. Aufgrund der Art und Weise, wie die Container das Netzwerk verwenden, können Sie die Route nicht mit einer normalen `ip route`-Anweisung festlegen. Das Problem besteht darin, dass die Schnittstelle, die bei der Anwendung des `macvlan`-Profils zugewiesen wird (in diesem Fall `eth0`), nicht mit dem NetworkManager verwaltet werden kann. Die Lösung besteht darin, die Netzwerkschnittstelle des Containers nach dem Neustart umzubenennen und die statische IP zuzuweisen. Sie können dies mit einem Skript tun und es (erneut) in der Crontab von Root ausführen. Tun Sie dies mit dem `ip`-Befehl. Zusätzlich zur Festlegung der IP-Adresse müssen Sie auch den DNS-Server für die Namensauflösung konfigurieren. Auch dies ist nicht so einfach wie das Ausführen von `nmtui`, um die Verbindung zu ändern, da die Verbindung im NetworkManager nicht vorhanden ist. Die Lösung besteht darin, eine Textdatei zu erstellen, die die DNS-Server enthält, die Sie verwenden möchten.

Dazu benötigen Sie erneut Shell-Zugriff auf den Container:

Expand All @@ -239,7 +239,7 @@ nameserver 8.8.8.8
nameserver 8.8.4.4
```

Speichern Sie die Datei und beenden Sie das Programm. Dies zeigt, dass Sie die offenen DNS-Server von Google verwenden. Wenn Sie andere DNS-Server verwenden möchten, ersetzen Sie einfach die angezeigten IPs durch den DNS Ihrer Wahl.
Speichern Sie die Datei und beenden Sie das Programm. Dies zeigt, dass Sie die offenen DNS-Server von Google verwenden. Wenn Sie andere DNS-Server verwenden möchten, ersetzen Sie die angezeigten IP-Adressen durch Ihre bevorzugten DNS-Server.

Als Nächstes erstellen Sie ein Bash-Skript in `/usr/local/sbin` mit dem Namen „static“:

Expand Down
4 changes: 2 additions & 2 deletions docs/books/incus_server/06-profiles.fr.md
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ Une nouvelle liste révélera que le conteneur a été assigné à l'adresse DHC

### Rocky Linux 9 et 10 `macvlan` — Le correctif IP statique

Lors de l’attribution statique d’une adresse IP, les choses deviennent encore plus compliquées. Étant donné que `network-scripts` est désormais obsolète dans Rocky Linux 9.x, la seule façon de procéder est par attribution statique, et en raison de la manière dont les conteneurs utilisent le réseau, vous ne pourrez pas définir la route avec une instruction `ip route` normale. Le problème est que l'interface attribuée lors de l'application du profil `macvlan` (eth0 dans ce cas), n'est pas gérable avec Network Manager. La solution consiste à renommer l'interface réseau du conteneur après le redémarrage et à attribuer l'IP statique. Vous pouvez le faire avec un script et l'exécuter (à nouveau) dans le crontab de root. Tout cela se fait avec la commande `ip`. En plus de définir l'adresse IP, vous devrez également définir le DNS pour la résolution des noms. Encore une fois, ce n’est pas aussi simple que d’exécuter `nmtui` pour modifier la connexion, car la connexion n’existe pas dans le Network Manager. La solution est de créer un fichier texte et de le remplir avec les serveurs DNS que vous voulez utiliser.
Lors de l’attribution statique d’une adresse IP, les choses deviennent encore plus compliquées. Étant donné que `network-scripts` est désormais obsolète dans Rocky Linux 9.x, la seule façon de procéder est par attribution statique, et en raison de la manière dont les conteneurs utilisent le réseau, vous ne pourrez pas définir la route avec une instruction `ip route` normale. Le problème est que l'interface attribuée lors de l'application du profil `macvlan` (`eth0` dans ce cas) n'est pas gérable avec Network Manager. La solution consiste à renommer l'interface réseau du conteneur après le redémarrage et à attribuer l'IP statique. Vous pouvez le faire avec un script et l'exécuter (à nouveau) dans le crontab de root. Tout cela se fait avec la commande `ip`. En plus de définir l'adresse IP, vous devrez configurer le DNS pour la résolution des noms. Encore une fois, ce n’est pas aussi simple que d’exécuter `nmtui` pour modifier la connexion, car la connexion n’existe pas dans le Network Manager. La solution consiste à créer un fichier texte contenant les serveurs DNS que vous voulez utiliser.

Pour ce faire, vous devez à nouveau obtenir un accès shell au conteneur:

Expand All @@ -239,7 +239,7 @@ nameserver 8.8.8.8
nameserver 8.8.4.4
```

Sauvegardez le fichier et quittez. Cela montre que vous utilisez les serveurs DNS ouverts de Google. Si vous souhaitez utiliser différents serveurs DNS, remplacez simplement les IP affichées par le DNS de votre choix.
Sauvegardez le fichier et quittez. Cela montre que vous utilisez les serveurs DNS ouverts de Google. Si vous souhaitez utiliser différents serveurs DNS, remplacez simplement les adresses IP affichées par le DNS de votre choix.

Ensuite, vous allez créer un script bash dans `/usr/local/sbin` appelé `static` :

Expand Down
Loading