Opportunistic Encryption: Difference between revisions

From
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
==Hardware==
=Hardware=
Beliebige Rechner, auf denen Linux mit Kernel 2.4 oder 2.6 drauf läuft.
Beliebige Rechner, auf denen Linux mit Kernel 2.4 oder 2.6 drauf läuft.


==Software==
=Software=


FreeSwan auf mindestens zwei verschiedenen Rechnern und einen DNS-Server.
FreeSwan auf mindestens zwei verschiedenen Rechnern und einen DNS-Server.

Revision as of 13:14, 9 September 2005

Hardware

Beliebige Rechner, auf denen Linux mit Kernel 2.4 oder 2.6 drauf läuft.

Software

FreeSwan auf mindestens zwei verschiedenen Rechnern und einen DNS-Server.

Wir haben für unsere Installation Debian Sarge verwendet mit Kernel 2.6.

Mit Debian reicht ein

apt-get install freeswan

Das eigentlich aktuellere OpenSwan in derzeit für OE leider nicht geeignet. Zumindest bei kernel-2.6.8 besteht das Problem, dass die folgende Fehlermeldung kommt:

Sep  9 09:17:45 localhost pluto[13449]: %hold otherwise handled during DNS lookup for Opportunistic Initiation for 10.0.42.2 to 10.0.23.2

Im Verzeichnis openswan-*/doc/2.6.known-issues steht das zumindest unter CURRENT ISSUES.


Keys erzeugen

Um DNS-Einträge mit Schlüsseln zu erzeugen nimmt man ipsec mailkey. Dieses Tool generiert eine ausführbare Datei in der die TXT Records stehen, die man in das Reverse-DNS eintragen muss.

ipsec mailkey --me test@localhost --reverse 10.0.23.2

In der Datei befindet sich dann der DNS-Record:

--DNS_RESOURCE_RECORDS--

2.23.0.10.in-addr.arpa. IN      TXT     "X-IPsec-Server(10)=10.0.23.2" "lakdfklajsdfoiweruo82347.... "

--DNS_RESOURCE_RECORDS--

Wenn man nun die Rechner die Records eingetragen hat, muss man noch dafür sorgen, dass DNS-Anfragen beim Aushandeln der Schlüssel nicht der OE zum Opfer fällt. Dazu trägt man am besten den DNS-Server in die Datei

/etc/ipsec.d/policies/clear

in Form von

a.b.c.d/32

ein.

Falls der DNS-Server lokal läuft sollte man Verschlüsselung auf dem lo-Deviceverbieten, indem man folgendes in die /etc/ipsec.conf einträgt. (Steht auch im doc/* drin.)

conn exclude-lo
    authby=never
    left=127.0.0.1
    leftsubnet=127.0.0.0/8
    right=127.0.0.2
    rightsubnet=127.0.0.0/8
    type=passthrough
    auto=route