ubuntuusers.de

System verschlüsseln

Archivierte Anleitung

Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.

Artikel für fortgeschrittene Anwender

Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.

Hinweis:

Ohne ein sicheres Kennwort nutzt die stärkste Verschlüsselung nicht! Wie man Passwörter am besten wählt, steht hier: Sicherheits 1x1

Einleitung

Mit dieser Anleitung lässt sich das Betriebssystem bis auf die /boot Partition, die nur den Kernel und Bootloader enthält, mittels LUKS komplett verschlüsseln. Da hier die Partitionierung der Festplatten verändert wird, ist ein vorheriges Backup des Systems unbedingt erforderlich!

Die Anleitung geht von einer Standard-Installation von Ubuntu aus. Insbesondere beudtet dies, dass /home nicht auf einer eigenen Partition liegt. Falls eine getrennte home-Partition existiert muss zusätzlich der Abschnitt Home verschlüsseln beachtet werden. Im Hauptartikel befinden sich zusätzliche Verweise zu den jeweils zusätzlich notwendigen Schritten in diesem Abschnitt für den Fall einer eigenen home-Partition.

Falls kein bestehendes System verschlüsselt, sondern eine neue Installation mittels LUKS-Verschlüsselung durchgeführt werden soll, ist zusätzlich der Abschnitt Neues System installieren zu beachten.

Vorbereiten des Systems

Partitionierung

Bei einer Standard-Installation von Ubuntu werden lediglich zwei Partitionen angelegt: eine Partition für den Swap-Speicher, und eine Partition für das gesamte Root-Dateisystem. Da die Ver- und Entschlüsselung vom Kernel durchgeführt wird, kann das Kernel-Abbild selbst nicht verschlüsselt werden und muss beim Booten unverschlüsselt vorliegen. Um dies zu ermöglichen wird das Verzeichnis /boot, dass den Kernel und den Bootloader enthält, auf einen eigene Partition verschoben, die als einnzige unverschlüsselt bleibt.

Es werden seperate Partition vorausgesetzt für die Ordner /boot, das Wurzelverzeichnis / und den swap Speicher. Es ist auch generell sinnvoll /home auf eine eigene Partition auszulagern, jedoch ist das zur Verschlüsselung kein Muss. Das Verschieben von /home auf eine eigene Partition wird im Artikel Home umziehen beschrieben. Die folgende Anleitung wird von folgenden Partitionen und ihren Bezeichnungen ausgehen:

* /dev/sda1 (ext3)

  • Boot-Partition

  • Einhängepunkt /boot

  • Größe: mindestens 100 MB

* /dev/sda2 (swap)

  • Swap-Partition

  • Einhängepunkt keiner

  • Größe: mindestens die Größe des Arbeitsspeichers für Suspend-to-Disk-Fähigkeit, üblicherweise 2 GB

* /dev/sda3 (ext3)

  • Root-Partition

  • Einhängepunkt /

  • Größe: der verfügbarer Rest, mindestens 10 GB

Auf dem eigenen Rechner kann die Anzahl der Partitionen, deren Größe, und deren Bezeichnung im /dev/ Ordner natürlich stark abweichen. Wichtig ist hier nur, dass für die /boot Partition eine seperate Partition besteht.

Zusätzlich muss ein Speichermedium vorhanden sein, dass genügend freien Platz bietet, um temporär eine Kopie des Wurzelverzeichnis aufzunhemen. Dies kann neben einer Partition auf der internen Festplatte auch ein USB-Stick, eine externe Festplatte, eine Netzwerk-Freigabe oder ähnliches sein. Wichtig ist, dass auf dieses Speichermedium schreibend zugegriffen werden kann. Im Folgenden wird davon ausgegangen, dass sich eine den Anforderungen entsprechende Partition unter /dev/sdb1 befindet.

Software installieren und benötigte Kernelmodule laden

Wir fahren das System mit der Live CD hoch. Zuerst wird im Live-System das folgende Paket installiert [2]:

  • cryptsetup(universe, [3])

Zunächst wird ein Terminal geöffnet und durch die Eingabe von

sudo -s 

root-Rechte erlangt. Dann werden durch Eingabe von

modprobe aes
modprobe dm-crypt
modprobe sha256 

