Startseite
Datenbanken (mySQL, SQL, etc.)
Mailserver
Shell
Archivierung (tar) und Komprimierung (compress, gzip)
Daten per SSH versenden
grub - Der neue Bootloader
Konfiguration des Bootloaders GRUB Gentoo Linux
Spiegeln von Internetseiten - wget
Sicherheit
Verschiedenes
Webserver
Suche



Ausdruck von: www.gentoo.de/doc/de/handbook/handbook-amd64.xml

Konfiguration_des_Bootloaders___gentoo.de.pdf   95 K

Konfiguration des Bootloaders GRUB Gentoo Linux

10. Konfiguration des Bootloaders


Zitat von http://www.gentoo.de/doc/de/handbook/handbook-amd64.xml?part=1&chap=10

Inhalt:

10.a. Eine Wahl treffen

Einleitung

Nun, da Ihr Kernel konfiguriert und kompiliert ist und die notwendigen Systemkonfigurationsdateien richtig konfiguriert sind, ist es Zeit ein Programm zu installieren, dass Ihren Kernel lädt wenn Sie Ihr System starten. Solch ein Programm nennt man einen Bootloader. Jedoch bevor sie anfangen, betrachten sie ihre Wahlmöglichkeiten...

Optional: Framebuffer

Wenn Sie Ihren Kernel mit Framebuffer Unterstützung konfiguriert haben (oder die genkernel Standardkonfiguration nutzen), müssen Sie ein vga und/oder ein video Statement zu Ihrer Bootloaderkonfigurationsdatei hinzufügen, wenn sie Framebuffer benötigen.

64-Bit Systeme müssen den vesafb Treiber verwenden und müssen daher das vga Statement enthalten. Das vga Statement kontrolliert die Auflösung und Farbtiefe Ihres Framebuffer Bildschirms für vesafb wie in /usr/src/linux/Documentation/fb/vesafb.txt (wird mit einem Kernel Quellpaket installiert) erwähnt, müssen Sie dem Kernel die VESA Nummer passend zur gewünschten Auflösung und Farbtiefe mitgeben.

Die nächste Tabelle listet die verfügbaren vga Werte auf, die Sie benutzen können. In den Beispielkonfigurationsdateien benutzen wir 800x600 @ 16bpp, daher 788.

Für das vga Statement:


640x480 800x600 1024x768 1280x1024
256 0x301 0x303 0x305 0x307
32k 0x310 0x313 0x316 0x319
64k 0x311 0x314 0x317 0x31A
16M 0x312 0x315 0x318 0x31B

Das video Statement kontrolliert Framebuffer Display Optionen. Es benötigt den Framebuffer Treiber (vesafb für 2.6 Kernel, vesa für 2.4 Kernel) gefolgt von den Kontrollstatements die Sie aktivieren möchten. Alle Variablen sind in /usr/src/linux/Documentation/fb/vesafb.txt gelistet, wir möchten Sie daher nur über die drei wichtigsten informieren:

Option Beschreibung
ywrap Davon ausgehen, dass die Grafik ihren Speicher umbrechen kann (das heißt am Anfang fortfahren, wenn das Ende erreicht wurde)
mtrr MTRR Register einrichten

Das Ergebnis dieser beiden Statements könnte etwas wie vga=0x318 video=vesafb:mtrr,ywrap oder video=vesafb:mtrr,ywrap,1024x768-32@85 sein. Behalten Sie dies (oder schreiben Sie es auf), Sie werden es bald benötigen!

Merken Sie sich diesen Wert (oder schreiben Sie ihn auf), Sie werden ihn wenig später brauchen.

Nachdem Sie jetzt ein Gefühl dafür erlangt haben, ist es an der Zeit GRUB zu installieren.

10.b. Standard: Die Benutzung von GRUB

Das Verstehen von GRUBs Terminologie

Der wichtigste Teil beim Verstehen von GRUB ist, sich mit der Art vertraut zu machen, in der GRUB Festplatten und Partitionen benennt. Ihre Linux Partition /dev/hda1 wird (hd0,0) unter GRUB genannt. Beachten Sie die Klammern um das hd0,0, denn diese sind Pflicht.

