OpenVPN als paranoides Mesh-Netzwerk

0

Ich möchte ein VPN mit einer ähnlichen Topologie wie ein Hamachi-Netzwerk einrichten: Jeder Computer stellt eine Verbindung zum anderen als "Mesh" her, der Datenverkehr zwischen beiden ist jedoch weiterhin sicher. Kann OpenVPN das?

Oder, wenn das nicht möglich ist, ist es möglich, das VPN so zu konfigurieren, dass die Clients dem Server nicht vertrauen müssen (ich nenne das "paranoid")?

thirtythreeforty
quelle

Antworten:

1
  1. Es ist möglich, die Client-zu-Client-Option von OpenVPN zu verwenden, aber alle Client-Tunnel werden auf dem Server beendet.

  2. Vertrauen definieren? Mit der Option "duplicate-cn" können Sie eine gemeinsame conf-Datei erstellen. Auf diese Weise erhält der Client, der die Datei hat, das VERTRAUEN / das Recht, vom Server eine Verbindung herzustellen.

smooker
quelle
Siehe meinen Kommentar in der Antwort von Ultrasawblade ... Ich gehe dort etwas detaillierter vor.
thirtythreeforty
1

Für eine OpenVPN-Verbindung muss ein Ende ein Client und das andere ein Server sein.

Daher müssen Sie Ihr Netz manuell erstellen und sicherstellen, dass jeder Knoten eine Serverkonfiguration und eine Clientkonfiguration aufweist. Jeder Knoten muss zwei OpenVPN-Instanzen ausführen, eine für den Client und eine für den Server.

OpenVPN unterstützt die Werbung für Routen, die hinter der von ihm erstellten virtuellen Schnittstelle verfügbar sind. Auf diese Weise können Sie dafür sorgen, dass die OpenVPN-Knoten den für diesen Knoten nicht bestimmten Datenverkehr an einen anderen Knoten weiterleiten. Auch dies müssen Sie manuell mit einrichten iroute Anweisungen in Ihren Konfigurationsdateien.

In jeder Konfigurationsdatei können Sie mehrere Server angeben, zu denen ein Client eine Verbindung herstellen soll. Sie können also für jede Konfigurationsdatei mehrere Eintrittsknoten angeben.

Um dies richtig zu machen, müssen Sie für jedes Client- und Server-Paar eine Zertifizierungsstelle einrichten. Sie können Kompromisse eingehen und eine einzige Zertifizierungsstelle für das gesamte Netz einrichten. Sie können weitere Kompromisse eingehen und nur Passwörter eingeben, benötigen jedoch weiterhin Zertifikate für die Serveridentifikation.

Um wirklich sicher zu sein, benötigen Sie ein weiteres internes virtuelles Netzwerk, auf das externe Clients nicht direkt zugreifen können, auf das sie jedoch zugreifen können, sobald sie sich im virtuellen Netzwerk befinden.

Viel Arbeit, um alles im Auge zu behalten, aber durchaus möglich.

Wenn die Clients dem Server nicht vertrauen sollen, müssen sie über den Server mit Verschlüsselung kommunizieren. Sie könnten so weit gehen, dass Tor auf jedem Server intern in diesem Mesh-Netzwerk ausgeführt wird. Eine direkte Korrelation zwischen einem Knoten und einem Dienst wäre dann schwierig.

LawrenceC
quelle
Hey, danke für die Antwort. Mein Szenario ist wie folgt. Grundsätzlich habe ich ein paar Computer hinter einer sehr strengen eingehenden Firewall, die ich nicht kontrollieren kann (aber alles, was ausgehend ist, ist zulässig). Ich würde eine kostenlose Amazon EC2-Instanz als Server verwenden. Die Bandbreite ist begrenzt, daher wünsche ich mir eine Peer-to-Peer-Verbindung. Außerdem vertraue ich nicht ganz darauf, dass Amazon alles sieht, was im VPN passiert. ich könnte habe zwei Ebenen, eine für NAT-Busting und eine für sichere Kommunikation, aber dann kann Android, das nur eine Ebene hat, nicht an der Party teilnehmen. Wenn Sie andere Einblicke haben, würde ich sie schätzen!
thirtythreeforty
Wissen Sie, welche Auswirkungen die Leistung eines großen Maschennetzwerks haben würde?
CMCDragonkai
Wie? OpenVPN hat absolut Peer-to-Peer-Modus ohne diese Client / Server-Unterscheidung. Tatsächlich ist das bis 2.x die nur Modus hatte es.
Charles Duffy
Ich wusste nicht über die P2P-Option.
LawrenceC