OpenVPN-Paket

Ich würde erstamal sichergehen, dass das Image auch mit LZO gebaut wurde. Starte es doch mal von Hand mit "openvpn" und schau, ob beim Starten "[LZO]" da steht...

Jörg
Hallo Jörg, danke für deine Antwort,

Wenn ich das richtig verstanden habe, und auch richtig ausgeführt habe, dann steht da das hier:

Code:
OpenVPN 2.1_rc7 mipsel-linux [SSL] [EPOLL] built on Jul 25 2008

Also kein [LZO], da es so ist, was muss ich weiter machen?
 
Ich würde das Image einfach nochmal bauen. "Zur Not" könntest du vorher ein "make openvpn-dirclean" machen, dann wird alles komplett neu gebaut...

Jörg
 
Muss ich da bei make menuconfig etwas bestimmtes auswählen, dass jetzt openvpm mit lzo erstellt wird oder sollte es auch so gehen?
Und gibt es eine möglichkeit zu prüfen ob OpenVPN im erstellten Image mit lzo ist ohne das Image auf die FritzBox zu flashen?
 
Hi,

nein, das sollte eigentlich mit lzo gebaut werden, wenn du LZO anwählst...

Testen kannst du das bedingt, wenn du das fertige Binary auf die Box bekommst (z.B. per FTP, TFTP oder auch scp). Ich würde es z.B. per SSH (scp) machen:

Code:
cd packages/openvpn-2.1_rc7/root/usr/sbin
scp root@<IP-der-Box>:/tmp
Passwort eingeben und so wird das Programm nach /tmp kopiert.
Dann auf der Box mit /tmp/openvpn aufrufen und sehen, ob [LZO] mit drin ist...

Jörg

EDIT: geht noch viel einfacher, indem du den String gleich im "Build-System" ausliest:
Code:
strings packages/openvpn-2.1_rc7/root/usr/sbin/openvpn | grep 2.1

# ergibt bei mir:
joerg@linux:~/freetz-trunk> strings packages/openvpn-2.1_rc7/root/usr/sbin/openvpn | grep 2.1
2.1_rc7
OpenVPN 2.1_rc7 mipsel-linux [SSL] [LZO2] [EPOLL] built on Aug  5 2008
 
Zuletzt bearbeitet:
Mehrere Tunnel über GUI verwalten

Hallo,

ich habe kürzlich meinen Provider gewechselt. Da der auch bei 2MBit nur ADSL2+ Geräte unterstützt, hätte ich auch meinen fli4l umbauen müssen. Also habe ich mich entschlossen auf eine FB 7270 zu migrieren.
Ich bin daher zwar nicht Linux unerfahren, aber die 7270 ist Neuland für mich.

Auf dem fli4l hatte ich die Möglichkeit mehrere OpenVPN Verbindungen parallel zu nutzen (zu jeweils anderen fli4l's). Die Verbindungen konnten auf 'Autostart' gesetzt werden, oder bei Bedarf über das Web-Inferface aktiviert bzw. deaktiviert werden.

Unterstützt das Webinterface auf der FB mehrere Tunnel?
Sind die Tunnel einzeln aktivierbar?

Oder sollte ich meine Bemühungen gleich auf eine Kommandozeilenversion konzentrieren?

Gruß Henning
 
Ja, mehrere Tunnel - Ja, einzeln startbar - Nein, Komandozeilenversion musst du nicht nutzen ;-)

Das Freetz-WebIF gestattet mehrere Verbindungen, die einzeln auf "automatischer Start" oder "manueller Start" zu setzen sind. Voraussetzung ist der Haken bei "Experteneinstellungen".

Jörg
 
Hallo,

habe mir erst einmal einen W900V organisiert um meine nagelneue 7270 bei den ersten Freetz Versuchen nicht gleich zu schrotten ...
Auf dem W900V habe ich das OpenVPN Paket eingebunden und mich ein wenig durch die GUI geklickt.
Eine ssh Verbindung zum Speedport steht auch, so daß man remote einigermaßen komfortabel arbeiten kann.
Es ist mir gelungen mehrere Client Konfigurationen zu bauen, obwohl die Neuerstellung einer Config nicht wirklich intuitiv ist.
Da ich für jede Client Verbindung einen eigenen static key benötige, gehe ich mal davon aus, das die Checkbox "Eigene Keys/Certs für diese Config" zu aktivieren ist.
Aber wo und wie lege ich denn dann die entsprechenden Key's ab?