Festplatten zählen von Null anstatt von "a" und Partitionen starten bei Null anstatt bei 1. Beachten Sie bitte auch, dass mit den hd-Geräten nur Festplatten gezählt werden, keine ATAPI-IDE Geräte wie CD-ROM Player oder Brenner. Dasselbe Modell wird auch bei SCSI Laufwerken verwendet. (Normalerweise erhalten sie höhere Nummern als IDE Laufwerke, außer wenn das BIOS konfiguriert ist von SCSI zu booten.) Wenn Sie dem BIOS angeben von einer anderen Festplatte zu booten (zum Beispiel Primary Slave), ist diese Festplatte für grub hd0.

Vorausgesetzt Sie haben eine Festplatte an /dev/hda, einen CD-ROM Player an /dev/hdb, einen Brenner an /dev/hdc, eine zweite Festplatte an /dev/hdd und keine SCSI Festplatte, dann wird /dev/hdd7 übersetzt in (hd1,6). Es mag schwierig klingen und das ist es in der Tat auch, aber wie wir werden sehen, bietet GRUB einen Tab-Komplettierungsmechanismus an, der hilfreich ist für diejenigen von Ihnen die viele Festplatten und Partitionen haben und sich ein wenig verloren fühlen mit dem Nummerierungssystem von GRUB.

Nachdem man dafür jetzt ein Gefühl erlangt hat, ist es nun Zeit GRUB zu installieren.

Installieren von GRUB

Befehlsauflistung 1: Installieren von GRUB
# emerge grub 

Obwohl GRUB nun installiert ist, müssen Sie trotzdem noch eine Konfigurationsdatei dafür schreiben und GRUB in den MBR installieren, damit GRUB automatisch Ihren neu erstellten Kernel bootet. Erstellen Sie /boot/grub/grub.conf mit nano (oder wenn gewünscht einem anderen Editor):

Befehlsauflistung 2: Erstellen von /boot/grub/grub.conf
# nano -w /boot/grub/grub.conf 

Nun wollen wir eine grub.conf schreiben. Folgend finden Sie zwei mögliche grub.conf für das Partitionierungsbeispiel, das wir in diesem Leitfaden verwendet haben mit dem Kernel-Image kernel-2.6.11-gentoo-r3. Wir werden nur die erste grub.conf ausführlich erläutern.

  • Die erste grub.conf für Leute, die nicht genkernel benutzt haben
  • Die zweite grub.conf ist für Leute, die genkernel benutzt haben
Notiz
Wenn Ihr Root-Dateisystem JFS ist, müssen Sie "ro" an die kernel Zeile anhängen, da JFS zuerst sein Log durchgeht, bevor es ein read-write Mounten erlaubt.
Befehlsauflistung 3: grub.conf für Nicht-genkernel Benutzer
# Welcher Eintrag standardmäßig gebootet werden soll. 0 ist der Erste, 1 ist der Zweite usw.
default 0
# Wieviele Sekunden gewartet werden soll, bevor der Standardeintrag gebootet wird.
timeout 30
# Eine nettes, fettes Hintergrundbild um die ganze Sache ein wenig zu würzen :)
# Auskommentieren, wenn Sie keine Grafikkarte installiert haben.

splashimage=(hd0,0)/grub/splash.xpm.gz

title=Gentoo Linux 2.6.11
# Partition in der das Kernel-Image (oder das Betriebssystem) vorhanden ist
root (hd0,0)
kernel (hd0,0)/kernel-2.6.11-gentoo-r3 root=/dev/hda3

# Die nächsten drei Zeilen werden nur benötigt wenn Sie einen Dualboot mit einem Windows System einrichten wollen.
# Hier in diesem Fall liegt Windows auf /dev/hda6.
title=Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1
Befehlsauflistung 4: grub.conf genkernel Benutzer
default 0
timeout 30
splashimage=(hd0,0)/grub/splash.xpm.gz

