Re: VPN peer2peer software

From: Oliver Fromme <olli(at)lurza.secnetix.de>
Date: Fri, 3 Feb 2006 10:21:34 +0100 (CET)

Philipp Maihoefer <philipp_bsd(at)5711.org> wrote:
> Kennt jemand ein Tool für BSD das ungefähr genauso funktioniert wie
> folgendes:
>
> http://www.hamachi.cc/

Ich hoffe, Du möchtest für so einen Zweck nicht wirklich
ein Tool verwenden, das closed-source ist, schlecht doku-
mentiert, mit unklarer Lizenz, und dessen Sicherheit auf
den ersten Blick nicht verifizierbar zu sein scheint.
Darüberhinaus finde ich es äußerst suspekt, daß Verbin-
dungen durch Server der Herstellerfirma vermittelt werden,
d.h. Clients (Peers) müssen grundsätzlich erstmal Kontakt
zu so einem Server aufnehmen, bervor sie untereinander
verbunden werden.

Immerhin haben sie hübsche Screen-shots.

> Also primär kommt es mir da auf das Feature des peer to peer verbindens an.

Da gibt es OpenVPN und -- seit neuestem -- OpenSSH, welches
seit der gestern erschienenen Version 4.3 bzw. 4.3p1 auch
das Tunneln von IP (per tun(4)-Interface-Paar) und Ethernet
(per tap(4)-Interface-Paar) ermöglicht.

Ich hatte noch keine Gelegenheit, es selbst auszuprobieren,
aber anhand der Man-pages erscheint mir die Konfiguration
eines Peer-to-peer VPNs mit OpenSSH noch simpler zu sein
als bei OpenVPN. Und dazu kommt der (IMO) große Vorteil,
daß man dabei sämtliche etablierten Authentisierungsmeach-
nismen von OpenSSH verwenden kann, z.B. authorized_keys.

Im Grunde genommen rufst Du einfach ssh wie folgt auf:

ssh -w tun0:tun0 remote.host.de

Dabei wird auf beiden Seiten ein virtuelles IP-Interface
/dev/tun0 angelegt. Das kannst Du dann wie üblich mit
ifconfig(8) konfigurieren:

lokal: ifconfig tun0 inet 10.0.0.1 10.0.0.2
remote: ifconfig tun0 inet 10.0.0.2 10.0.0.1

Und schon kannst Du über das VPN Daten schicken, z.B. NFS
auf sichere Weise darüber machen, oder was auch immer.
Je nachdem, was Du sonst noch anstellen willst, kannst Du
mit route(8) noch weitere Routen über das VPN einstellen,
sogar die Default-Route, wenn Du willst.

Allerdings eignet sich so ein OpenSSH-Tunnel (und ebenso
OpenVPN-Tunnel über TCP) nur für gute Verbindungen ohne
Packet-loss und ohne nennenswerte Delays. Der Grund ist
z.B. hier beschrieben:

http://sites.inka.de/sites/bigred/devel/tcp-tcp.html

Ist die Verbindung zwischen den beteiligten Rechnern zu
schlecht, kann man versuchen, OpenVPN im UDP-Modus zu
verwenden, was möglicherweise etwas besser klappt, aber
besonders glücklich wird man damit auch nicht werden.

Gruß
   Olli

-- 
Oliver Fromme,  secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing
Dienstleistungen mit Schwerpunkt FreeBSD: http://www.secnetix.de/bsd
Any opinions expressed in this message may be personal to the author
and may not necessarily reflect the opinions of secnetix in any way.
"If Java had true garbage collection, most programs
would delete themselves upon execution."
        -- Robert Sewell
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Fri 03 Feb 2006 - 10:23:58 CET

search this site