Und was bedeutet die Checkbox "Clientverkehr umleiten" ?
Das remote Netzwerk wird doch in der Form "194.45.240.0 255.255.255.0 192.168.120.101" unter "Entferntes Netz umleiten" eingetragen.

Gruß Henning
 
Hallo Hennig,

zunächst mal kann ich Dir nur empfehlen, die Konfigurationen in der manpage nachzustellen sowie die beiden Howtos auf openvpn.net durchzuarbeiten. Das gibt schon mal ein ganz gutes Grundverständnis für OpenVPN und dürfte auch Deine Fragen beantworten.

Ich persönlich nutze das GUI nicht.
"Clientverkehr umleiten" bedeutet, dass Du die default route auf das VPN umleiten kannst.

HTH
Gruß maceis
 
Hallo,

ich nutze openvpn bereits seit mehreren Jahren erfolgreich auf fli4l und einigen XP Client Rechnern.
Bei den fli4l's ist das so konfiguriert, daß jede Seite sowohl Client, als auch Server ist, so daß z.B. bei einem fehlenden, oder falschen Dyndns Eintrag trotzdem von der jeweils anderen Seite aus ein Tunnel aufgebaut werden kann.
Ea besteht grundsätzlich sogar die Möglichkeit auf den remoten Server über eine weitere parallele Verbindung zuzugreifen, so daß ich auch Einblick in das Logfile des remoten Servers erhalte, wenn der Verbindungsaufbau per W900V nicht klappen sollte.

Die Frage ist also nicht so sehr das Grundverständnis, sondern wie geht das bei freetz?
Und in meinem obigen Post habe ich genau nach der GUI Unterstützung gefragt.
Sonst hätte ich mich gleich an die Kommandozeile gemacht....

Gruß Henning
 
Wenn Du die Konfigurationsdateien "von Hand" schreibst, geht das bei freetz im Wesentlichen genau so, wie bei jedem anderen Gerät.
 
[...]obwohl die Neuerstellung einer Config nicht wirklich intuitiv ist.[...]
Da ist jede Hilfe und Anregung willkommen. Wo hat es gehakt, was ist missverständlich?
Die GUI ist in der Tat eher "für Einsteiger", denen man versucht, die Parameter umgangssprachlich nahe zu bringen, besonder übrigens auch mit "Tooltips", wenn die Maus über einem Parameter oder einer Klickbox liegt.

Wo die Parameter sind, ist im Wiki zu finden ("Der Schlüssel kann unter "Einstellungen → Static Key" ausgelesen und eingestellt werden").
Ich gebe zu, dass mir die Trennung von Konfig und Schlüsseln/Zertifikaten in unterschiedliche Teile der GUI immer etwas unglücklich erschien, mir ist bislang jedoch noch keine (einfach umzuseztzende) Lösung dazu eingefallen, auch da sind Anregungen gerne willkommen.

Jörg
 
Hallo,

zunächst einmal möchte ich eure Arbeit in keinem Falle abwerten oder so. Ganz im Gegenteil. Hochachtung!

Ich arbeite selbst in der Softwareentwicklung (COBOL unter z/OS, >50.000 User) und weiß wie schwierig es ist Oberflächen, und insbesondere auch Doku für Andere (z.B. Anwender, Hotline, Betrieb usw.) zu erstellen, da sowohl Kenntnisse als auch die Erwartungshaltungen zum Teil sehr weit auseinander liegen.

Ich gehe zunächst mal davon aus, das mit dem Wiki diese Seite gemeint ist:
http://www.freetz.org/wiki/packages/openvpn
Dort findet sich tatsächlich der Satz:
"Der Schlüssel kann unter "Einstellungen → Static Key" ausgelesen und eingestellt werden"
So weit so gut. Aber wo das Key-File abgelegt ist, erfährt man dort nicht.

Erst im Abschnitt Zertifikate gibt es einen Hinweis auf /var/tmp/flash.
Nun muss ich zugeben, daß ich den Abschnitt nicht gelesen habe, weil Zertifikate für mich nie Thema waren.

Aber es gibt eben nur eine Datei static.key
Über die GUI kann ich genau diese auch modifizieren.