title=Gentoo Linux 2.6.11
root (hd0,0)
kernel (hd0,0)/kernel-2.6.11-gentoo-r3 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hda3 udev
initrd /initramfs-genkernel-amd64-2.6.11-gentoo-r3

# Nur wenn Sie einen Dual-Boot einrichten möchten
title=Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1
Notiz
Das udev am Ende der Kernel Zeile wird benötigt, um einen Bug in einigen genkernel Versionen zu umgehen, wenn Sie udev benutzen (was standardmäßig der Fall ist).
Notiz
Wenn Sie ein anderes Partitionierungschema verwenden und/oder Kernel-Image, passen Sie Ihre Konfiguration entsprechend an. Stellen Sie jedoch sicher, dass alles was einem GRUB-Device folgt (wie z.B. (hd0,0)) relativ zum Mountpoint ist, nicht dem Root. Mit anderen Worten, (hd0,0)/grub/splash.xpm.gz ist in Wirklichkeit /boot/grub/splash.xpm.gz denn (hd0,0) ist /boot.

Wenn Sie noch zusätzliche Optionen an den Kernel übergeben müssen, fügen Sie diese einfach zum Ende des Kernelbefehls hinzu. Eine Option übermitteln wir schon (root=/dev/hda3 oder real_root=/dev/hda3), aber Sie können auch weitere übermittlen. Als Beispiel benutzen wir das video Statement für Framebuffer, das wir schon besprochen haben.

genkernel Benutzer sollten wissen, dass Ihr Kernel die selben Bootoptionen benutzt wie der auf der Installations CD. Zum Beispiel, wenn Sie SCSI Geräte haben, sollten Sie doscsi als Kerneloption hinzufügen.

Speichern Sie nun die grub.conf Datei und verlassen Sie den Editor. Sie müssen GRUB noch in den MBR (Master Boot Record) schreiben.

Die GRUB Entwickler empfehlen die Nutzung von grub-install. Wenn grub-install fehlschlägt haben Sie immer noch die Option GRUB händisch zu installieren.

Fahren Sie nun mit Standard: Installieren von GRUB mit grub-install oder Alternativ: GRUB händisch installieren fort.

Standard: Installieren von GRUB mit grub-install

Um GRUB zu installieren müssen Sie das grub-install Kommando ausführen. Allerdings wird grub-install nicht sofort funktionieren, da wir uns innerhalb einer chroot-Umgebung befinden. Wir zunächst müssen /etc/mtab aktualisieren (die Datei welche Informationen über alle gemounteten Dateisysteme enthält). Glücklicherweise gibt es einen einfachen Weg um dies zu erreichen - Kopieren Sie einfach /proc/mounts nach /etc/mtab:

Befehlsauflistung 5: /etc/mtab aktualisieren
# cp /proc/mounts /etc/mtab 

Jetzt können wir GRUB durch grub-install installieren:

Befehlsauflistung 6: grub-install ausführen
# grub-install /dev/hda 

Wenn Sie weitere Fragen GRUB betreffend haben, konsultieren Sie die GRUB FAQ oder das GRUB Manual.

Fahren Sie nun mit Rebooten des Systems fort.

Alternativ: GRUB händisch installieren

Um mit der Konfiguration von GRUB zu beginnen, tippen Sie grub. Ihnen wird die grub> GRUB Kommdandozeile präsentiert. Nun müssen Sie die richtigen Befehle eintippen um den GRUB Boot Record auf Ihrer Festplatte zu installieren.

Befehlsauflistung 7: Starten der GRUB Shell
# grub 
Notiz
Wenn das System kein Diskettenlaufwerk hat, fügen Sie die --no-floppy Option an das obige Kommando an, damit grub nicht nach nicht-existierenden Diskettenlaufwerken sucht.

In der Beispielskonfiguration wollen wir GRUB so installieren, dass es alle Informationen von der Boot Partition /dev/hda1 liest und den GRUB Boot Record auf dem MBR (Master Boot Record) der Festplatte installiert, damit das Erste was wir sehen, wenn wir den Computer einschalten die GRUB Eingabeaufforderung ist. Natürlich müssen Sie die Befehle entsprechend ändern, wenn Sie von der Beispielkonfiguration während der Installation abgewichen sind.

