Um IPSec auf einem Gateway zu installieren, ruft man im Hauptverzeichnis von FreeS/WAN (z.B. unter /usr/src/freeswan-1.00, falls man das tar-Verzeichniss unter /usr/src entpackt hat) einen der drei folgenden Befehle für die Kernelkonfiguration auf.
make menuconfig (f"ur menuconfig) make xgo (f"ur xconfig) make ogo (f"ur config)
Die benötigten Optionen (IP-forwarding/gatewaying, IP-tunneling und Kernel/User network link driver) sind in der Regel automatisch aktiviert, und es steht nun eine zusätzliche Option für IPSec zur Verfügung, die ebenfalls schon aktiviert ist.
[*]IP: forwarding/gatewaying [*]IP: tunneling [*]Kernel/User network link driver [*]IP Security Protocol (FreeS/WAN IPSEC) --- IPSec options (FreeS/WAN) [*] IPSEC: IP-in-IP encapsulation [ ] IPSEC: Enable Insecure algorithms (strongly discouraged) [*] IPSEC: Enable ICMP PMTU messages [*] IPSEC: Authentication Header [*] HMAC-MD5 authentication algorithm [*] HMAC-SHA1 authentication algorithm [*] IPSEC: Encapsulating Security Payload [*] 3DES encryption algorithm [*] IPSEC Debugging OptionSind alle Einstellungen vorgenommen, und ist die Konfiguration abgeschlossen, wird der Kernel automatisch übersetzt. Dies kann je nach Prozessor Minuten bis mehrere Stunden dauern. Dabei sollte am Ende einer erfolgreichen Übersetzung folgende Zeile zu lesen sein:
make[2]: Leaving directory ..... make[1]: Leaving directory ..... utils/errcheck out.kbuild
Nach erfolgreicher Übersetzung sollte man das System mit dem neuen Kernel
neu starten. (Siehe Beschreibung der jeweiligen Linux Distribution).
Bei einem Neustart erkennt man nun anhand neuer Einträge das IPSec
installiert worden ist. Es erscheint auch eine Fehlermeldung, die
auf noch nicht korrekte Einstellung des IPSec Interfaces beruht.
(Das IPSec Interface ist bei einer neuen Installation
defaultmäßig auf dev999 konfiguriert).
Im folgenden Abschnitt wird auf die nötigen Konfigurationen eingegangen.
Besonderheiten bei der SUSE Distribution:
Bei der SUSE Distribution funktionierte nur der make ogo Aufruf korrekt.
Desweiteren muß man die Warnings Einträge in der Datei
/usr/src/linux/include/linux/types.h
auskommentieren, da ansonsten die
Kernelübersetzung abbricht.
(Auskommentieren der Zeilen 3 bis 14).
Die Kerneloptionen sind nochmals zu überprüfen. Es wurden einige Optionen
nicht wie versprochen automatisch aktiviert.
(``[ ] IPSec'' wird z.B. nicht aktiviert).
Nach erfolgreicher Übersetzung befindet sich der neue Kernel wie gewohnt
unter /usr/src/linux/arch/i386/boot/zImage.