<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://howto.cactus.de/index.php?action=history&amp;feed=atom&amp;title=OpenSwan_VPN</id>
	<title>OpenSwan VPN - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://howto.cactus.de/index.php?action=history&amp;feed=atom&amp;title=OpenSwan_VPN"/>
	<link rel="alternate" type="text/html" href="http://howto.cactus.de/index.php?title=OpenSwan_VPN&amp;action=history"/>
	<updated>2026-05-30T19:28:58Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>http://howto.cactus.de/index.php?title=OpenSwan_VPN&amp;diff=276&amp;oldid=prev</id>
		<title>Tim: /* Single-Homed-Lösung einfach zu realisieren? */</title>
		<link rel="alternate" type="text/html" href="http://howto.cactus.de/index.php?title=OpenSwan_VPN&amp;diff=276&amp;oldid=prev"/>
		<updated>2017-10-10T09:23:29Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Single-Homed-Lösung einfach zu realisieren?&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:23, 10 October 2017&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 404:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 404:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== Single-Homed-Lösung einfach zu realisieren? =====&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== Single-Homed-Lösung einfach zu realisieren? =====&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Entgegen der Aussage unter&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; Laut&lt;/del&gt; http://lists.virus.org/users-openswan-0504/msg00028.html:&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Entgegen der Aussage unter http://lists.virus.org/users-openswan-0504/msg00028.html:&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&quot;A single-homed VPN server (i.e. with only one interface) is normally&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&quot;A single-homed VPN server (i.e. with only one interface) is normally&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;asking for trouble&quot;, konnte die beschriebene Lösung erfolgreich aufgebaut werden.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;asking for trouble&quot;, konnte die beschriebene Lösung erfolgreich aufgebaut werden.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-added&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== Offene Punkte =====&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== Offene Punkte =====&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Tim</name></author>
	</entry>
	<entry>
		<id>http://howto.cactus.de/index.php?title=OpenSwan_VPN&amp;diff=3&amp;oldid=prev</id>
		<title>192.168.100.90: Die Seite wurde neu angelegt: „=== Allgemeine Informationen ===  Der folgende Text versteht sich als Anleitung für diejenigen, die eine sichere VPN-Lösung mit einfachen, kostengünstigen M…“</title>
		<link rel="alternate" type="text/html" href="http://howto.cactus.de/index.php?title=OpenSwan_VPN&amp;diff=3&amp;oldid=prev"/>
		<updated>2013-08-20T15:00:50Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „=== Allgemeine Informationen ===  Der folgende Text versteht sich als Anleitung für diejenigen, die eine sichere VPN-Lösung mit einfachen, kostengünstigen M…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=== Allgemeine Informationen ===&lt;br /&gt;
&lt;br /&gt;
Der folgende Text versteht sich als Anleitung für diejenigen, die eine sichere VPN-Lösung mit einfachen, kostengünstigen Mitteln aufbauen wollen.&lt;br /&gt;
&lt;br /&gt;
Die hier beschriebenen Tests wurden größtenteils in 2009 durchgeführt.&lt;br /&gt;
&lt;br /&gt;
Für das erfolgreiche Nachstellen der VPN-Verbindungen sollten grundlegende Vorkenntnisse sowohl im Netzwerk-, im Linux- als auch im IPSec-VPN-Bereich vorhanden sein.&lt;br /&gt;
&lt;br /&gt;
==== NW-Übersicht ====&lt;br /&gt;
&lt;br /&gt;
Wir haben uns für folgende Topologie entschieden:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
                                      VPN-GW                     &lt;br /&gt;
                                    .104 |                      &lt;br /&gt;
                                         |                      &lt;br /&gt;
                       199.199.199.96/28 |                        |&lt;br /&gt;
                                         |                        |&lt;br /&gt;
                                     .97 |                        |            &lt;br /&gt;
     VPN-client---Internet------------Firewall--------------------|-- &lt;br /&gt;
                                                                  |  &lt;br /&gt;
                                                                  |&lt;br /&gt;
                                                            192.168.1.0/24&lt;br /&gt;
                                                        (internal corporate LAN)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das zentrale IPSec VPN-Gateway hat die fiktive Public-IP 199.199.199.104 und besitzt nur ein Netzwerkinteface (single-homed).&lt;br /&gt;