In der nachfolgenden Abhandlung finde ich dann Informationen, wo und wie ich das Schlüsselfile auf einem Windows Client eintragen muss.
Das ist für einen Windows Anwender, der auf eine SpeedBox zugreifen möchte sicher hilfreich.

Ich benötige jedoch die Stelle wo die Schlüssel-Files für die anderen Client Verbindungen abgelegt werden müssen.
Wie und ob es dazu Namenkonventionen gibt, und wie und wo ich die Dateinamen einzutragen habe.

Eine Speedbox sieht halt doch etwas anders aus als ein 'Standard Linux'.
(Ich verwende übrigens gentoo)

Inzwischen habe ich den Menuepunkt unter Einstellungen aber gefunden.
Ich habe ihn, obwohl ich mehrfach auf der Seite war einfach übersehen.
Den Menuepunkt "OpenVPN: Static Key" war mir hingegen immer sofort ins Auge gefallen, da er der Letzte in der Liste der Einstellungen ist, und ich ja auch etwas zu OpenVPN gesucht hatte.
Das der für mich interessante Menuepunkt viel weiter oben unter "Beier" zu finden ist, habe ich überhaupt nicht auf den Schirm bekommen. Zumal die Liste ja mit Freetz beginnt und (bei mir) mit OpenVPN aufhört und damit scheinbar sortiert ist. "Beier" wie auch DnsMasq steckt jedoch mitten drin :(

Ein Menuepunkt OpenVPN unter dem dann alle weiteren Daten liegen, wäre für mich hier logisch und konsequent gewesen.

Ohnehin ist mir nicht eingängig warum diese Einstellungen nicht auch unter Pakete zu finden sind. Dort finden sich doch auch Einstellungen?!

Letztlich dokumentiere ich mit meiner Blindheit nur, daß es noch einiges an Verbesserungspotential gibt, so daß derart 'doofe' Anfragen zukünftig vermieden werden können.

Gruß Henning
 
Hey, zunächst mal: Ich bin nicht angepisst ;-) oder so, ich finde es gut, wenn jemand (der nicht ich bin) auf die GUI schaut und sagt: Das "verstehe" ich nicht/anders oder wie auch immer. Wenn's änderbar ist, dann immer, schließlich brauche ich eigentlich keine GUI mehr, sondern sie soll(te) anderen das Ganze etwas einfacher machen...

Gut, dass du die Dateien jetzt gefunden hast, wie gesagt: Der Ort dafür ist ein Punkt, der sicher verbesserungswürdig ist (wenn mir eine schlaue Idee dazu kommt, wie ;-)).

Zum Hintergrund: Die Keys/Certs sind "files" in der Freetz-Art (es gibt dort "Files" unter "Einstellungen" und "Configs" unter "Pakete"). Deshalb die unterschiedliche Behandlung.

Der Wiki-Eintrag sollte (und wird) eigentlich auch nur den Standard-Fall abdecken können (die Multi-Client Konfig ist ja schon recht speziell). Man könnte ansonsten überlegen, einen "Advanced-OpenVPN" Eintrag zu machen.


Jörg
 
Xx:xx:xx:xx

Hi @all,

ich bin gerade dabei wie in der Wiki beschrieben, ein Brid-Netzwerk aufzubauen, habe aber noch einige Probleme.

Ich verstehe nicht, was das "ServerBox1" in der OVPN Datei bedeutet. Ich habe sonst alles gemacht, Zertifikate hochgeladen, Ports freigegeben und nun will ich mit meinem Laptop über UMTS auf die Fritzbox zugreifen.

Hier mal ein Auszug aus der ErrorLog:

Wed Jun 03 18:10:36 2009 TCP connection established with XX:XX:XX:XX:443
Wed Jun 03 18:10:36 2009 TCP/UDP: Dynamic remote address changed during TCP connection establishment
Wed Jun 03 18:10:36 2009 Socket Buffers: R=[8192->8192] S=[8192->8192]
Wed Jun 03 18:10:36 2009 TCPv4_CLIENT link local: [undef]
Wed Jun 03 18:10:36 2009 TCPv4_CLIENT link remote: XX:XX:XX:XX:443
Wed Jun 03 18:10:36 2009 TLS: Initial packet from XX:XX:XX:XX:443, sid=edd6d5ca 442ca9b4
Wed Jun 03 18:10:40 2009 VERIFY OK: depth=1, /C=DE/ST=SA/L=Halle/O=home/CN=ca/emailAddress=info@host
Wed Jun 03 18:10:40 2009 VERIFY X509NAME ERROR: /C=DE/ST=SA/O=home/CN=fritzbox/emailAddress=info@host, must be ServerBox1
Wed Jun 03 18:10:40 2009 TLS_ERROR: BIO read tls_read_plaintext error: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
Wed Jun 03 18:10:40 2009 TLS Error: TLS object -> incoming plaintext read error
Wed Jun 03 18:10:40 2009 TLS Error: TLS handshake failed
Wed Jun 03 18:10:40 2009 Fatal TLS error (check_tls_errors_co), restarting
Wed Jun 03 18:10:40 2009 TCP/UDP: Closing socket

