.titleBar { margin-bottom: 5px!important; }

[gelöst] Freetz: OpenVPN Webinterface Fehler?

Dieses Thema im Forum "FRITZ!Box Fon: Modifikationen" wurde erstellt von monty03, 9 Sep. 2008.

  1. monty03

    monty03 Neuer User

    Registriert seit:
    9 Sep. 2008
    Beiträge:
    9
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #1 monty03, 9 Sep. 2008
    Zuletzt bearbeitet: 17 Sep. 2008
    Hallo,

    ich hab auf meiner 7270 OpenVPN mit Zertifikaten unter Verwendung des TUN Interfaces eingerichtet (routing). Beim ersten User funktioniert das auch perfekt, allerdings nicht mit weiteren Benutzern. Diese können sich zwar anmelden, können aber über ping keine Verbindung zum VPN-Server und zu den Geräten hinter dem OpenVPN-Server herstellen.

    Ich habe den Verdacht, dass die Freetz-Web-Oberfläche hier eine falsche Konfiguration generiert. Ich muss nämlich eine remote ip (192.168.2.2) bei ifconfig eingeben, diese sollte es allerdings nicht geben, da die IP ja über ifconfig-pool gesetzt werden sollte.

    Kann ich die Konfiguration irgendwie manuell umschreiben? (TAP will ich bewusst nicht verwenden)

    Hier meine server config:
    # OpenVPN 2.1 Config, Tue Sep 9 19:40:19 CEST 2008
    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 1194
    mode server
    ifconfig-pool 192.168.2.3 192.168.2.5
    ifconfig 192.168.2.1 192.168.2.2
    push "route 192.168.1.0 255.255.255.0" # LAN hinter dem Server
    tun-mtu 1500
    mssfix
    verb 3
    daemon
    cipher AES-128-CBC
    comp-lzo
    keepalive 10 120

    Der erste Client, der sich anmeldet bekommt die IP 192.168.2.2, Gateway ist bei diesem dann auf 192.168.2.1, was soweit richtig ist und auch funktioniert. Der zweite Client erhält als IP aber 192.168.2.6 und Gateway ist 192.168.2.5 und das ist meiner Meinung nach der Fehler.

    Ich wäre sehr dankbar für eure Hilfe.

    Danke und viele Grüße
    Monty

    PS: Ich verwende den SVN-trunk von freetz.
     
  2. MaxMuster

    MaxMuster IPPF-Promi

    Registriert seit:
    1 Feb. 2005
    Beiträge:
    6,923
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    #2 MaxMuster, 9 Sep. 2008
    Zuletzt bearbeitet: 9 Sep. 2008
    Hi,

    das ist so, wie es bei einem Pool funktionieren soll, wenn man openvpn.net "glauben darf" ;-). Jeder Client bekommt sein eigenes Subnetz mit der Maske /30 (255.255.255.252):

    Auch das Angeben per ifconfig und dann ein Pool wird so gemacht (z.B. bei "server <net> <mask>" zu lesen).

    Was hättest du denn gern wie anders?

    Jörg
     
  3. monty03

    monty03 Neuer User

    Registriert seit:
    9 Sep. 2008
    Beiträge:
    9
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Danke für deine Antwort.

    Ich möchte eigentlich nur, dass auch der zweite Client auf das Netz hinter dem VPN und den Rechner auf den der VPN-Server läuft zugreifen kann, was leider nicht funktioniert.

    Hast du eine Idee woran das liegen könnte? Vielleicht leigt es daran, dass auch der zweite Client eine Subnetzmaske von 255.255.255.255 bekommt und nicht wie von dir erwähnt 255.255.255.252. Hier scheint was nicht zu stimmen.

    Gruß
    Monty
     
  4. MaxMuster

    MaxMuster IPPF-Promi

    Registriert seit:
    1 Feb. 2005
    Beiträge:
    6,923
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Hi,

    das ist im Prinzip so, wie es sein sollte (falls es dich interessiert: hier wird das ganz gut beschrieben), aber dennoch scheint in der erzeugten Konfig noch was zu fehlen :oops:

    Wenn du mal den Haken bei "Experteneinstellungen" setzt, und dann in der Zeile mit Zusatzparametern eingibst:

    Code:
    push "route 192.168.2.1"
    # oder eventuell sogar
    push "route 192.168.2.1"; push "route-gateway 192.168.2.1"
    Damit wird dann der Befehl server <net> <mask> komplett nachgebildet, denn diesen Part hatte ich vergessen:
    Code:
    # openvpn.net Beispiel für [I]server 10.8.0.0 255.255.255.0[/I]
    if client-to-client:
      push "route 10.8.0.0 255.255.255.0"
    else
      push "route 10.8.0.1"
    
    Jörg
     
  5. monty03

    monty03 Neuer User

    Registriert seit:
    9 Sep. 2008
    Beiträge:
    9
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Danke für deine Bemühungen.

    Leider funktioniert das auch nicht. Es liegt wahrscheinlich daran, dass dieser if - else Bereich bei mir nicht erstellt wird. Hier die openvpn.conf die vom Webinterface generiert wird:

    # OpenVPN 2.1 Config, Wed Sep 10 18:27:05 CEST 2008
    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 1194
    mode server
    ifconfig-pool 192.168.2.4 192.168.2.251
    ifconfig 192.168.2.1 192.168.2.2
    push "route 192.168.1.0 255.255.255.0"
    tun-mtu 1500
    mssfix
    verb 3
    daemon
    cipher AES-128-CBC
    comp-lzo
    keepalive 10 120
    push "route 192.168.2.1"
    push "route-gateway 192.168.2.1"

    Was könnte ich noch tun?

    Gruß
    Monty
     
  6. MaxMuster

    MaxMuster IPPF-Promi

    Registriert seit:
    1 Feb. 2005
    Beiträge:
    6,923
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Hi,

    das mit dem if-else-Part ist nur eine "Pseudo-Sptrache" für die Erklärung der Funktion auf openvpn.net, die Config ist so richtig.

    Wenn das so nicht geht, dann poste doch bitte mal die Client-Config sowie "ipconfig" und "route print" einmal vor und einmal nach dem Verbinden.

    Jörg
     
  7. monty03

    monty03 Neuer User

    Registriert seit:
    9 Sep. 2008
    Beiträge:
    9
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #7 monty03, 10 Sep. 2008
    Zuletzt bearbeitet: 11 Sep. 2008
    Hallo,

    hier die Dateien:

    client.conf:
    Code:
    client
    dev tun
    remote xxx.dyndns.org 1194
    proto udp
    ca /home/monty/Downloads/Netzwerk/openvpn/easy-rsa/2.0/keys/ca.crt
    cert /home/monty/Downloads/Netzwerk/openvpn/easy-rsa/2.0/keys/dm7000.crt
    key /home/monty/Downloads/Netzwerk/openvpn/easy-rsa/2.0/keys/dm7000.key
    comp-lzo yes
    cipher AES-128-CBC
    tls-remote fritzbox
    tls-auth /home/monty/Downloads/Netzwerk/openvpn/easy-rsa/2.0/keys/static.key 1
    
    ifconfig nach dem Verbinden:
    Code:
    eth0      Link encap:Ethernet  Hardware Adresse 00:15:c5:b3:a6:db  
              inet Adresse:192.168.0.2  Bcast:192.168.0.255  Maske:255.255.255.0
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metrik:1
              RX packets:73281 errors:0 dropped:0 overruns:0 frame:0
              TX packets:64248 errors:0 dropped:0 overruns:0 carrier:0
              Kollisionen:0 Sendewarteschlangenlänge:1000 
              RX bytes:27923903 (26.6 MB)  TX bytes:8399892 (8.0 MB)
              Interrupt:22 
    
    lo        Link encap:Lokale Schleife  
              inet Adresse:127.0.0.1  Maske:255.0.0.0
              inet6-Adresse: ::1/128 Gültigkeitsbereich:Maschine
              UP LOOPBACK RUNNING  MTU:16436  Metrik:1
              RX packets:3731 errors:0 dropped:0 overruns:0 frame:0
              TX packets:3731 errors:0 dropped:0 overruns:0 carrier:0
              Kollisionen:0 Sendewarteschlangenlänge:0 
              RX bytes:190358 (185.8 KB)  TX bytes:190358 (185.8 KB)
    
    tun0      Link encap:UNSPEC  Hardware Adresse 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
              inet Adresse:192.168.2.6  P-z-P:192.168.2.5  Maske:255.255.255.255
              UP PUNKTZUPUNKT RUNNING NOARP MULTICAST  MTU:1500  Metrik:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
              Kollisionen:0 Sendewarteschlangenlänge:100 
              RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
    
    vmnet8    Link encap:Ethernet  Hardware Adresse 00:50:56:c0:00:08  
              inet Adresse:192.168.229.1  Bcast:192.168.229.255  Maske:255.255.255.0
              inet6-Adresse: fe80::250:56ff:fec0:8/64 Gültigkeitsbereich:Verbindung
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metrik:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:84 errors:0 dropped:0 overruns:0 carrier:0
              Kollisionen:0 Sendewarteschlangenlänge:1000 
              RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
    
    route nach dem Verbinden:
    Code:
    Kernel-IP-Routentabelle
    Ziel            Router          Genmask         Flags Metric Ref    Use Iface
    192.168.2.1     192.168.2.5     255.255.255.255 UGH   0      0        0 tun0
    192.168.2.5     *               255.255.255.255 UH    0      0        0 tun0
    192.168.229.0   *               255.255.255.0   U     0      0        0 vmnet8
    192.168.1.0     192.168.2.5     255.255.255.0   UG    0      0        0 tun0
    192.168.0.0     *               255.255.255.0   U     0      0        0 eth0
    default         e.home          0.0.0.0         UG    0      0        0 eth0
    
    Das sieht soweit alles richtig aus. Ich kann aber keinen der Rechner im LAN noch den OpenSVN-Server auf 192.168.2.1 erreichen. Ich denke aber vielleicht müsste doch bei 192.168.2.5 die Subnetzmaske auf 255.255.255.252 sein?

    Jedenfalls vielen Dank für deine Bemühungen.

    Hier noch die Einträge bei getrennter Verbindung:
    route
    Code:
    Kernel-IP-Routentabelle
    Ziel            Router          Genmask         Flags Metric Ref    Use Iface
    192.168.229.0   *               255.255.255.0   U     0      0        0 vmnet8
    192.168.0.0     *               255.255.255.0   U     0      0        0 eth0
    default         e.home          0.0.0.0         UG    0      0        0 eth0
    
    ifconfig
    Code:
    eth0      Link encap:Ethernet  Hardware Adresse 00:15:c5:b3:a6:db  
              inet Adresse:192.168.0.2  Bcast:192.168.0.255  Maske:255.255.255.0
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metrik:1
              RX packets:73533 errors:0 dropped:0 overruns:0 frame:0
              TX packets:64324 errors:0 dropped:0 overruns:0 carrier:0
              Kollisionen:0 Sendewarteschlangenlänge:1000 
              RX bytes:27942842 (26.6 MB)  TX bytes:8407497 (8.0 MB)
              Interrupt:22 
    
    lo        Link encap:Lokale Schleife  
              inet Adresse:127.0.0.1  Maske:255.0.0.0
              inet6-Adresse: ::1/128 Gültigkeitsbereich:Maschine
              UP LOOPBACK RUNNING  MTU:16436  Metrik:1
              RX packets:3731 errors:0 dropped:0 overruns:0 frame:0
              TX packets:3731 errors:0 dropped:0 overruns:0 carrier:0
              Kollisionen:0 Sendewarteschlangenlänge:0 
              RX bytes:190358 (185.8 KB)  TX bytes:190358 (185.8 KB)
    
    vmnet8    Link encap:Ethernet  Hardware Adresse 00:50:56:c0:00:08  
              inet Adresse:192.168.229.1  Bcast:192.168.229.255  Maske:255.255.255.0
              inet6-Adresse: fe80::250:56ff:fec0:8/64 Gültigkeitsbereich:Verbindung
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metrik:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:90 errors:0 dropped:0 overruns:0 carrier:0
              Kollisionen:0 Sendewarteschlangenlänge:1000 
              RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
    
    Gruß
    Monty
     
  8. MaxMuster

    MaxMuster IPPF-Promi

    Registriert seit:
    1 Feb. 2005
    Beiträge:
    6,923
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Moin,

    erste Bitte: packe so "lange" ausgaben bitte in [noparse]
    Code:
     und 
    [/noparse] Tags, dann wird es deutlich übersichtlicher und der Beitrag nicht so lang.

    Über "comp-lzo yes" beschwert sich openvpn nicht? Der Parameter heißt eigentlich nur "comp-lzo".
    Der tls-remote name ist auch o.k.? Merkwürdig finde ich auch, dass der Client überhaupt funktioniert, obwohl du kein "pull" in der Config hast. Was ist denn das für einer Version?
    Dann bleibt nur noch das Log von beiden Seiten beim Verbindungsaufbau. Postest du das bitte mal (erstmal sollte "verb 5" reichen).
    Ein möglicher anderer Test wäre auch, openvpn auf der Box neu zu startten, und dann den "zweiten Client" zuerst zu nutzen. Der sollte dann ja die erste IP bekommen und alles müsste gehen...

    Jörg
     
  9. monty03

    monty03 Neuer User

    Registriert seit:
    9 Sep. 2008
    Beiträge:
    9
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Danke für deine Hinweise. Ich hab den Beitrag angepasst. Ich bekomme beim Verbindungsaufbau keinerlei Fehlermeldung. Das Log kann ich erst am Montag hereinstellen, da ich erst dann wieder testen kann.

    Viele Grüße
    Monty
     
  10. monty03

    monty03 Neuer User

    Registriert seit:
    9 Sep. 2008
    Beiträge:
    9
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo,

    ich hab jetzt noch ifconfig-pool-linear hinzugefügt. Jetzt geht es auf einmal!
    Ich kann zwar keine Windows-Clients mehr verwenden, aber ich habe ohnehin nur Linux-Clients.

    Vielen Dank, Jörg, nochmals für deine Hilfe.

    Gruß
    Monty
     
  11. MaxMuster

    MaxMuster IPPF-Promi

    Registriert seit:
    1 Feb. 2005
    Beiträge:
    6,923
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Hi,

    freut mich, wenn es geht. Könntest du dann bitte den Titel mit einem "[gelöst]" oder so versehen, dann wird es übersichtlicher (erster Beitrag -> ändern -> erweitert)?
    Nur noch als Hinweis: Du kannst mit einem aktuellen Windoof-Client das gleiche auch mit "topology subnet" hinbekommen, dann akzeptiert der das auch. So wird es übrigens auch gemacht, wenn du die "erweiterten Clienteinstellungen" nutzt, bei denen du dann pro Client eine IP fest vorgeben kannst und auch auf der Client-Seite noch Netze nutzen kannst, die dann geroutet werden...

    Jörg
     
  12. monty03

    monty03 Neuer User

    Registriert seit:
    9 Sep. 2008
    Beiträge:
    9
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Danke für den Hinweis. Das "gelöst" habe ich hinzugefügt.

    Gruß
    Monty