&lt;br /&gt;
==== Kommunikationsbeziehungen ====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                                                                           &lt;br /&gt;
        ==========IPSec-Tunnel======== VPN-GW                     &lt;br /&gt;
        ||                          .104 |                      &lt;br /&gt;
        ||                               |                      &lt;br /&gt;
        ||             199.199.199.96/28 |                        |&lt;br /&gt;
        ||                               |                        |&lt;br /&gt;
        ||                           .97 |                        |            &lt;br /&gt;
     VPN-client---Internet------------Firewall--------------------|-- &lt;br /&gt;
                                                                  |  &lt;br /&gt;
                                                                  |&lt;br /&gt;
                                                            192.168.1.0/24&lt;br /&gt;
                                                        (internal corporate LAN)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Auf Firewall-Systemen, die zwischen VPN-Client und VPN-Gateway liegen, müssen folgende Ports freigeschaltet werden:&lt;br /&gt;
* IKE 500/udp&lt;br /&gt;
* ESP 50/ip (ESP-Verkehr ohne NAT)&lt;br /&gt;
* 4500/udp (ESP-Verkehr mit NAT: NAT-Traversal, falls die ESP-Pakete genattet werden müssen)&lt;br /&gt;
&lt;br /&gt;
==== VPN-Gateway Server Beschreibung ====&lt;br /&gt;
&lt;br /&gt;
* Server-Typ: Standard Linux Server (hier Debian etch)&lt;br /&gt;
* IP: 199.199.199.104&lt;br /&gt;
* Kernel: 2.6.18, ältere Versionen wurden nicht getestet&lt;br /&gt;
 VPN-Gateway:~# uname -a&lt;br /&gt;
  Linux VPN-Gateway 2.6.18-4-686 #1 SMP Wed May 9 23:03:12 UTC 2007 i686 GNU/Linux&lt;br /&gt;
&lt;br /&gt;
=== Grundinstallation und Konfiguration ===&lt;br /&gt;
&lt;br /&gt;
==== Software Installation ====&lt;br /&gt;
&lt;br /&gt;
Die Installation des Openswan Pakets erfolgt z.B. unter Debian/Ubuntu mittels&lt;br /&gt;
 aptitude install openswan&lt;br /&gt;
&lt;br /&gt;
Status nach erfolgter Installation&lt;br /&gt;
 VPN-Gateway:~# dpkg -l | grep openswan&lt;br /&gt;
  ii  openswan                          2.4.6+dfsg.2-1.1                     IPSEC utilities for Openswan&lt;br /&gt;