Der Tab-Komplettierungsmechanismus von GRUB kann innerhalb von GRUB benutzt werden. Zum Beispiel, wenn Sie "root (" eintippen, gefolgt von einem TAB, wird Ihnen eine Liste von Geräten gegeben (solche wie hd0). Wenn Sie "root (hd0," eintippen, gefolgt von einem TAB, wird Ihnen eine Liste von verfügbaren Partitionen angezeigt, unter denen Sie auswählen können (solche wie hd0,0).

Durch Benutzung der Tab-Komplettierung sollte das Einrichten von GRUB nicht allzu schwer sein. Also weiter in der Konfiguration von GRUB!

Befehlsauflistung 8: Installieren von GRUB im MBR
grub> root (hd0,0)          (Angabe wo sich Ihre /boot Partition befindet)
grub> setup (hd0) (Installiere GRUB im MBR)
grub> quit (Verlasse die GRUB Shell)
Notiz
Wenn Sie GRUB lieber in einer bestimmten Partition anstatt des MBR installieren wollen, müssen Sie das setup so verändern, dass es auf die richtige Partition verweist. Zum Beispiel, wenn Sie GRUB in /dev/hda3 installieren wollen, dann wird der Befehl zu setup (hd0,2). Diese Option wird in der Regel nur von wenigen Benutzern genutzt.

Wenn Sie weitere Fragen GRUB betreffend haben, konsultieren Sie die GRUB FAQ oder das GRUB Manual.

Fahren Sie nun mit Rebooten des Systems fort.

10.c. Rebooten des Systems

Verlassen Sie die chroot Umgebung und unmounten Sie alle gemounteten Partitionen. Danach tippen Sie das magische Kommando ein, auf das Sie solange gewartet haben: reboot.

Befehlsauflistung 9: Unmounten aller Partitionen und Rebooten
# exit
# cd
# umount /mnt/gentoo/boot /mnt/gentoo/proc /mnt/gentoo
# reboot

Vergessen Sie nicht die bootbare CD aus dem Laufwerk zu nehmen, sonst wird diese anstatt Ihres neuen Gentoo Systems gestartet.

Nachdem Sie in die neue Gentoo Installation gebootet haben schließen Sie die Installation mit Abschließen der Gentoo Installation ab.


[ << ] [ < ] [ Home ] [ Print ] [ > ] [ >> ]


Die Inhalte dieses Dokuments sind unter der Creative Commons - Attribution / Share Alike Lizenz lizenziert.

 

Verwenden des Kryptofilesystems


Zitat von http://portal.suse.com/sdb/de/2001/06/jsj_crypto_filesystem_mini_howto.html

Bezieht sich auf: SUSE LINUX 7.2 -

Momentan gibt es keine Möglichkeit zur Konfiguration eines Kryptofilesystems nach dem eigentlichen Installationsprozess mit Hilfe von YaST2. Deshalb muss man dieses manuell konfigurieren.

Anliegen

Wie konfiguriere ich ein verschlüsseltes Dateisystem (Kryptofilesystem)?

Vorgehen

Zunächst muss das Kernelmodul für den Verschlüsselungsalgorithmus geladen werden.
modprobe loop_fish2
Der Twofish-Algorithmus ist momentan der einzige Algorithmus, der der SuSE Linux beiliegt. Alle anderen Algorithmen gelten als nicht hinreichend sicher, es sind erfolgreiche Angriffe dokumentiert oder es existieren patentrechtliche Bedenken vor.

Es gibt zwei Möglichkeiten, ein verschlüsseltes Dateisystem anzulegen:
  1. Verschlüsseln einer ganzen Partition
  2. Verwenden einer regulären Datei zur Verschlüsselung

Verschlüsselung einer ganzen Partition

