OpenVPN 2.0 und OpenBSD

Hi, vielen dank fuer deine Docs. Habe da Paar Fragen.
Wenn ich versuche die Scripts aus easy-rsa auszufuehren kriege ich ein Haufen von Fehlermeldungen. Das ganze mit SSL brauch ich nicht. Kann ich das irgendwie umgehen ?
Auf deiner zeichnung hat dein PowerBook auf dem iface ath0 die IP-adresse 192.168.1.1 und die selbe IP hat iface ath0 auf denem Wrap, ein Tippfehler ?
Bei mir geht's irgendwie nicht :(
Brauche follgendes:

LAN(192.168.100.0) <----> OpenBSD 3.7 <----VPN(192.168.101.0)----->OpenBSD 3.7<---->LAN(192.168.100.0)

haben 2 Rechenzentren und muessen diese mit hilfe von VPN verbinden. Rechenzentrum1 ist 192.168.100.0 und Rechenzentrum2 ist auch 192.168.100.0.
Geht das ueberhaupt ?
 
bsdlamer schrieb:
Hi, vielen dank fuer deine Docs. Habe da Paar Fragen.
Wenn ich versuche die Scripts aus easy-rsa auszufuehren kriege ich ein Haufen von Fehlermeldungen. Das ganze mit SSL brauch ich nicht. Kann ich das irgendwie umgehen ?

Die SSL-Zertifikate brauchst du für die Verschlüsselung/Authentifizierung. Du kannst auch einen shared key benutzen, was bei 2 Rechnern noch machbar ist. Allerdings ist die Zertifikat-Loesung die bessere. Poste mal deine Fehlermeldungen.

bsdlamer schrieb:
Auf deiner zeichnung hat dein PowerBook auf dem iface ath0 die IP-adresse 192.168.1.1 und die selbe IP hat iface ath0 auf denem Wrap, ein Tippfehler ?

Ja, danke. Das PowerBook hat natuerlich eine andere IP-Adresse (192.168.1.2 z.B.).

bsdlamer schrieb:
Bei mir geht's irgendwie nicht :(
Brauche follgendes:

LAN(192.168.100.0) <----> OpenBSD 3.7 <----VPN(192.168.101.0)----->OpenBSD 3.7<---->LAN(192.168.100.0)

haben 2 Rechenzentren und muessen diese mit hilfe von VPN verbinden. Rechenzentrum1 ist 192.168.100.0 und Rechenzentrum2 ist auch 192.168.100.0.
Geht das ueberhaupt ?

Das wird schwierig, wenn du beide LANs verbinden moechtest. Wenn du nur die Gateways verbinden moechtest, ist dies im Routing mode problemlos moeglich, da dann die beiden VPN Endpunkte eine IP aus einem von dir ausgewaehlten Bereich bekommen.

Z.B. 10.8.0.5 und 10.8.0.6 in den Standardeinstellungen. Dann koennen die Rechner ueber diese IPs verschluesselt kommunizieren.

In Falle, dass du beide LANs verbinden moechtest geht das nicht so einfach, da es ja dann 2 Rechner mit 192.168.100.5 geben kann (LAN1 und LAN2). Die umstaendliche Varaiante ist es solche IP Konflikte zu beseitigen und direkte Routen zu jeder IP zu setzten.

Die saubere Variante waere es, bei einem LAN alle IPs auf z.B. 192.168.110.X umzustellen. Dann gibt es keine Probleme.
 
kann ich so ein problem auch anders loesen ? Gibt es ausser OpenVPN welche tools die bridging ermoeglichen ?
 
bsdlamer schrieb:
kann ich so ein problem auch anders loesen ? Gibt es ausser OpenVPN welche tools die bridging ermoeglichen ?

Du wirst beide LANs nicht verbinden koennen, so lange sie die selben IP verwenden (es sei denn es gibt keine IP zwei mal, dann koennte man umstaendlich Routing fuer jede IP machen).

Rechner1(192.168.100.9) im LAN1 moechte mit 192.168.100.10 sprechen. Woher weiss er jetzt, ob 192.168.100.10 im LAN1 oder LAN2 ist?

Wenn es keine IP 2mal gibt, koennte du jedem Rechner den Weg zu jedem anderem sagen:

192.168.100.10 in LAN2
192.168.100.11 in LAN1
192.168.100.12 in LAN1
192.168.100.14 in LAN2
..
.
usw

das ist aber unglaublich umstaendlich und funktioniert auch nur, so lange es keine IP 2mal gibt.


Was einfacher waere, sind SubNetze. Du koenntest den Adressraum von 100.X in zwei Bereiche aufteilen. Dann waere sinnvolles Routing moeglich.
 
Zuletzt bearbeitet:
Tomonage schrieb:
In Falle, dass du beide LANs verbinden moechtest geht das nicht so einfach, da es ja dann 2 Rechner mit 192.168.100.5 geben kann (LAN1 und LAN2). Die umstaendliche Varaiante ist es solche IP Konflikte zu beseitigen und direkte Routen zu jeder IP zu setzten.

Die saubere Variante waere es, bei einem LAN alle IPs auf z.B. 192.168.110.X umzustellen. Dann gibt es keine Probleme.

natuerlich werden wir es so einrichten dass in beiden Teilen von 192.168.100.0 keine gleiche IP vorkommen. Weiss einfach nicht wie ich an das problem rangehen soll. Alle empfehlen bridged mode.

also erstmal das ;(

bash-3.00# ./build-key-server demos
Error Loading extension section /etc/ssl/openssl.cnf

weiss nicht wie ich das jetz zum laufen bringe. Hatte auch /etc/openvpn/easy-rsa/openssl.cnf ausprobiert. Geht nicht.
 
bsdlamer schrieb:
natuerlich werden wir es so einrichten dass in beiden Teilen von 192.168.100.0 keine gleiche IP vorkommen. Weiss einfach nicht wie ich an das problem rangehen soll. Alle empfehlen bridged mode.

Wenn Du wirklich nicht die IPs umstellen willst, dann benutzte subnetting, damit das Routing wenigstens sauber funktioniert.

bsdlamer schrieb:
also erstmal das ;(

bash-3.00# ./build-key-server demos
Error Loading extension section /etc/ssl/openssl.cnf

weiss nicht wie ich das jetz zum laufen bringe. Hatte auch /etc/openvpn/easy-rsa/openssl.cnf ausprobiert. Geht nicht.

Welches OS?
Gehen vorher alle Skripte sauber durch?
 
das mache ich auf OpenBSD 3.7
./vars
./clean-all
./build-ca
./build-dh
./build-key
das geht sauber durch, nur die sache mit dem build-key-server kriege ich nicht zum laufen
 
Und du machst auch wirklich
# cd /etc/openvpn/easy-rsa
# init-config
# . ./vars
# ./clean-all
# ./build-ca
# ./build-key-server server
# ./build-key client1
# ./build-key client2
# ./build-dh

?


ifconfig output:

# ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33224
groups: lo
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x8
ath0: flags=8863<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST> mtu 1500
lladdr 00:0b:6b:35:b0:1b
media: IEEE802.11 autoselect mode 11b hostap
status: active
ieee80211: nwid wrap chan 11 bssid 00:0b:6b:35:b0:1b
inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
inet6 fe80::20b:6bff:fe35:b01b%ath0 prefixlen 64 scopeid 0x1
sis0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
lladdr 00:0d:b9:01:92:d0
groups: egress
media: Ethernet autoselect (100baseTX full-duplex)
status: active
inet 192.168.0.3 netmask 0xffffff00 broadcast 192.168.0.255
inet6 fe80::20d:b9ff:fe01:92d0%sis0 prefixlen 64 scopeid 0x2
sis1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
lladdr 00:0d:b9:01:92:d1
media: Ethernet autoselect (none)
status: no carrier
inet6 fe80::20d:b9ff:fe01:92d1%sis1 prefixlen 64 scopeid 0x3
sis2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
lladdr 00:0d:b9:01:92:d2
media: Ethernet autoselect (none)
status: no carrier
inet6 fe80::20d:b9ff:fe01:92d2%sis2 prefixlen 64 scopeid 0x4
pflog0: flags=141<UP,RUNNING,PROMISC> mtu 33224
pfsync0: flags=0<> mtu 2020
enc0: flags=0<> mtu 1536
tun0: flags=9943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,LINK0,MULTICAST> mtu 1500
lladdr 00:bd:9e:76:4a:01
inet6 fe80::2bd:9eff:fe76:4a01%tun0 prefixlen 64 scopeid 0xa
bridge0: flags=41<UP,RUNNING> mtu 1500
groups: bridge
 
huh ich bin DAU.
mit
# cd /etc/openvpn/easy-rsa
# init-config
# . ./vars
# ./clean-all
# ./build-ca
# ./build-key-server server
# ./build-key client1
# ./build-key client2
# ./build-dh

hat es geklappt (endlich :) )

habe jetzt folgendes:

LAN(192.168.100.0) <----> OpenBSD 3.7 <----VPN(192.168.101.0)----->OpenBSD 3.7<---->LAN(192.168.100.0)

also wie schon oben beschrieben wurde und es funzt net :(. Die hosts die sich auf einer seite befinden, koennen die host auf der anderen nicht anpingen.
kannst du mir vielleicht deine konfigs auf bsdlamer@mail.ru (server/client.conf) mailen wenn es nichts ausmacht. Will sie mal mit meinen vergleichen.
 
Hi,

du schreibst in deinem Tutorial, dass die dh*.pem Files auf alle Maschinen im vpn-Netz müssen.
Müssen sie nicht. Nur auf den Server...

CU

Martin
 
Was sagt denn OpenVPN, wenn du es per Hand startest und sich dann ein Client verbindet?

Wie sieht dein ifconfig aus?
 
Sag mal ist das hier ein blog?

Wenn du Hilfe erwartest, poste Informationen.
Die Server.config, die client.config, ifconfig Ausgaben von den beiden Maschinen und die Routing-Tabellen der beiden Maschinen.

Ohne solche Infos ist keine Hilfe möglich.

CU

Martin
 
Mahlzeit,

zwar schon etwas alt, aber ich antworte trotzdem mal... =) Die einzig mögliche Lösung ist proxyarp. Ansonsten kann das nicht funktionieren, da die clients nie an das std-gateway schicken -> dein Problem ist unabhängig von VPN-Lösungen.

Ich hab im Moment das Problem, dass ich openbsd als client nicht ans drehen kriege:

/sbin/ifconfig tun0 192.168.254.3 255.255.255.224 mtu 1500 netmask 255.255.255.255 up

Der Server läuft unter linux, mit windows clients kann ich connecten (config file ist 1:1, nur auf tun0 geändert). die 255.255.255.224 ist die subnetmask zur 192.168.254.3, woher die 255.255.255.255 stammt weiß ich nicht. Ich lese im Moment alles was ich so zum Thema tun und openbsd finden kann, aber wenn jemand eine abkürzung für mich hat bin ich nicht böse... =)