Meine OVPN Datei sieht folgendermaßen aus:

client
dev tap
proto tcp
remote XX:XX:XX:XX 443
nobind
persist-key
persist-tun
#hier die Zertifikate/Schlüssel, wie beim Erstellen benannt
ca ca.crt
cert client01.crt
key client01.key
# für TLS-Remote "ServerBox1" wie beim Erstellen benannt
tls-remote ServerBox1
tls-auth static.key 1
auth SHA1
cipher AES-256-CBC
comp-lzo
verb 3

Ich habe nur meine IP Adresse verändert, sonst ist alles orginal. Kann mir einer helfen, was ich falsch gemacht habe?

Greez

Hary00
 
Wed Jun 03 18:10:40 2009 VERIFY X509NAME ERROR: /C=DE/ST=SA/O=home/CN=fritzbox/emailAddress=info@host, must be ServerBox1
Ich vermute mal, du hast beim Erstellen des Zertifikats für den Server beim "Common Name" fritzbox eingegeben und nicht ServerBox1. In der Config steht aber, dass du auf ServerBox1 bestehst ;-)

Jörg
 
Vielen Dank für den Hinweis. Es geht :-D
Ich habe den Eintrag tls-remote ServerBox1 einfach in tls-remote fritzbox geändert.

Einen schönen Abend noch.
 
Erweiterte Clientconfig

Hallo erstmal,

wenn ich oben genanntes im Gui benutze, steht in der dann ersten client-config-Datei auf der Box folgendes.
ifconfig 192.168.200.2 255.255.255.0

Da ich ein Tun-Device benutze ist das aber falsch.
Ich will dem client ja die Endpunkte pushen. Statt der MAC müsste eine IP stehen. Früher hat das einwandfrei funktioniert.

Woran kann das liegen?

Um das zu umgehen hab ich's mit tap versucht. Ich benutze Zertifikate.
Verbindung wird aufgebaut doch der Server kann den Client sich nicht anpingen. Hab schon alles versucht und nachgelesen. Das OpenVPN läuft auf den Fritzboxen.
 
... das ist so gewollt, die "erweiterte Clientconfig" nutzt "topology subnet", also alle tun-Devieces bekommen eine "fortlaufende IP" und befinden sich in einem Subnet. Das wird auch per push an den Client weitergegeben (der natürlich dazu diesen Befehl unterstützen muss). So kann die Client-IP 192.168.200.2 im Netz mit der Maske 255.255.255.0 die IP der Box (192.168.200.1) problemlos erreichen, ebenso wie der nächste Client mit der 192.168.200.3 usw.


Jörg
 
Der Client beschwert sich aber über diesen push. OpenVPN wird dann sogar beendet. Was muss ich denn an Optionen hinzufügen, dass dies geht?

Die erweiterte Clientkonfig hab ich auch beim Client aktiviert.

Vielleicht wäre es in diesem Fall besser, wenn man die Gui deaktivieren könnte und stattdessen ein einfaches Textfeld mit der config füllen kann.
Mit vi hab ich mir die openvpn.conf angeschaut und würde da gerne ändern. Leider pfuscht mir die Gui- Einstellung da rein.

Wenn ich nur das site-to-site wieder zum laufen bekäme. Hat ein Jahr lang gut funktioniert und seit dem Firmwareupdate mit neuerem OpenVPN klappt es nicht mehr. Mit tap können sich die Endpunkte nicht anpingen. Mit tun stürzt das OpenVPN Clientseitig ab, wegen dem genannten Problem oben.