Hierzu muss zunächst ein sog. loop-Device konfiguriert werden, danach das Dateisystem erstellt und zuletzt gemountet werden. (Wir nehmen in diesem Beispiel an, dass die Partition /dev/hda3 verschlüsselt werden soll. Diese Partition wurde bereits vorher angelegt.)
ACHTUNG: Alle Daten, die sich bis jetzt auf der Partition /dev/hda3 befinden, werden gelöscht!
losetup -e twofish /dev/loop0 /dev/hda3
Hier kommt eine Passwortabfrage. Dieses Passwort wird zur Verschlüsselung der Daten des Dateisystems verwendet. Vergessen Sie dieses Passwort nicht, da es der Schlüssel zu den Daten ist, die Sie auf diesem Dateisystem abspeichern. Sollten Sie dieses Passwort vergessen, sind alle diese Daten verloren!
mkreiserfs /dev/loop0
mount -t reiserfs /dev/loop0 /encrypt_part
Das hier angelegte Dateisystem verwendet ein Reiser-Filesystem, die Daten werden mit dem Twofish-Algorithmus und dem von Ihnen eingegebenen Passwort verschlüsselt. Der Pfad zu diesem Dateisystem ist in diesem Beispiel /encrypt_part (Bitte stellen Sie sicher, dass dieser Mountpunkt existiert!).

Verwenden einer regulären Datei

Der Hauptunterschied zum vorhergegangenen Beispiel ist der, dass hier eine normale Datei auf einem gewöhnlichen Dateisystem verwendet wird, um die verschlüsselten Daten zu speichern.
Zunächst muss diese Datei angelegt werden.
dd if=/dev/urandom of=/tmp/cryptfile bs=1024 count=20000
losetup -e twofish /dev/loop1 /tmp/cryptfile
mke2fs /dev/loop1
mount -t ext2 /dev/loop1 /encrypt_file
Nach dem Kommando losetup werden Sie nach dem Passwort für die Verschlüsselung gefragt.

In diesem Beispiel enthält die Datei /tmp/cryptfile das in diesem Falle verschlüsselte ext2-Dateiverzeichnis mit einer Grösse von 20MB. Die Daten sind erreichbar unter dem Verzeichnis /encrypt_file.

Abmounten eines verschlüsselten Dateisystems

Das Abmounten vollzieht sich in zwei Schritten
Zunächst wird das Dateisystem abgehängt,
umount /encrypt_part
und danach das verwendete loop-Device freigegeben, damit es zu einem späteren Zeitpunkt weiterverwendet werden kann:
losetup -d /dev/loop0

Automatisches Mounten während des Bootvorganges

Wenn die verschlüsselten Dateisysteme während der Bootphase automatisch gemountet werden sollen, müssen Sie noch die Datei /etc/cryptotab erstellen und mit folgendem Inhalt füllen:
/dev/loop0  /dev/hda3       /encrypt_part  reiserfs  twofish  defaults
/dev/loop1 /tmp/cryptfile /encrypt_file ext2 twofish defaults
Das Format dieser Datei ist stark an das Format der Datei /etc/fstab angelehnt. In der ersten Spalte steht der Name des loop-Devices, in der zweiten der Name der Partition bzw. der Datei, die die verschlüsselten Daten enthät. In der dritten Spalte steht der Mountpoint gefolgt vom Typ des verwendeten Dateisystems. Die fünfte Spalte enthält den Namen des Verschlüsselungsalgorithmus und die sechste Spalte Mountparameter, wie sie auch in der Datei /etc/fstab verwendet werden. Die Manpage zu fstab gibt Auskunft über die verwendbaren Parameter.

Bitte beachten Sie, dass beim Mounten des Dateisystems ebenfalls das Passwort abgefragt wird! Sie müssen in jedem Falle an dieser Stelle manuell eingreifen. Das System wartet auf die Eingabe des Passworts!

Manuelles Mounten

