+ Antworten
Seite 1 von 3 1 2 3 LetzteLetzte
Ergebnis 1 bis 15 von 35

OpenVPN auf vServer

Diskussion über OpenVPN auf vServer in Security der Kategorie Fachliches; Hallo, ich habe mir einen vServer gemietet, den ich als VPN-Server nutzen möchte. Zunächste habe ich mich erstmal mit Linux ...

  1. #1
    Reg.-Benutzer
    Reg.-Datum
    02.05.2011
    Beiträge
    54

    Standard OpenVPN auf vServer

    Hallo,

    ich habe mir einen vServer gemietet, den ich als VPN-Server nutzen möchte. Zunächste habe ich mich erstmal mit Linux beschäftigt und das Ding hoffentlich "halbwegs" abgesichert (langes komplexes Root-Pw, direkten Root-Login verboten, SSH-Verbindung mit PublicKey und Passphrase, nur einen Benutzer...falls jemand noch Ideen hat, das Ganze noch besser abzusichern, darf er sich gerne äußern:-)).

    Auf dem vServer soll außschließlich OpenVPN laufen (vielleicht noch sftp) und zwar für folgenden Zweck:

    Es gibt eine beliebige Anzahl von Clients (in der Realität werden es 2 bis 3 sein), die sich mit dem VPN Server verbinden sollen (natürlich mit bestmöglicher Verschlüsselung --> Zertifikate). Das Ganze soll zwei Zwecke erfüllen: Zum einen sollen die Clients Daten austauschen können (wie im LAN eben auch), am besten auch mit dem Server, wobei dafür auch sftp bereitsteht, von daher nicht ganz so wichtig, und zum anderen um den Server als Gateway zu nutzen.

    Dazu habe ich folgendes Tutorial verwendet:

    Henning Dippel » OpenVPN-Server

    1. Installation ging problemlos!
    2. Erstellen der Zertifikate auch!
    3. Starten des Server geht nicht!

    Bei Punkt 3 brauche ich Hilfe, da es meiner Meinung nach hier ein wenig "vServer-spezifisch" wird, was im Tutorial nicht berücksichtigt ist. Starte ich den OpenVPN-Server mit folgender Config, dann erhalte ich eine Fehlermeldung mit folgenden Wortlaut:

    cannot ioctl tunsetiff tun operation not permitted (errno=1)
    Attempting falback to Kernel 2.2 TUN/TAP Interface
    cannot allocate TUN/TAP dev dynamically
    Code:
    local [IP]
    port 1149
    proto udp
    dev tun
    server 10.8.0.0 255.255.255.0
    ifconfig-pool-persist ipp.txt
    ca /etc/openvpn/examples/easy-rsa/2.0/keys/ca.crt
    cert /etc/openvpn/examples/easy-rsa/2.0/keys/server.crt
    key /etc/openvpn/examples/easy-rsa/2.0/keys/server.key
    dh /etc/openvpn/examples/easy-rsa/2.0/keys/dh1024.pem
    push "route 10.8.0.0 255.255.255.0" # teste einmal mit und ohne "route 10.8.0.0 255.255.255.0"
    push "redirect-gateway def1"
    ;push  "dhcp-option DNS 208.67.222.222" Was das ist weiß ich nicht, darum kommentiert
    ;push  "dhcp-option DNS 208.67.220.220"
    comp-lzo
    keepalive 10 60
    ping-timer-rem
    persist-tun
    persist-key
    status openvpn-status.log
    Das Problem hört sich danach an, als würde ich versuchen das TUN-Device zu konfigurieren, obwohl ich das nicht "darf". Deswegen habe ich mal die Zeile mit "server ..." kommentiert, weil ich die Befürchtung hatte, dass es daran liegen könnte. Dann erhalte ich jedoch die Meldung:

    Parameter ca_file can only be specified in TLS-mode, i.e. where --tls-server or --tls-client is also specified.
    Benutze ich die entsprechenden Parameter (z.B. openvpn --TLS-Server [server.conf]), dann wird mir gesagt, dass ich den Pfad des CA angeben muss. Wenn ich den angebe, fragt er nach DH usw. Irgendwann habe ich ein vierzeiliges Kommando und es geht trotzdem nicht weiter, zumal es ja in der server.conf drinne steht.

    Meine Frage wäre jetzt: Wie sieht eine vernünftige/funktionierende Server-Config für meine Ansprüche, der die Besonderheiten eines vServers beachtet, aus?

    Vielen Dank...

    ciao Peter

  2. #2
    Moderator Java
    Reg.-Datum
    24.07.2007
    Ort
    auf nem Berg
    Beiträge
    7.424

    Standard

    Irgendwie finde ich das Projekt unsinnig, wenn man einen Server hat und darauf über eine verschlüsselte Verbindung verbinden will, nimmt man SSH / SCP / SFTP. Ein VPN verbindet ein gesamtes Netzwerk, das Du hier nicht hast. Für VPN muss der Kernel das TUN/TAP Device unterstützen, d.h. es muss in den Kernel kompiliert sein bzw. als Modul vorliegen. Bei einem VServer hat man i. Allgm. keine Möglichkeit Kernelmodule zu verändern, da der Kernel passend zu der Virtualisierungsumgebung installiert ist und somit keine Modifikation zu lässt.

    In meinen Augen solltest Du bekannte Dienste wie SSH verwenden und die VPN Installation nicht durchführen
    We can only see a short distance ahead, but we can see plenty there that needs to be done. (Alan Turing)
    http://flashpixx.de

  3. #3
    Reg.-Benutzer
    Reg.-Datum
    02.05.2011
    Beiträge
    54

    Standard

    Mit einem VPN bin ich aber flexibler. Ich kann ohne größere Umstände neue Nutzer aufnehmen und Daten austauschen oder Spiele spielen. Des Weiteren sind dann alle Rechner in meinem Heimnetz verbunden, sonst müsste ich ja auf jeden einen SSH-Client installieren und so macht das DD-WRT;-)

    Mit 2-3 Clients meinte ich jeweils Router (es kann aber auch vorkommen, dass sich ein einzelner PC verbindet z.B. öffentliches WLAN).

  4. #4
    Reg.-Benutzer
    Reg.-Datum
    02.05.2011
    Beiträge
    54

    Standard

    Achso...das TUN/TAP Device wird ausdrücklich unterstützt. Es ist auch da (überprüft mit "lsmod"). Nur kann man es nicht konfigurieren laut Provider, aber für diese Zwecke sollte es funktionieren.

  5. #5
    Reg.-Benutzer Avatar von lupo49
    Reg.-Datum
    27.03.2007
    Ort
    Warstein / Dortmund
    Beiträge
    2.784

    Standard

    Ubuntuusers.de - OpenVPN Probleme

    Existiert das tun-Device schon (ifconfig?)? Wenn ja, hast du den Parameter von "dev" mal direkt auf bspw. "dev tun0" gesetzt?

  6. #6
    Reg.-Benutzer
    Reg.-Datum
    02.05.2011
    Beiträge
    54

    Standard

    OK...das war schonmal ein sehr guter Tip...DANKE:-)

    Das TUN-Device hieß in Wirklichkeit TUN844-33 (herausgefunden mit ifconfig) und ich hatte in der Config nur "dev tun" stehen. Ok...hätte man auch selbst drauf kommen können, anstatt ales blind abzuschreiben.

    Leider hat sich dadurch ein neuer Fehler ergeben:

    Note: Cannot set tx queue length on tun844-33: Operation not permitted (errno=1)
    SIOCSIFADDR: Permission denied
    SIOCSIFFLAGS: Permission denied
    SIOCSIFDSTADDR: Permission denied
    SIOCSIFFLAGS: Permission denied
    SIOCSIFMTU: Operation not permitted
    Tue May 10 07:58:45 2011 Linux ifconfig failed: external program exited with error status: 1

    Aus den Fehlermeldungen werde ich nun gar nicht schlau, außer dass nichts gesendet werden kann, weil nicht erlaubt und dass irgendein Programm ifconfig beendet hat? Ist diese Interpretation richtig. An was kann das wieder liegen?

  7. #7
    Reg.-Benutzer
    Reg.-Datum
    02.05.2011
    Beiträge
    54

    Standard

    Sooo...jetzt ist das Problem auch aus der Welt.

    Jetzt steht da: Initialization Sequence Completed

    Ich denke mal das heißt soviel wie "ich bin am Ziel".

    Dennoch gibt es zwei Probleme: Zum einen kann sich der Client nicht verbinden ("TLS Handshake failed") und es steht weiterhin da: "Note: Cannot set tx queue length on tun844-33: Operation not permitted (errno=1)" --> Ist das problematisch?

    Ich hoffe mir kann jemand helfen. Danke:-)

  8. #8
    Moderator Java
    Reg.-Datum
    24.07.2007
    Ort
    auf nem Berg
    Beiträge
    7.424

    Standard

    Das "Operation not permitted" kling für mich danach, dass Du nicht die richtigen Rechte hast (User bzw. Dateirechte).
    We can only see a short distance ahead, but we can see plenty there that needs to be done. (Alan Turing)
    http://flashpixx.de

  9. #9
    Reg.-Benutzer
    Reg.-Datum
    02.05.2011
    Beiträge
    54

    Standard

    Ja genau...daran lags auch. Auf vServern ist das TUN Dev schon vorkonfiguriert, d.h. man darf z.B. "server [IP]" nicht verwenden, weil eben die Rechte fehlen.

    Jetzt muss ich nur noch den Fehler mit dem TLS-Handshake lösen.

  10. #10
    Reg.-Benutzer
    Reg.-Datum
    02.05.2011
    Beiträge
    54

    Standard

    Mh...irgendwas stimmt nicht. Der Fehler passiert unabhängig davon ob der VPN-Server läuft oder nicht. Kann das sein, dass der Client den Server nicht erreicht? Ich kann den Server im übrigen problemlos pingen. Muss ich eventuell dem Server irgendwas in Richtung "Forwarding" beibringen?

    Meine "Server-Logs" beim starten:

    Tue May 10 10:36:08 2011 OpenVPN 2.1.0 x86_64-pc-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] [MH] [PF_INET6] [eurephia] built on Jul 20 2010
    Tue May 10 10:36:08 2011 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
    Tue May 10 10:36:08 2011 /usr/bin/openssl-vulnkey -q -b 1024 -m <modulus omitted>
    Tue May 10 10:36:08 2011 TUN/TAP device tun844-33 opened
    Tue May 10 10:36:08 2011 Note: Cannot set tx queue length on tun844-33: Operation not permitted (errno=1)
    Tue May 10 10:36:08 2011 UDPv4 link local (bound): [AF_INET]xxx.xxx.xxx.xxx:1149
    Tue May 10 10:36:08 2011 UDPv4 link remote: [undef]
    Tue May 10 10:36:08 2011 Initialization Sequence Completed
    Mein Client-Logs:

    Tue May 10 12:39:06 2011 OpenVPN 2.2.0 Win32-MSVC++ [SSL] [LZO2] built on Apr 26 2011
    Tue May 10 12:39:06 2011 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
    Tue May 10 12:39:07 2011 LZO compression initialized
    Tue May 10 12:39:07 2011 Control Channel MTU parms [ L:1542 D:138 EF:38 EB:0 ET:0 EL:0 ]
    Tue May 10 12:39:07 2011 Socket Buffers: R=[8192->8192] S=[8192->8192]
    Tue May 10 12:39:07 2011 Data Channel MTU parms [ L:1542 D:1450 EF:42 EB:135 ET:0 EL:0 AF:3/1 ]
    Tue May 10 12:39:07 2011 Local Options hash (VER=V4): '41690919'
    Tue May 10 12:39:07 2011 Expected Remote Options hash (VER=V4): '530fdded'
    Tue May 10 12:39:07 2011 UDPv4 link local: [undef]
    Tue May 10 12:39:07 2011 UDPv4 link remote: xxx.xxx.xxx.xxx:1194
    Tue May 10 12:40:07 2011 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
    Tue May 10 12:40:07 2011 TLS Error: TLS handshake failed
    Tue May 10 12:40:07 2011 TCP/UDP: Closing socket
    Tue May 10 12:40:07 2011 SIGUSR1[soft,tls-error] received, process restarting
    Tue May 10 12:40:07 2011 Restart pause, 2 second(s)
    server.conf:

    Code:
    local xxx.xxx.xxx.xxx
    port 1149
    proto udp
    dev tun844-33
    tls-server
    mode server
    ca /etc/openvpn/examples/easy-rsa/2.0/keys/ca.crt
    cert /etc/openvpn/examples/easy-rsa/2.0/keys/server.crt
    key /etc/openvpn/examples/easy-rsa/2.0/keys/server.key
    dh /etc/openvpn/examples/easy-rsa/2.0/keys/dh1024.pem
    comp-lzo
    keepalive 10 60
    ping-timer-rem
    persist-tun
    persist-key
    status openvpn-status.log
    client.conf:

    Code:
    client
    dev tun
    proto udp
    remote XXX.YYY.ZZZ.XXX 1194
    resolv-retry infinite
    nobind
    persist-key
    persist-tun
    ca ca.crt
    cert client.crt
    key client.key
    comp-lzo
    verb 3
    Danke für eure Hilfe:-)
    Geändert von Peter1 (10.05.2011 um 12:56 Uhr)

  11. #11
    Reg.-Benutzer Avatar von Crash2001
    Reg.-Datum
    20.05.2001
    Ort
    Hamburger Speckgürtel
    Beiträge
    6.890

    Standard

    Entspricht xxx.xxx.xxx.xxx (aus der server.conf) denn XXX.YYY.ZZZ.XXX (aus der client.conf)?

    Ist eventuell eine Firewall auf dem Server und/oder Client aktiv, die das ganze blockt (iptables z.B. auf dem Server)?
    MfG Crash2001
    Love me or let it be, but don't play with me! |-| <O| mein IRC-Channel |O> |-| CCNA und FIAE

    if (!$knowledge) { if(!res_search($foo)) { post($question); } else { use_output_as_input($search); } } else { start_working(); }

  12. #12
    Reg.-Benutzer
    Reg.-Datum
    02.05.2011
    Beiträge
    54

    Standard

    Sorry für die verschiedenen Bezeichnungen, aber ja die IPs sind gleich.

    Ich habe iptables nicht installiert und ich denke, dass es auch nicht vorinstalliert ist. Müsste ich mal checken. Falls es doch installiert ist, wie müsste ich es konfigurieren? Könnte es auch noch an was anderes liegen?

  13. #13
    Reg.-Benutzer Avatar von Crash2001
    Reg.-Datum
    20.05.2001
    Ort
    Hamburger Speckgürtel
    Beiträge
    6.890

    Standard

    Vielleicht einfach mal einen anderen Port ausprobieren. Vielleicht wird der Port ja vom Anbieter des VServers geblockt.

    Sollte iptables drauf sein, einfach den entsprechenden Traffic erlauben, alles erlauben zum testen oder aber iptables aus schalten.
    MfG Crash2001
    Love me or let it be, but don't play with me! |-| <O| mein IRC-Channel |O> |-| CCNA und FIAE

    if (!$knowledge) { if(!res_search($foo)) { post($question); } else { use_output_as_input($search); } } else { start_working(); }

  14. #14
    Reg.-Benutzer
    Reg.-Datum
    02.05.2011
    Beiträge
    54

    Standard

    Stimmt...ich habe versucht port 1194 zu erreichen. Das geht nicht. Welche anderen Ports bieten sich an bzw. welche sind wahrscheinlich offen?

  15. #15
    Reg.-Benutzer
    Reg.-Datum
    02.05.2011
    Beiträge
    54

    Standard

    Kann das auch an dem liegen: Note: Cannot set tx queue length on tun844-33: Operation not permitted (errno=1)?

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

Ähnliche Themen

  1. OpenVPN Config
    Von aua im Forum Security
    Antworten: 0
    Letzter Beitrag: 11.01.2011, 15:20
  2. OpenVPN OSI-Schichtmodell
    Von CrazyDornie im Forum Networking Technologies
    Antworten: 3
    Letzter Beitrag: 17.01.2008, 14:02
  3. OpenVPN und MTU bei DSL
    Von dr.disk im Forum Linux + Unix
    Antworten: 5
    Letzter Beitrag: 07.11.2006, 23:45
  4. OpenVPN zwischen Mac und PC
    Von DaVeD im Forum Networking Technologies
    Antworten: 6
    Letzter Beitrag: 15.04.2006, 17:42
  5. OpenVPN
    Von tobman im Forum Linux + Unix
    Antworten: 4
    Letzter Beitrag: 23.06.2005, 13:52

Die häufigsten Suchbegriffe für diese Seite:

openvpn vserver

vserver openvpn

Cannot ioctl TUNSETIFF tun: Operation not permitted (errno=1)

vpn vserver

ERROR: --dev tun also requires --ifconfig

Cannot ioctl TUNSETIFF tun: Operation not permitted

Note: Cannot ioctl TUNSETIFF tun: Operation not permitted (errno=1)