Hier meine cfg:

client

;dev tap
dev tun0

proto tcp
remote <server> <port>
resolv-retry infinite
nobind
user nobody
group nobody
# Try to preserve some state across restarts.
persist-key
persist-tun
ca /etc/openvpn/ca.crt
cert /etc/openvpn/sk-se.crt
key /etc/openvpn/sk-se.key
tls-auth /etc/openvpn/ta.key 1
cipher DES-EDE3-CBC
comp-lzo
verb 4
 
pZYchO schrieb:
/sbin/ifconfig tun0 192.168.254.3 255.255.255.224 mtu 1500 netmask 255.255.255.255 up

Der Server läuft unter linux, mit windows clients kann ich connecten (config file ist 1:1, nur auf tun0 geändert). die 255.255.255.224 ist die subnetmask zur 192.168.254.3, woher die 255.255.255.255 stammt weiß ich nicht.
unabhaengig von dem rest des threads ist das da oben schonmal kaese.

tun(4) ist ein point-to-point device, braucht also nicht nur eine adresse sondern auch die adresse des peers. so wie das da oben steht, ist der peer 255.255.255.224, was quatsch ist.

entweder benutzt man tap(4) und konfiguriert ein ganz normales netz darauf oder eben tun(4), muss dann aber beachten, dass tun(4) nur p2p ist.
 
Mahlzeit,

prinzipiell ist das richtig... Aber was unter Linux tap ist, ist unter openbsd tun. Was unter Linux tun ist, ist unter openbsd br... =) Daher ist die konfiguration etwas verwirrend aber korrekt. =)

MfG
 
Zurück
Oben