Die Config der ServerBox:
Code:
proto udp
dev tun
ca /tmp/flash/ca.crt
cert /tmp/flash/box.crt
key /tmp/flash/box.key
dh /tmp/flash/dh.pem
tls-server
tls-auth /tmp/flash/static.key 0
port 1196
mode server
ifconfig-pool 192.168.10.2 192.168.10.2
push "route 192.168.10.1"
ifconfig 192.168.10.1 192.168.10.2
route 192.168.60.0 255.255.255.0
push "route 192.168.178.0 255.255.255.0"
tun-mtu 1500
mssfix
fragment 1300
verb 3
daemon
cipher AES-256-CBC
comp-lzo
float
keepalive 10 120
chroot /tmp/openvpn
user openvpn
group openvpn
persist-tun
persist-key

Die Config der ClientBox:
Code:
proto udp
dev tun
ca /tmp/flash/ca.crt
cert /tmp/flash/box.crt
key /tmp/flash/box.key
tls-client
ns-cert-type server
tls-auth /tmp/flash/static.key 1
remote *** 1196
nobind
pull
route 192.168.178.0 255.255.255.0 192.168.10.1
tun-mtu 1500
mssfix
fragment 1300
verb 3
daemon
cipher AES-256-CBC
comp-lzo
float
keepalive 10 120
resolv-retry infinite
chroot /tmp/openvpn
user openvpn
group openvpn
persist-tun
persist-key

Der Tunnel steht. Leider kann nur die ClientBox die Rechner im Netz 192.168.178.0 anpingen.
Die Serverbox kann das leider nicht. Was kann das sein?

Hier die Meldung nach Nutzung der erweiterten Clientconfig, die bisher immer funktionierte:
Code:
Fri Jun 26 01:28:40 2009 SENT CONTROL [server]: 'PUSH_REQUEST' (status=1)
Fri Jun 26 01:28:40 2009 PUSH: Received control message: 'PUSH_REPLY,route 192.168.10.1,route 192.168.178.0 255.255.255.0 192.168.10.1,ping 10,ping-restart 120,ifconfig 192.168.10.2 255.255.255.0'
Fri Jun 26 01:28:40 2009 OPTIONS IMPORT: timers and/or timeouts modified
Fri Jun 26 01:28:40 2009 OPTIONS IMPORT: --ifconfig/up options modified
Fri Jun 26 01:28:40 2009 OPTIONS IMPORT: route options modified
Fri Jun 26 01:28:40 2009 WARNING: Since you are using --dev tun with a point-to-point topology, the second argument to --ifconfig must be an IP address.  You are using something (255.255.255.0) that looks more like a netmask. (silence this warning with --ifconfig-nowarn)
Fri Jun 26 01:28:40 2009 TUN/TAP device tun0 opened
Fri Jun 26 01:28:40 2009 TUN/TAP TX queue length set to 100
Fri Jun 26 01:28:40 2009 /sbin/ifconfig tun0 192.168.10.2 pointopoint 255.255.255.0 mtu 1500
ifconfig: SIOCSIFDSTADDR: Invalid argument
Fri Jun 26 01:28:40 2009 Linux ifconfig failed: external program exited with error status: 1
Fri Jun 26 01:28:40 2009 Exiting
 
Zuletzt bearbeitet:
Die erweiterte Clientkonfig hab ich auch beim Client aktiviert.
Was meinst du denn damit??? Das geht doch nur in der Server-Ansicht der GUI??

Selbstverständlich bist du auch nicht auf die GUI angewiesen. Einfach den Autostart dort deaktivieren und das OpenVPN mit der Config deiner Wahl starten

Um deine Fehler besser eingrenzen zu können wäre es ungemein hilfreich, wenn du zueinander passende Configs und Logs schicken könntest. Aus dem Log sieht man, das da im push kein "topology subnet" drinsteht, was es aber sollte/müsste. Ohne die zugehörige Config kann ich nicht sehen, warum.

Der von dir gewählte Eintrag für "dhcp" (den ifconfig-pool) ist schonmal nicht sinnvoll. Schau dir dazu vielleicht mal die Doku an.
Leider kann nur die ClientBox die Rechner im Netz 192.168.178.0 anpingen.
Die Serverbox kann das leider nicht. Was kann das sein?
Das verstehe ich nicht: Vom Server aus ist das am Server lokal angeschlossene Netz 192.168.178.0 nicht erreichbar, wohl aber vom Client aus??


Jörg
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.