in die benötigten Kernelmodule geladen.

Vor Jaunty:

In Ubuntu-Versionen vor Jaunty muss außerdem das Modul dm-mod durch zusätzliche Eingabe von

modprobe dm-mod 

geladen werden.

Einhängepunkte erstellen und belegen

Es werden nun Einhängepunkte erstellt, in die die bestehenden Partitionen gemountet werden:

mkdir /media/{boot,root}
cd /media
mount /dev/sda1 boot
mount /dev/sda3 root 

/boot verschieben

Als nächstes wird der existierende Boot-Ordner (sofern er nicht schon auf einer separaten Partition liegt) von / auf die neue Partition verschoben. Bei den folgenden Konsolen-Befehlen wird davon ausgegangen, dass das aktuelle Arbeitsverzeichniss /media ist (lässt sich mit einem pwd überprüfen):

cp -avx root/boot/* boot/
umount boot
rm -frv root/boot/* 

Hinweis:

Sollte /boot in eine eigene Partition verschoben worden sein, muss unbedingt darauf geachtet werden, dass in der Datei /media/root/etc/fstab ein entsprechender Eintrag angelegt wird!

/boot (im Beispiel also /dev/sda1) ist die einzige Partition, die unverschlüsselt bleibt.

Verschlüsselung der Partitionen

Root-Partition Verschlüsseln

Existierende Daten sichern

Sofern nicht schon geschehen, müssen nun die Dateien auf der Root-Partition (/dev/sda3) gesichert werden. Hier werden die Daten auf der backup-Partition (/dev/sdb1) gesichert. Wie eingangs erwähnt kann die Sicherung jedoch auf einem beliebigem anderen Speichermedium abgelegt werden. Im Anschluss wird die root-Partition ausgehangen.

mkdir backup
mount /dev/sdb1 backup
tar -czvf backup/root.tar.gz -C root/ .
umount root 

Achtung!

Bei der Sicherung werden sämtliche Daten der root-Partition gepackt, aber unverschlüsselt auf das Backup-Medium geschrieben. Wenn nach Abschluss der Verschlüsselung nach diesem Artikel sichergestellt ist, dass das verschlüsselte System korrekt funktioniert sollte die Sicherung angemessen, also nicht wiederherstellbar, gelöscht werden.

Crypt Device erstellen

Achtung!

Der Nachfolgende Befehl löscht sämtliche Dateien auf der betreffenden Partition unwiederbringlich! Man sollte ihn nur ausführen, wenn man wie oben beschrieben ein Backup der Daten auf /dev/sda3 angefertigt hat!

cryptsetup -c aes-xts-plain -y -s 512 luksFormat /dev/sda3 

Das Kommando verschlüsselt /dev/sda3 mit dem AES-Algorithmus. Das Argument -y erzwingt eine doppelte Passwortabfrage beim Anlegen des Volumes und -s legt die Schlüssellänge fest (hier: 256 Bit, bei XTS werden 512 Bit angegeben, da der XTS-Algorithmus zusätzliche 256 Bit für die Verknüpfung der Blöcke benötigt). Näheres dazu steht in der Manpage zu cryptsetup.

Nachdem man mit YES das Formatieren bestätigt hat, wird man nach einem Passwort gefragt. Man sollte hier keine deutschen "Sonderzeichen" wie ä, ö, ü, ß und € wählen, die auf amerikanischen Tastaturen nicht zu finden sind. Dies sollte man berücksichtigen, da es sonst beim Boot-Vorgang zu Problemen mit der Passwortabfrage kommen kann.

Crypt Device formatieren und Daten zurücksichern

Das eben erstellte Volume wird nun geöffnet, formatiert und wieder ins Live-System eingehängt:

cryptsetup luksOpen /dev/sda3 root 

Möchte man die Sicherheit der verschlüsselten Partition erhöhen, muss man diese mittels Zufallsdaten überschreiben, was Kryptoanalytikern die Möglichkeit nimmt überhaupt noch festzustellen welche Daten verschlüsselt sind und welche nicht.

dd if=/dev/urandom of=/dev/mapper/root 

Jetzt kann mit dem Formatieren und mounten der Partition fortgefahren werden:

mkfs.ext3 /dev/mapper/root
mount /dev/mapper/root root 

Dann wird der eben gesicherte Inhalt der Root-Partition zurückgeschrieben.

tar -xzvf backup/root.tar.gz -C root . 

Falls eine seperate home-Partition existiert wird diese an dieser Stelle ebenfalls verschlüsselt. Dazu sind die Arbeiten in diesem Abschnitt durchzuführen.

System zum Booten vorbereiten

In das Festplattensystem wechseln und Software installieren

Um die nötigen Anpassungen vorzunehmen wechselt man mit chroot in das eigentliche, verschlüsselte System. Anschließend werden die benötigten Dateisysteme eingebunden. Damit die UUIDs richtig verarbeitet werden können, wird vorher das /dev-System des chroot-Systems an das Live-System gekoppelt.

mount -o bind /dev root/dev
chroot root
mount /boot
mount -t proc proc /proc
mount -t sysfs sys /sys 

Sollte auf dem Festplattensystem noch kein cryptsetup installiert sein, so ist nun der richtige Zeitpunkt, es zu tun.

  • cryptsetup (universe, [3])

/etc/initramfs-tools/modules editieren

Als nächstes wird die Datei /etc/initramfs-tools/modules mit einem Editor geöffnet und folgende Zeilen hinzugefügt:

aes
dm-crypt
sha256

Dies bewirkt, dass die für die Verschlüsselung nötigen Kernel-Module beim Booten verfügbar sind.

Vor Jaunty:

Bei Ubuntu-Versionen vor Jaunty muss zusätzlich das Modul

dm-mod

mit in die Liste aufgenommen werden.

/etc/fstab editieren

In der Datei /etc/fstab müssen die Einträge für das Root-Dateisystem angepasst werden, da von nun an ja nicht mehr die (verschlüsselte) Gerätedatei /dev/sdx sondern das "gemappte" (entschlüsselte) Device verwendet werden soll:

# /dev/sda3
UUID=7153f497-1b66-476d-bb3b-85e3fe18b402 /               ext3    defaults,errors=remount-ro 0       1

muss (für das Root-Dateisystem) in

# /dev/sda3
# UUID=7153f497-1b66-476d-bb3b-85e3fe18b402 /               ext3    defaults,errors=remount-ro 0       1
/dev/mapper/root /               ext3    defaults,errors=remount-ro 0       1

geändert werden.

/etc/crypttab editieren

In der Datei /etc/crypttab wird folgender Inhalt hinzugefügt:

root UUID=7153f497-1b66-476d-bb3b-85e3fe18b402 none luks,retry=1

Das bewirkt, ähnlich wie die /etc/fstab, dass der verschlüsselten Gerätedateie /dev/sda3 beim Systemstart entschlüsselt und unter /dev/mapper/root eingehängt wird.

Falls eine seperate home-Partition existiert muss nun auch diese in die Konfigurationsdateien eingetragen werden. Die nötigen Schritte finden sich hier.

/boot/grub/menu.lst editieren

Zum Schluss muss noch in der Datei /boot/grub/menu.lst

# kopt=root=UUID=7153f497-1b66-476d-bb3b-85e3fe18b402 ro splash

in

# kopt=root=/dev/mapper/root ro

geändert werden. Danach werden die automatisch erzeugten Einträge mit

update-grub 

neu erstellt. Die Änderungen bewirken unter anderem, dass der Boot-Splash beim Systemstart deaktiviert wird, damit die Passwortabfrage einwandfrei funktioniert. Ab Kernel 2.6.22-14 ist es nicht mehr nötig splash zu entfernen da die Abfrage des System-Passwortes in den grafischen Bootscreen integriert wurde.

Hinweis:

Falls nach Eingabe von update-grub die Fehlermeldung "findfs Unable to resolve [UUID der Boot-Partition]" kommt, sollte man den entsprechenden Eintrag in der /etc/fstab auf die entsprechende Partition (hier: /dev/sda1) ändern. Sonst kommt nach dem Neustart das böse Erwachen: Nach Auswahl des Boot-Eintags in Grub bekommt man nur noch "Error 15: File not found" zu sehen. Siehe Forenbeitrag: Grub Error 15 - File not found 🇩🇪

Änderungen Übernehmen und chroot-Umgebung verlassen

Um die Änderungen an der Datei /etc/initramfs-tools/modules zu übernehmen, muss noch

update-initramfs -u -k all 

ausgeführt werden. Dann kann man die chroot-Umgebung verlassen, das System neu starten und ohne Live-CD booten.

exit
reboot 

Beim Startvorgang wird man nach dem Passwort für die Root-Partition gefragt.

Das System ist nun bis auf den Auslagerungsspeicher und die Boot-Partition (/boot) voll verschlüsselt!

Auslagerungsspeicher verschlüsseln

Einleitung

Die Ubuntu-Installation ist nun abgesichert, allerdings ist der Auslagerungsspeicher noch unverschlüsselt. So ist es bösartigen Individuen unter Umständen also möglich, Teile des ausgelagerten Arbeitsspeichers auszulesen und so an Passwörter und andere Schützenswerte Daten zu gelangen. Aus diesem Grund sollte auch der Auslagerungsspeicher wie folgt verschlüsselt werden:

Hinweis:

Die folgenden Anpassungen können im laufenden Festplattensystem durchgeführt werden. Ein Start von der Live-CD ist also nicht nötig!

Verschlüsseltes Device erstellen

Zunächst wird die swap-Partition vorrübergehend deaktiviert.

swapoff -a 

Nun wird auf der swap-Partition ein verschlüsselter Container für die neue Swap-Partition erstellt, eingebunden und als swap formatiert.

/lib/cryptsetup/scripts/decrypt_derived root | cryptsetup luksFormat /dev/sda2 --key-file -
/lib/cryptsetup/scripts/decrypt_derived root | cryptsetup luksOpen /dev/sda2 swap --key-file -
mkswap /dev/mapper/swap 

Der Schlüssel wird aus der root-Partition generiert, daher ist später beim Booten keine Eingabe eines zusätzlichen Schlüssels für die swap-Partition nötig. Der Swap-Speicher kann nun mit

swapon /dev/mapper/swap 

wieder aktiviert werden.

Ab Jaunty

Die in Jaunty verwendete Version von udev generiert keine neuen UUIDs mehr für Datenträger, die mehrere Signaturen haben. Durch das verschlüsseln der swap-Partition hat diese nun zwei Signaturen. Um weiterhin mit UUIDs arbeiten zu können muss daher ab Jaunty die swap-Signatur der Partition mit folgendem Befehl gelöscht werden:

dd if=/dev/zero of=/dev/sda2 bs=1024 seek=1 count=3 

Weitere Information hierzu finden sich im zugehörigen Bug-Report: #362315

Konfigurationsdateien anpassen

In der Datei /etc/crypttab wird folgende Zeile hinzugefügt

swap UUID=ca8152bb-c6f6-4f91-a56d-39d48d03ef9d root luks,keyscript=/lib/cryptsetup/scripts/decrypt_derived

Die UUID erhält man durch

blkid /dev/sda2 

Damit der verschlüsselte Auslagerungsspeicher auch benutzt wird, muss dies noch in der Datei /etc/fstab eingetragen werden. Der Abschnitt:

# /dev/sda2
UUID=ca8152bb-c6f6-4f91-a56d-39d48d03ef9d  none            swap    sw              0       0

wird in

# /dev/sda2
/dev/mapper/swap  none            swap    sw              0       0

abgeändert.

Damit der Ruhezustand (Suspend-to-disk) weiterhin funktioniert muss noch dessen Konfiguration angepasst werden. In der Datei /etc/initramfs-tools/conf.d/resume wird die erste Zeile abgeändert in

RESUME=/dev/mapper/swap

Abschließend wird die Änderung übernommen:

update-initramfs -u -k all 

Home verschlüsseln (optional)

Falls /home sich auf einer eigenen Partition befindet, muss auch diese Partition verschlüsselt werden. Dies sollte direkt nach der Verschlüsselung der root-Partition geschehen, noch während man sich im Live-System befindet. Im Folgenden wird davon ausgegangen, dass sich die home-Partition unter /dev/sda4 befindet.

Partition verschlüsseln

Die folgenden drei Abschnitte müssen direkt nach dem Kapitel Root Partition verschlüsseln abgearbeitet werden.

Existierende Daten sichern

Im Verzeichnis /media wird ein weiteres verzeichnis erstellt, um auf die Daten der home-Partition zuzugreifen. Diese werden ebenfalls auf das backup-Medium gesichert.

mkdir home
mount /dev/sda4 home
tar -czvf backup/home.tar.gz -C home .
umount home 

Crypt-Device erstellen

Achtung!

Der Nachfolgende Befehl löscht sämtliche Dateien auf der betreffenden Partition unwiederbringlich! Man sollte ihn nur ausführen, wenn man wie oben beschrieben ein Backup der Daten auf /dev/sda4 angefertigt hat!

cryptsetup -c aes-xts-plain -y -s 512 luksFormat /dev/sda4 

Der Befehl verschlüsselt /dev/sda4 mit dem gleichen Algorithmus, mit dem schon die root-Partition verschlüsselt wurde. Das Passwort kann unabhängig vom Passwort für die root-Partion gewählt werden. Es ermöglicht den Zugriff auf die home-Partition, falls die root-Partition beschädigt wurde um vollständigem Datenverlust vorzubeugen. Für den alltäglichen Gebrauch bekommt die Partition einen weiteren Schlüssel, der das Entschlüsseln abhängig von der root-Partition erlaubt. Somit muss beim Systemstart nur ein Passwort eingegeben werden:

cryptsetup luksOpen /dev/sda3 root
/lib/cryptsetup/scripts/decryt_derived root >> /tmp/key.tmp
cryptsetup luksAddkey /dev/sda4 /tmp/key.tmp 

Zunächst wird die verschlüsselte root-Partition nach Eingabe des Passwortes geöffnet. Aus ihr wird nun der Schlüssel generiert und temporär gespeichert. Dieser Schlüssel wird nun der home-Partition hinzugefügt. Hierbei wird nach dem vorher bei der Erstellung gewählten Passwort gefragt.

Crypt Device formatieren und Daten zurücksichern

Das neu erstellte Crypt-Device wird nun geöffnet:

/lib/crypsetup/scripts/decrypt_derivied root | cryptsetup luksOpen /dev/sda4 home 

Möchte man die Sicherheit der verschlüsselten Partition erhöhen, muss man diese mittels Zufallsdaten überschreiben, was Kryptoanalytikern die Möglichkeit nimmt überhaupt noch festzustellen welche Daten verschlüsselt sind und welche nicht.

dd if=/dev/urandom of=/dev/mapper/home 

Jetzt kann mit dem Formatieren und mounten der Partition fortgefahren werden:

cd /media
mkfs.ext3 /dev/mapper/home
mount /dev/mapper/home home 

Dann wird der eben gesicherte Inhalt der home-Partition zurück kopiert:

tar -xzvf backup/home.tar.gz -C home . 

System vorbereiten

Zusätzlich zu den Änderungen im Abschnitt System zum Booten vorbereiten muss auch die home-Partition in /etc/fstab und /etc/crypttab eingetragen werden bevor die Änderungen übernommen und die chroot-Umgebung verlassen wird.

/etc/fstab/editieren

Zusätzlich zum Eintrag der root-Partition muss auch der Eintrag der home-Partition angepasst werden.

# /dev/sda4
UUID=ab5f1dca-45c1-4c66-8cfb-e6ca84ec6650 /home           ext3    defaults        0       2

muss (für das home-Dateisystem) in

# /dev/sda4
# UUID=ab5f1dca-45c1-4c66-8cfb-e6ca84ec6650 /home           ext3    defaults        0       2
/dev/mapper/home /home           ext3    defaults        0       2

abgeändert werden.

/etc/crypttab editieren

In der Datei /etc/crypttab wird folgende Zeile hinzugefügt:

home UUID=ab5f1dca-45c1-4c66-8cfb-e6ca84ec6650 root luks,keyscript=/lib/cryptsetup/scripts/decrypt_derived

Das bewirkt, ähnlich wie die /etc/fstab, dass die verschlüsselten Gerätedatei /dev/sda4 beim Systemstart entschlüsselt und unter /dev/mapper/home eingehängt wird. Dazu wird der zusätzliche Schlüssel, der aus der root-Partition abgeleitet wird, verwendet, so dass keine zusätzliche Passwort-Abfrage nötig wird.

Neues System installieren

Falls kein bestehndes System verschlüsselt, sondern ein neues installiert werden soll, müssen lediglich wie oben beschrieben die Crypt-Devices für / und /home erstellt werden, nachdem die Fesplatte entsprechend partitioniert wurde. Daten sichern und zurückschreiben entfällt hierbei. Anschließend müssen die Crypt-Devices geöffnet werden:

cryptsetup luksOpen /dev/sda3 root
cryptsetup luksopen /dev/sda4 home 

Die geöffneten Devices dürfen jedoch nicht gemountet werden. Anschließend wird die Installation aus dem Live-System gestartet. Dort werden die Geräte wie folgt verwendet:

  • Für / (root) benutzt man /dev/mapper/root

  • Für /boot benutzt man /dev/sda1

  • Für /home benutzt man /dev/mapper/home

  • Als swap nimmt man /dev/sda2

Nach Abschluß der Installation darf das System nicht direkt neu gestartet werden. Es müssen erst die Arbeiten aus dem Abschnitt System zum Booten vorbereiten durchgeführt werden. Der Auslagerungsspeicher kann anschließend im laufenden System gemäß Auslagerungsspeicher verschlüsseln verschlüsselt werden.

Es ist nicht zwingend notwenig, eine eigene home-Partition zu erstellen. Bei knappem Festplatten-Platz kann darauf verzichtet werden. Generell ist es jedoch sinnvoll System-Daten und Nutzer-Daten getrennt zu speichern, so dass nach Möglichkeit eine eigene home-Partition angelegt werden sollte.

System wiederherstellen

Sollte man aus irgendeinem Grund ein verschlüsseltes System wieder entschlüsseln wollen, so muss zuerst wieder von einem Live-System gestartet (siehe oben).

Live-System vorbereiten

Wie gehabt muss das folgende Paket im Live-System installiert werden und [2]:

  • cryptsetup (universe [3])

Auch die benötigten Kernelmodule müssen wieder geladen werden:

sudo -s
modprobe aes
modprobe dm-crypt
exit 

Vor Jaunty

In Ubuntu-Versionen vor Jaunty muss auch hier das Modul dm-mod zusätzlich geladen werden:

modprobe dm-mod 

Einhängepunkte erstellen und belegen

Es werden nun Einhängepunkte erstellt, in die die verschlüsselten Partitionen gemountet werden:

sudo -s
mkdir /media/root
cd /media
cryptsetup luksOpen /dev/sda3 root
mount /dev/mapper/root root
exit 

Falls eine eigene home-Partition existiert wird auch diese gemountet:

sudo -s
mkdir /media/home
cd /media
cryptsetup luksOpen /dev/sda4 home
mount /dev/mapper/home home
exit 

Daten kopieren

Die entschlüsselten Daten liegen nun in den Ordnern /media/root und /media/home. Von hier aus können sie nun beispielsweise auf eine externe Festplatte kopiert werden. Dann wird das System neu partitioniert (wie zum Beispiel weiter oben beschrieben) und die Daten aus /media/root auf die neu angelegte Root-Partition bzw. aus /media/home auf die neue Home-Partition verschoben.

Konfigurationsdateien anpassen

Im neuen System sollten nun noch die Konfigurationsdateien /etc/fstab, /etc/crypttab und /boot/grub/menu.lst auf den neuen Partitionen angepasst werden:

  • Aus der Datei /etc/fstab werden jene Einträge, die mit /dev/mapper/ beginnen durch der neuen Partitionierung entsprechende Einträge wie hier ersetzt.

  • In der Datei /etc/crypttab werden alle Einträge gelöscht

  • In der Datei /boot/grub/menu.lst werden die oben beschriebenen Änderungen wieder rückgängig gemacht.

System neustarten

Nach einem Neustart des Systems sollte man nun wieder mit einem unverschlüsseltem Ubuntu arbeiten können.


Diese Revision wurde am 6. Mai 2011 09:36 von frustschieber erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Sicherheit, Installation, System