&lt;br /&gt;
==== Kernel Parameter anpassen ====&lt;br /&gt;
Folgende Kernel-Parameter müssen auf dem VPN-Gateway (bootfest) gesetzt werden (Quelle: http://www.ducea.com/2006/08/01/how-to-enable-ip-forwarding-in-linux/):&lt;br /&gt;
&lt;br /&gt;
 sudo vi /etc/sysctl.conf&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
      net.ipv4.ip_forward=1&lt;br /&gt;
      net.ipv4.conf.all.send_redirects=0&lt;br /&gt;
      net.ipv4.conf.all.accept_redirects=0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anschließend die neuen Werte aktivieren:&lt;br /&gt;
 sudo sysctl -p /etc/sysctl.conf&lt;br /&gt;
&lt;br /&gt;
==== Key Handling ====&lt;br /&gt;
&lt;br /&gt;
===== Key generieren =====&lt;br /&gt;
 sudo ipsec newhostkey --output - --verbose &amp;gt; /tmp/filename-rsa&lt;br /&gt;
&lt;br /&gt;
Dieser Key muss in die Datei /etc/ipsec.secrets kopiert werden. &lt;br /&gt;
&lt;br /&gt;
===== Key anzeigen =====&lt;br /&gt;
 sudo ipsec showhostkey --right&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration in /etc/ipsec.conf ===&lt;br /&gt;
&lt;br /&gt;
Um sicherzustellen, dass jeweils die gewünschten Kommunikationspartner via VPN miteinander kommunizieren, bietet IPSec verschiedene Authentisierungsmethoden.&lt;br /&gt;
&lt;br /&gt;
Davon sind in OpenSwan die folgenden implementiert:&lt;br /&gt;
* Preshared Key&lt;br /&gt;
* RSA&lt;br /&gt;
* Zertifikat&lt;br /&gt;
&lt;br /&gt;
Im Rahmen dieser Anleitung beschränken wir uns auf die beiden letzen Authentisierungsarten.&lt;br /&gt;
&lt;br /&gt;
==== RSA Authentisierung ====&lt;br /&gt;
===== Konfiguration auf VPN-GW-Seite =====&lt;br /&gt;
&lt;br /&gt;
 sudo vi /etc/ipsec.conf&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
version 2.0     # conforms to second version of ipsec.conf specification&lt;br /&gt;
&lt;br /&gt;
# basic configuration&lt;br /&gt;
config setup&lt;br /&gt;
        nat_traversal=yes # NAT-TRAVERSAL support, see README.NAT-Traversal&lt;br /&gt;
        virtual_private=%v4:10.0.0.0/8&lt;br /&gt;
        nhelpers=0 # enable this if you see &amp;quot;failed to find any available worker&amp;quot;&lt;br /&gt;
&lt;br /&gt;
conn %default&lt;br /&gt;
    left=199.199.199.104            # Gateway&amp;#039;s information&lt;br /&gt;
    leftid=@vpn-gw.cactus.de&lt;br /&gt;
    leftnexthop=%defaultroute     # correct in many situations&lt;br /&gt;
    leftrsasigkey=xxx&lt;br /&gt;
    right=%any      # Wildcard: we don&amp;#039;t know the roadwarrior&amp;#039;s IP&lt;br /&gt;
    auto=add                     # authorizes but doesn&amp;#039;t start this connection at startup&lt;br /&gt;
&lt;br /&gt;
conn roadwarrior_2_cactus_office&lt;br /&gt;
    rightid=@roadwarrior.cactus.de&lt;br /&gt;
    rightrsasigkey=xxx&lt;br /&gt;
    rightsubnet=vhost:%priv,%no&lt;br /&gt;
    leftsubnet=192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
include /etc/ipsec.d/examples/no_oe.conf #Disable Opportunistic Encryption&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Konfiguration auf Client (Road Warrior) Seite =====&lt;br /&gt;
&lt;br /&gt;
* die Ausgabe in die Config wechselweise eintragen&lt;br /&gt;
 sudo vi /etc/ipsec.conf&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
version 2.0     # conforms to second version of ipsec.conf specification&lt;br /&gt;
&lt;br /&gt;
# basic configuration&lt;br /&gt;
config setup&lt;br /&gt;
        plutodebug=control&lt;br /&gt;
        nat_traversal=yes # NAT-TRAVERSAL support, see README.NAT-Traversal&lt;br /&gt;
        virtual_private=%v4:10.0.0.0/8&lt;br /&gt;
        nhelpers=0 # enable this if you see &amp;quot;failed to find any available worker&amp;quot;&lt;br /&gt;
&lt;br /&gt;
conn %default&lt;br /&gt;
        left=%defaultroute&lt;br /&gt;
        leftcert=roadwarrior-vpn.crt&lt;br /&gt;
        leftrsasigkey=%cert&lt;br /&gt;
        leftid=&amp;quot;CN=roadwarrior-vpn, C=de, L=Darmstadt, ST=Hessen, O=Cactus, OU=Cactus-IT, E=roadwarrior-account@cactus.de&amp;quot;&lt;br /&gt;
        right=199.199.199.104            # Gateway IP&lt;br /&gt;
        rightid=&amp;quot;CN=vpn-gw, C=de, L=Darmstadt, ST=Hessen, O=Cactus, OU=Cactus-IT, E=admin-account@cactus.de&amp;quot;&lt;br /&gt;
        auto=add                     # authorizes but doesn&amp;#039;t start this connection at startup&lt;br /&gt;
&lt;br /&gt;
conn roadwarrior_2_cactus_office&lt;br /&gt;
        leftsourceip=192.168.2.67   # set fixed source ip for vpn client (allows easier routing and safer firewall settings)&lt;br /&gt;
        leftsubnet=192.168.2.67/32&lt;br /&gt;
        rightsubnet=192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
include /etc/ipsec.d/examples/no_oe.conf #Disable Opportunistic Encryption&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== X.509 Authentifizierung ====&lt;br /&gt;
===== Konfiguration auf VPN-GW-Seite =====&lt;br /&gt;
Requirements&lt;br /&gt;
* CA-Cert (Format .der oder .pem) in /etc/ipsec.d/cacerts&lt;br /&gt;
* Gateway-Cert (Format .der oder .pem) in /etc/ipsec.d/certs&lt;br /&gt;
* Gateway-Cert-RSA-Key in /etc/ipsec.d/private&lt;br /&gt;
&lt;br /&gt;
 sudo vi /etc/ipsec.conf&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
version 2.0     # conforms to second version of ipsec.conf specification&lt;br /&gt;
&lt;br /&gt;
# basic configuration&lt;br /&gt;
config setup&lt;br /&gt;
        nat_traversal=yes # NAT-TRAVERSAL support, see README.NAT-Traversal&lt;br /&gt;
        virtual_private=%v4:10.0.0.0/8&lt;br /&gt;
        nhelpers=0 # enable this if you see &amp;quot;failed to find any available worker&amp;quot;&lt;br /&gt;
        plutodebug=control&lt;br /&gt;
&lt;br /&gt;
conn %default&lt;br /&gt;
    left=199.199.199.104            # Gateway&amp;#039;s information&lt;br /&gt;
    leftid=&amp;quot;CN=vpn-gw, C=de, L=Darmstadt, ST=Hessen, O=Cactus, OU=Cactus-IT, E=admin-account@cactus.de&amp;quot;&lt;br /&gt;
    leftnexthop=%defaultroute     # correct in many situations&lt;br /&gt;
    leftcert=vpn-gw.crt&lt;br /&gt;
    leftrsasigkey=%cert&lt;br /&gt;
    right=%any      # Wildcard: we don&amp;#039;t know the laptop&amp;#039;s IP&lt;br /&gt;
    auto=add                     # authorizes but doesn&amp;#039;t start this connection at startup&lt;br /&gt;
&lt;br /&gt;
conn roadwarrior_2_cactus_office&lt;br /&gt;
    rightid=&amp;quot;CN=roadwarrior-vpn, C=de, L=Darmstadt, ST=Hessen, O=Cactus, OU=Cactus-IT, E=roadwarrior-account@cactus.de&amp;quot;&lt;br /&gt;
    rightsubnet=192.168.2.67/32&lt;br /&gt;
    leftsubnet=192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
include /etc/ipsec.d/examples/no_oe.conf #Disable Opportunistic Encryption&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 sudo vi /etc/ipsec.secrets&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
: RSA vpn-gw.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
===== Konfiguration auf Client (Roadwarrior) Seite =====&lt;br /&gt;
Requirements&lt;br /&gt;
&lt;br /&gt;
* CA-Cert (Format .der oder .pem) in /etc/ipsec.d/cacerts&lt;br /&gt;
* Client-Cert (Format .der oder .pem) in /etc/ipsec.d/certs&lt;br /&gt;
* Client-Cert-RSA-Key in /etc/ipsec.d/private&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 sudo vi /etc/ipsec.conf &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
version	2.0	# conforms to second version of ipsec.conf specification&lt;br /&gt;
&lt;br /&gt;
# basic configuration&lt;br /&gt;
config setup&lt;br /&gt;
	plutodebug=control&lt;br /&gt;
	nat_traversal=yes # NAT-TRAVERSAL support, see README.NAT-Traversal&lt;br /&gt;
	virtual_private=%v4:10.0.0.0/8&lt;br /&gt;
	nhelpers=0 # enable this if you see &amp;quot;failed to find any available worker&amp;quot;&lt;br /&gt;
&lt;br /&gt;
conn %default&lt;br /&gt;
	left=%defaultroute&lt;br /&gt;
	leftcert=roadwarrior-vpn.crt&lt;br /&gt;
	leftrsasigkey=%cert&lt;br /&gt;
	leftid=&amp;quot;CN=roadwarrior-vpn&amp;quot;&lt;br /&gt;
	right=199.199.199.104            # Gateway&amp;#039;s information&lt;br /&gt;
	rightid=&amp;quot;CN=vpn-gw, C=de, L=Darmstadt, ST=Hessen, O=Cactus, OU=Cactus-IT, E=admin-account@cactus.de&amp;quot;&lt;br /&gt;
	auto=add                     # authorizes but doesn&amp;#039;t start this connection at startup&lt;br /&gt;
&lt;br /&gt;
conn roadwarrior_2_cactus_office&lt;br /&gt;
        leftsourceip=192.168.2.67    # road warrior uses this ip to communicate thru the tunnel&lt;br /&gt;
        leftsubnet=192.168.2.67/32&lt;br /&gt;
        rightsubnet=192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
include /etc/ipsec.d/examples/no_oe.conf #Disable Opportunistic Encryption&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 sudo vi /etc/ipsec/ipsec.secrets&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
: RSA roadwarrior-vpn.pem&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Verbindung aufbauen ===&lt;br /&gt;
&lt;br /&gt;
Auf beiden Seiten VPN starten mit:&lt;br /&gt;
  /etc/init.d/ipsec start&lt;br /&gt;
&lt;br /&gt;
Auf dem Client die Verbindung aufbauen mit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tim@acantha:~$ sudo ipsec auto --up acantha&lt;br /&gt;
104 &amp;quot;acantha&amp;quot; #1: STATE_MAIN_I1: initiate&lt;br /&gt;
003 &amp;quot;acantha&amp;quot; #1: ignoring unknown Vendor ID payload [4f456c4c4f5d5264574e5244]&lt;br /&gt;
003 &amp;quot;acantha&amp;quot; #1: received Vendor ID payload [Dead Peer Detection]&lt;br /&gt;
003 &amp;quot;acantha&amp;quot; #1: received Vendor ID payload [RFC 3947] method set to=109 &lt;br /&gt;
106 &amp;quot;acantha&amp;quot; #1: STATE_MAIN_I2: sent MI2, expecting MR2&lt;br /&gt;
003 &amp;quot;acantha&amp;quot; #1: NAT-Traversal: Result using RFC 3947 (NAT-Traversal): no NAT detected&lt;br /&gt;
108 &amp;quot;acantha&amp;quot; #1: STATE_MAIN_I3: sent MI3, expecting MR3&lt;br /&gt;
004 &amp;quot;acantha&amp;quot; #1: STATE_MAIN_I4: ISAKMP SA established {auth=OAKLEY_RSA_SIG cipher=oakley_3des_cbc_192 prf=oakley_md5 group=modp1536}&lt;br /&gt;
117 &amp;quot;acantha&amp;quot; #2: STATE_QUICK_I1: initiate&lt;br /&gt;
004 &amp;quot;acantha&amp;quot; #2: STATE_QUICK_I2: sent QI2, IPsec SA established {ESP=&amp;gt;0x673c052c &amp;lt;0x8f72d5d9 xfrm=AES_0-HMAC_SHA1 NATD=none DPD=none}&lt;br /&gt;
tim@acantha:~$&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Überprüfung der Verbindung mit:&lt;br /&gt;
 tim@acantha:~$ sudo /etc/init.d/ipsec status&lt;br /&gt;
 IPsec running  - pluto pid: 9517&lt;br /&gt;
 pluto pid 9517&lt;br /&gt;
 1 tunnels up&lt;br /&gt;
 some eroutes exist&lt;br /&gt;
 tim@acantha:~$&lt;br /&gt;
&lt;br /&gt;
=== VPN-Client auf Windows ===&lt;br /&gt;
&lt;br /&gt;
Nach diversen Tests mit unterschiedlichen VPN-Clients für Windows können wir eine Empfehlung für folgenden kostenlos beziehbaren VPN Client aussprechen:&lt;br /&gt;
&lt;br /&gt;
 Shrew Soft VPN Client Version 2.1.4, Download unter http://www.shrew.net/&lt;br /&gt;
&lt;br /&gt;
Die Installation ist simpel und wird hier nicht beschrieben.&lt;br /&gt;
&lt;br /&gt;
Der Client wurde erfolgreich unter Windows XP und Vista getestet. Es gibt auch eine Version für Mac OS.&lt;br /&gt;
&lt;br /&gt;
==== Konfiguration ====&lt;br /&gt;
Die Einstellungen wurden alle auf den Default-Werten belassen.&lt;br /&gt;
Lediglich folgende Einstellungen wurden angepasst:&lt;br /&gt;
&lt;br /&gt;
# General&lt;br /&gt;
## Auto Configuration: disabled&lt;br /&gt;
## use an existing adapter...&lt;br /&gt;
# Name Resolution&lt;br /&gt;
## Empfehlung: Disable DNS/WINS&lt;br /&gt;
# Authentication&lt;br /&gt;
## Method: Mutual RSA&lt;br /&gt;
### Local: ASN.1&lt;br /&gt;
### Local: Use the subject in the client certificate&lt;br /&gt;
### Remote: ASN.1&lt;br /&gt;
### Remote: Use the subject in the client certificate&lt;br /&gt;
### Creditals: Certificate- and Key-Files&lt;br /&gt;
# Phase 1&lt;br /&gt;
## Exchange main&lt;br /&gt;
## DH Ex: auto&lt;br /&gt;
## Chipher Alg: auto&lt;br /&gt;
## Hash Alg: auto&lt;br /&gt;
# Phase 2&lt;br /&gt;
## PFS Ex: DH Group 5&lt;br /&gt;
# Policy&lt;br /&gt;
## Add remote network e.g.  192.168.1.0 / 255.255.255.0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== VPN Client für Mac OS ===&lt;br /&gt;
&lt;br /&gt;
Erfolgreich getestet unter Mac OS  10.6.7:&lt;br /&gt;
&lt;br /&gt;
Freeware IPSecuritas Version 3.4 (http://www.lobotomo.com)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Es folgt ein erfolgreich getestetes Konfigurationsbeispiel:&lt;br /&gt;
&lt;br /&gt;
 Generell&lt;br /&gt;
     Firewall-Adresse: &amp;lt;IP des OpenSwan Servers&amp;gt;&lt;br /&gt;
     Modus Lokaler Endpunkt: Host - &amp;lt;Host-IP für den Tunnel&amp;gt;  &lt;br /&gt;
     Modus Entferntere Endpunkt: Netzwerk - &amp;lt;Remote Netzwerk und Maske in Bit-Notation&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 Phase 1&lt;br /&gt;
     Gültigkeit 86400 Sekunden&lt;br /&gt;
     DH Gruppe 1024 (2)&lt;br /&gt;
     Verschlüsselung AES 192&lt;br /&gt;
     Authentifikation SHA-1&lt;br /&gt;
     Exchange Mode Main&lt;br /&gt;
     Proposal Check Obey&lt;br /&gt;
     Nonce-Länge 16&lt;br /&gt;
&lt;br /&gt;
 Phase 2&lt;br /&gt;
     Gültigkeit 3600 Sekunden&lt;br /&gt;
     PFS Gruppe 1024 (2)&lt;br /&gt;
     Verschlüsselung AES 256 &amp;amp; AES 192&lt;br /&gt;
     Authentifikation HMAC MD5, HMAC SHA-1, HMAC SHA-256, HMAC SHA-384, HMAC-512&lt;br /&gt;
&lt;br /&gt;
 ID&lt;br /&gt;
     Lokale Identifikation Zertifikat&lt;br /&gt;
     Entfernte Identifikation Zertifikat&lt;br /&gt;
     Authentifikationsmethode Zertifikate&lt;br /&gt;
     Lokales Zertifikat &amp;lt;Importiertes Zertifikat&amp;gt; (inklusive Private Key Anteil!)&lt;br /&gt;
     Entferntes Zertifikat CA prüfen (hierzu muss das CA-Zertifikat zuvor importiert werden)&lt;br /&gt;
&lt;br /&gt;
 DNS (optional bei Bedarf)&lt;br /&gt;
     Domain-spezifische DNS Server aktivieren&lt;br /&gt;
     Domains &amp;lt;Domain&amp;gt; (ohne führenden Punkt) für Remote Netzwerk&lt;br /&gt;
     Name Server Adressen &amp;lt;DNS Server Adresse(n)&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 Optionen&lt;br /&gt;
      IPSec DOI: ein&lt;br /&gt;
      SIT_IDENTITY_ONLY: ein&lt;br /&gt;
      Identifikation prüfen: aus (für Zertifikat-Auth)&lt;br /&gt;
      Initial Contact: ein&lt;br /&gt;
      Benutze MODE_CFG: aus&lt;br /&gt;
      Lokale IP in Ente. Netzwerk: aus&lt;br /&gt;
      Adressprüfung unterlassen: aus&lt;br /&gt;
      Generiere Police: aus&lt;br /&gt;
      Support Proxy: aus&lt;br /&gt;
      Zertifikat anfordern: aus&lt;br /&gt;
      Zertifikat prüfen: ein&lt;br /&gt;
      Zertifikat senden: ein&lt;br /&gt;
      Einmalige SA: aus&lt;br /&gt;
      IKE Fragmentierung: ein&lt;br /&gt;
      Passiv: aus&lt;br /&gt;
      NAT-T: Ein&lt;br /&gt;
      Verbindungsüberprüfung: ein&lt;br /&gt;
      Ping-Adresse: &amp;lt;pingbare IP im Remote-Netzwerk&amp;gt;&lt;br /&gt;
      Nach Zeitüberschreitung: Aufgeben&lt;br /&gt;
&lt;br /&gt;
=== VPN Troubleshooting / Debugging ===&lt;br /&gt;
&lt;br /&gt;
* Warum funktioniert das Key-Generieren auf dem VPN-Gateway (Debian etch) nicht (bleibt bei /dev/random-Zugriff stehen)?&lt;br /&gt;
&lt;br /&gt;
 VPN-Gateway:~# ipsec newhostkey --output - --verbose &amp;gt;/tmp/xxx&lt;br /&gt;
 getting 137 random bytes from /dev/random...&lt;br /&gt;
 (Prozess bleibt ohne erkennbaren Fortschritt stehen)&lt;br /&gt;
&lt;br /&gt;
Das Problem besteht in der nicht ausreichend vorhandenen &amp;quot;Zufälligkeit&amp;quot; auf dem VPN-GW (siehe http://www.gentoo-wiki.info/HOWTO_OpenSwan_2.6_kernel#Generating_ipsec.secrets und ein Beispiel für einen erfolgreichen [[Ablauf der Key-Generierung]]).&lt;br /&gt;
&lt;br /&gt;
==== Werkzeuge ====&lt;br /&gt;
&lt;br /&gt;
* ipsec auto --status&lt;br /&gt;
* ipsec barf&lt;br /&gt;
* ipsec eroute --add --eraf inet --src 192.168.60.0/24 --dst 172.16.1.0/24 --af inet --edst 192.168.50.5 --said %pass&lt;br /&gt;
* ipsec auto --listcacerts&lt;br /&gt;
* ipsec auto --listcerts&lt;br /&gt;
&lt;br /&gt;
==== Probleme beim Aufbau eines VPN-Tunnels ====&lt;br /&gt;
&lt;br /&gt;
TCmy8T  &amp;lt;a href=&amp;quot;http://yttzflcmljus.com/&amp;quot;&amp;gt;yttzflcmljus&amp;lt;/a&amp;gt;, [url=http://tcnffmskyodh.com/]tcnffmskyodh[/url], [link=http://zsmshifslyyn.com/]zsmshifslyyn[/link], http://wtefylkajsen.com/&lt;br /&gt;
&lt;br /&gt;
===== Single-Homed-Lösung einfach zu realisieren? =====&lt;br /&gt;
&lt;br /&gt;
Entgegen der Aussage unter Laut http://lists.virus.org/users-openswan-0504/msg00028.html:&lt;br /&gt;
&amp;quot;A single-homed VPN server (i.e. with only one interface) is normally&lt;br /&gt;
asking for trouble&amp;quot;, konnte die beschriebene Lösung erfolgreich aufgebaut werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Offene Punkte =====&lt;br /&gt;
* KLIPS vs. NETKEY&lt;br /&gt;
Evtl. müssen folgende Kernel-Parameter auf dem VPN-Gateway überhaupt gesetzt werden:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
        echo &amp;quot;0&amp;quot; &amp;gt; /proc/sys/net/ipv4/conf/all/send_redirects&lt;br /&gt;
        echo &amp;quot;0&amp;quot; &amp;gt; /proc/sys/net/ipv4/conf/all/accept_redirects&lt;br /&gt;
        echo &amp;quot;1&amp;quot; &amp;gt; /proc/sys/net/ipv4/ip_forward&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Beispiel ====&lt;br /&gt;
&lt;br /&gt;
* Status der Tunnel anzeigen:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tim@acantha:~$ sudo ipsec auto --status&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VPN FAQ ===&lt;br /&gt;
==== Wo findet man allgemeine Informationen zum Thema IPSec VPN? ====&lt;br /&gt;
* man ipsec.conf&lt;br /&gt;
* http://www.64-bit.de/dokumentationen/netzwerk/a/012/DE-VPN-HOWTO-4.html&lt;br /&gt;
* http://onair.funkwerk-ec.com/brueckenschlag_zwischen_nat_und_ipsec.html&lt;br /&gt;
* VPN Authentisierung via Zertifikat&lt;br /&gt;
** http://www.natecarlson.com/linux/ipsec-x509.php&lt;br /&gt;
** http://wiki.openswan.org/index.php/Openswan/Windows&lt;br /&gt;
* dhcp over IPSEC: http://www.strongsec.com/freeswan/dhcprelay/ipsec-dhcp-howto.html&lt;br /&gt;
* Windows Client&lt;br /&gt;
** http://www.natecarlson.com/linux/ipsec-x509.php#clientwin&lt;br /&gt;
** http://vpn.ebootis.de/&lt;br /&gt;
** http://www.serverhowto.de/Einrichten-einer-L2TP-IPSec-Verbindung-mit-Zertifikaten.49.0.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Welche Alternativen zu OpenSwan gibt es? ====&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;20&amp;quot; style=&amp;quot;margin:1em 1em 1em 0; background:#f9f9f9; border:1px #AAA solid; border-collapse:collapse; empty-cells:show;&amp;quot;&lt;br /&gt;
|- class=&amp;quot;hintergrundfarbe5&amp;quot;&lt;br /&gt;
!&amp;#039;&amp;#039;&amp;#039;Produkt&amp;#039;&amp;#039;&amp;#039; !! &amp;#039;&amp;#039;&amp;#039;Kurzbeschreibung&amp;#039;&amp;#039;&amp;#039; !! &amp;#039;&amp;#039;&amp;#039;Verfügbarkeit&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
| [https://www.openswan.org/projects/openswan/ OpenSwan (Referenz)] || An advanced IPSEC and IKE implementation for Linux/Windows/BSD.|| ubuntu package, debian package &lt;br /&gt;
|-&lt;br /&gt;
| [http://openvpn.net/index.php/open-source.html OpenVPN] || OpenVPN is an open source software application that implements virtual private network (VPN) techniques for creating secure point-to-point or site-to-site connections in routed or bridged configurations and remote access facilities. It uses a custom security protocol that utilizes SSL/TLS for key exchange. It is capable of traversing network address translators (NATs) and firewalls. It was written by James Yonan and is published under the GNU General Public License (GPL). ||  OS independant&lt;br /&gt;
|-&lt;br /&gt;
| [http://sourceforge.net/projects/sslexplorer/ SSL-Explorer] || Short Description: SSL-Explorer is a fully-featured, web-based SSL VPN server. This project is no longer actively maintained as the SSL-Explorer technology has now been acquired by Barracuda Networks, Inc. ||  OS independant (Java) &lt;br /&gt;
|-&lt;br /&gt;
| [http://www.strongswan.org/ StrongSwan] || A complete IPsec and IKEv1/IKEv2 implementation for Linux 2.4 and 2.6 kernels. || ubuntu package, debian package&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>192.168.100.90</name></author>
	</entry>
</feed>