Wer Bedenken bei dem oben erwähnten automatischen Verfahren verspührt, wird wohl eher versucht sein, das verschlüsselte Dateisystem von Hand zu mounten. Dieses trifft aber zunächst auf das Problem, dass das Kommando mount nur durch den Benutzer root ausführbar ist. Man kann dies aber umgehen, in dem man auf die Erstellung der Datei /etc/cryptotab verzichtet und dafür für das entsprechende Dateisystem einen Eintrag in der Datei /etc/fstab vornimmt, wie weiter unten beschrieben.
Bei den bisher beschriebenen Vorgängen wurde das verschlüsselte Dateisystem so gemountet, dass ausschließlich der Benutzer root auf dieses Dateisystem zugreifen konnte.
Um dieses zu umgehen, ändern Sie bitte den Eigentümerschaft des Mountpunkts auf Ihren Benutzernamen (hier z.B. linuxuser):
chown linuxuser /encrypt_file
Sicherheitshalber ändern Sie auch noch die Zugriffsrechte auf diesen Mountpunkt so, dass nur noch Sie auf dieses Verzeichnis zugreifen können:
chmod 700 /encrypt_file
Nun kommen wir aber zum Eintrag in die Datei /etc/fstab. Fügen Sie die folgende Zeile an diese Datei an:
/tmp/cryptfile /encrypt_file ext2 loop,encryption=twofish,noauto,user
Diese Zeile sorgt dafür, dass
  • beim Systemstart dieses Dateisystem nicht automatisch gemountet wird,
  • Sie als Benutzer dieses Dateisystem mit dem Kommando mount mounten können (sie benötigen nicht die Rechte des Benutzers root), und
  • sämtliche Parameter schon hier definiert sind (außerdem entfällt die Benutzung des Kommandos losetup)
Sie können nun, nachdem Sie sich eingeloggt haben, durch Eingabe des Kommandos
mount /encrypt_file
mit anschließender Eingabe des Passworts das verschlüsselte Dateisystem mounten. Sie haben nun exklusiven Zugriff auf die Dateien innerhalb des Verzeichnisbaums /encrypt_file.

Zum Abmounten des Dateisystems verlassen Sie bitte den Dateibaum innerhalb von /encrypt_file und geben das Kommando
umount /encrypt_file
ein.

Damit das Mounten allerdings funktioniert, muss das Modul loop_fish2 geladen sein. Man kann das Modul als normaler Benutzer leider nicht mit dem Kommando modprobe loop_fish2 laden, möglich ist es jedoch, dieses Kommando in der Datei /etc/init.d/boot.local unterzubringen, so dass dieses Modul bei jedem Systemstart geladen wird.

Passwörter

Es gibt zurzeit noch keine Möglichkeit das Verschlüsselungspasswort für ein bereits erstelltes Kryptofilesystem nachträglich zu ändern. Die einzige Möglichkeit wäre das Erstellen eines neuen Kryptofilesystems mit einem anderen Passwort und das nachträgliche Kopieren der Daten vom alten ins neue Dateisystem. Danach kann das alte verschlüsselte Dateisystem gelöscht werden.

Es ist immer anzuraten, lange Passwörter mit mehr als 8 Zeichen Länge zu verwenden. Noch sicherer ist die Verwendung eines zufällig generierten Passworts, da dies die Wahrscheinlichkeit des Knackens der Verschlüsselung minimiert.

Weitere Informationen

http://EncryptionHOWTO.sourceforge.net/

Haftungshinweis

Da sich die Methode der Verschlüsselung Partitionen bzw. Dateisystemen nach wie vor in der Experimentierphase befindet, können wir keinerlei Garantie für die Sicherheit Ihrer Daten übernehmen. Bitte fertigen Sie ein Backup Ihrer Daten an, bevor Sie mit der Konfiguration eines verschlüsselten Dateisystems beginnen. Halten Sie auch während Ihrer Arbeit mit der erzeugten Dateisystem immer eine Sicherungskopie auf dem aktuellen Stand!

Beachten Sie bitte außerdem, dass die Konfiguration eines verschlüsselten Dateisystems nicht im Rahmen des kostenlosen Installationssupports behandelt wird.

Sie experimentieren auf eigenes Risiko!

Stichwörter: encryption,crypto,filesystem,krypto,kryptofilesystem,verschluesselung