[HOWTO] VDR sicher über das Internet bedienen

  • Hallo Allerseits!


    Da ich lange gebraucht habe um mir die ganzen Informationen in Bezug auf
    Nutzung des VDR's aus dem Internet zusammenzusuchen, habe ich gedacht ich schreibs jetzt mal für alle kompakt zusammen.


    Was also hier behandelt werden soll:


    1. Putty über das Internet via SSH und inklusive Router-Konfiguration
    2. VDRadmin sicher über einen SSH-Tunnel nutzen
    3. Samba über einen Putty-SSH-Tunnel
    4. FTP übers Internet via SCP


    Was noch fehlt:
    Streaming übers Internet. (Da fehlt mir einfach Bandbreite! ;))
    Aufwecken des Rechners übers Internet (in Ermangelung einer fähigen Netzwerkkarte)


    Aber nun in medias res:
    Was wir brauchen:
    Einen VDR mit VDRAdmin, Samba-Server und Internet-anbindung(Ich hab LinVDR, da ist alles inklusive;))
    Eine feste IP-Adresse des VDR im lokalen Netz (Kein DHCP)
    Einen Account bei DynDNS.org oder einem vergleichbaren Dienst.
    putty
    und
    WinSCP


    Zu meiner Konfiguration ist noch zu sagen, daß die sich hinter einem Router (Draytek 2500We) befand, im folgenden werde ich mich auf die Konfiguration des ganzen über einen Router beziehen.


    Vorarbeiten:
    Größtes Problem ist es, aus dem weiten Internet unseren Rechner zuhause überhaupt zu finden. Dazu wird eine IP-Adresse benötigt, die einzigartig ist und sozusagen die Hausnummer unseres Rechners ist. Problematisch ist nun einzig und allein, daß die wenigsten von uns eine statische(heißt feste) IP-Adresse haben, sondern sich diese mit jedem Login bei unserem Provider wieder ändert.
    Aber das Internet wäre nicht das Internet, wenn es dazu keine Lösung gäbe...:D
    In diesem Fall DynDNS (es gibt auch noch www.no-ip.com, www.dtdns.com, www.changeip.com, www.dynamic-nameserver.com, www.ddns.com.ns usw. ich bezieh mich hier aber auf DynDNS.)


    DynDNS macht nun nichts anderes, als eine Webadresse (zb.: BerndZuhause.dyndns.org) mit der IP eures Internet-Zuganges zuhause zu übersetzen. Damit der Service aber immer eure IP-Adresse auch kennt, muß man ihm die zukommen lassen. Das übernimmt in meinem Fall der Router, es gibt aber auch Dienstprogramme die man sich bei DynDNS herunterladen kann, und die dann von einem Rechner zuhause ausgeführt werden.(Der dann natürlich immer an sein muß...)
    Um diesen Service auf dem Router einzurichten, muß man dort meistens unter etwas ähnlichem wie Dynamisches DNS die Benutzereinstellungen für DynDNS angeben. (Im Zweifelsfall mal im Handbuch nachschauen oder im Internet z.B.:router-forum.de)


    Wenn das getätigt ist können wir schon unseren Router im Internet finden. Um jetzt auch noch auf unseren VDR zugreifen zu können, müssen wir Ports auf unserem Router öffnen und an den VDR weiterleiten.
    !!!ACHTUNG!!!
    Das Öffnen von Ports stellt immer ein Sicherheitsrisiko dar und kann auch trotz diverser Sicherheitsmaßnahmen zu erfolgreichen Angriffen auf Euer System führen... (Auch wenn das unwahrscheinlich mit Portforwarding und SSH und Tunneling ist..)



    1. Putty über das Internet via SSH und inklusive Router-Konfiguration
    Also wir benötigen für Putty und den SSH-Zugang den Port 22. Da wir den aber ungern offen ins Internet hängen, werden wir ihn umleiten:
    Dazu suchen wir uns irgendeinen Port aus. z.B.: 8122. Auf diesem Port erwartet schon mal niemand einen SSH Zugang zu finden...
    Diesen Port müssen wir nun im Router unter soetwas wie NAT oder Network Adress Translation zunächst öffnen(NAT-Ports öffnen) und dann noch unter Portumleitungstabelle auf die VDR-IP und den Port 22 des VDR weiterleiten. (Verwendetes Protokoll ist immer TCP)
    Nun kann man schon aus dem Internet mit Putty auf unseren VDR zugreifen:
    Dazu muß man nur noch als Host Name seine DynDNS Adresse und als Port seinen selbstgewählten weitergeleiteten Port angeben. Also in unserem Beispiel:
    Host: BerndZuhause.dyndns.org
    Port: 8122
    und Verbinden.
    Und zu guter letzt sollten wir noch das Passwort von dem Standard Passwort auf ein neues ändern, wenn wir nicht wollen, daß unsere Forenkollegen unsere Filme sich anschauen... ;) Gehen tut das bei linvdr ganz einfach über SETUP.
    Nun sollte Putty wie immer laufen...


    Kommen wir zu
    2. VDRadmin sicher über einen SSH-Tunnel nutzen
    Zunächst zu VDRadmin. Bei LinVDR läuft der auf Port 80 es gibt andere Distributionen, auf denen er auf einem anderen Port läuft. Zu finden ist der Port auf jeden Fall in der vdradmind.conf unter SERVERPORT
    Auf diesem Port hört VDRadmin und sendet auch seine Daten.
    Damit das sicher über das Internet funktioniert, brauchen wir nur in der Konfiguration von Putty unter SSH -> Tunnel ein paar Einstellungen vornehmen:
    Source Port: 80
    Destination: localhost:80
    und dann auf Add!
    Was wir grade gemacht haben nennt man Tunneln. Man sagt Putty sozusagen, das Anfragen und Ausgaben von dem Port 80 auf dem Linvdr an den Port 80 des Internet-Rechners weitergeleitet werden. Für den erscheint das jetzt so, als wenn die Ausgabe auf "ihm selbst" stattfindet.
    Demnach können wir jetzt einfach im Browser mit


    localhost (für linvdr) bzw
    localhost:port (für andere Distris (port durch den Vdradmin port ersetzen))


    auf VDRadmin zugreifen.
    Einzige Bedingung: Putty muß mit dem Tunnel immer aktiv sein, solange wir VDRadmin benötigen!
    Nun weiter:


    3. Samba über einen Putty-SSH-Tunnel
    So, jetzt geht's ans Eingemachte!
    Jetzt müssen wir an Windows ein bißchen schrauben:
    Unter Windows XP muß man nun unter Start->Einstellungen->Systemsteuerung->Hardware nach neuer Hardware suchen. Nachdem er keine findet dann auf Ja, die Hardware wurde schon installiert dann ganz nach unten scrollen und auf Neue Hardware hinzufügen, dann noch auf Hardware manuell wählen, dann Microsoft und dann Loopbackadapter.
    Fertig.
    Unter Start->Einstellungen->Netzwerkverbindungen mal die Eigenschaften vom Loopbackadapter aufrufen und alle Dienste bis auf Internetprotokoll(TCP/IP) deaktivieren, dann auf die Eigenschaften vom Internetprotokoll und eine beliebige feste IP-Adresse wählen. Es sollte eine IP-Adresse aus dem privaten Bereich sein, siehe auch hier. (Danke an wilderigel) Nehmen wir mal 192.168.222.222.
    Subnet-Mask bleibt wie sie ist (255.255.255.0)
    und dann gehts noch auf Erweitert.. und unter dem Reiter WINS den Menüpunkt NETBIOS über TCP/IP deaktivieren anklicken.


    So, Hardwarekonfiguration abgeschlossen! :D Kurz durchatmen, dann geht's weiter! :]


    Jetzt kommen wir wieder zu Putty. Dort wieder unter dem altbekannten Tunnel Menüpunkt eine weitere Weiterleitung eintragen:
    Source Port: 192.168.222.222:139
    Destination: localhost:139
    (Ja, Source-Port nimmt soviel Zeichen an, auch wenn's nicht so aussieht! ;))
    Wenn wir jetzt wieder Putty aktiviert haben und mit dem Tunnel das ganze betreiben, können wir im Explorer (nicht Internet-Explorer) mit


    \\192.168.222.222
    auf unseren VDR zugreifen.
    User und Password sind unsere alten Samba-Daten.


    4. FTP übers Internet via SCP


    Ja, FTP kann man leider nicht Tunneln, dafür aber auch ziemlich sicher abwickeln. Das gute ist, das wir alle Einstellungen die wir brauchen schon eingerichtet haben und so nur noch WinSCP starten müssen.
    Zu den Einstellungen in unserem Beispiel:
    Rechnername: BerndZuhause.dyndns.org
    Port: 8122
    Benutzername: root
    Kennwort: EuerKennworthalt..
    Protokoll: SCP


    Unter
    Umgebung->SCP
    Überschrift: Andere Einstellungen
    Gruppen lesen: aus
    unter SSH
    Kompression einschalten: ein
    unter Einstellungen und dann wieder auf Einstellungen und dort dann unter Integration kann man noch den Pfad zu Putty eingeben und die beiden Kästchen dadrunter auch aktivieren, dann wird bei jedem Aufruf auch gleich Putty gestartet und sich automatisch eingeloggt..


    Damit sollte dann auch ein FTP-Zugang über das Internet auf euren VDR funktionieren..
    So, das war's!! Viel Spaß dabei und falls jemand Anmerkungen hat insbesondere was das Streamen und Aufwachen über das Internet angeht, dann gerne und bitte hier posten!


    Bis denn, Euer Folio

    Software: gepanschtes LinVDR 0.7 (mit Seltsam, Tarandor, Marc Twain)
    Hardware: Lintec Senior Gehäuse mit 2x8 LCD Display, 800Mhz Celeron auf nem MSI 6368, 160GB Seagate, LG-DVD-Brenner und ganz wichtig: Haupauge Nexus 2.3


    :DUnd immer noch der festen Überzeugung das alle Probleme gelöst werden können! :D

    Einmal editiert, zuletzt von Folio ()

  • Zitat

    Man sollte Intern keine IP Adresse (222.222.222.222) nehmen, die im Internet erlaubt ist.
    Nimm lieber eine aus einem Privaten IP-Bereich.


    Geändert, danke!

    Software: gepanschtes LinVDR 0.7 (mit Seltsam, Tarandor, Marc Twain)
    Hardware: Lintec Senior Gehäuse mit 2x8 LCD Display, 800Mhz Celeron auf nem MSI 6368, 160GB Seagate, LG-DVD-Brenner und ganz wichtig: Haupauge Nexus 2.3


    :DUnd immer noch der festen Überzeugung das alle Probleme gelöst werden können! :D

  • Problem:
    Zugriff auf die Konsole des vdrs aus dem Internet funktioniert, Zugriff auf VDR Admin jedoch nicht.


    Was genau muß ich dazu in putty einstellen? Unter tunnel


    Source Port: 80
    Destination: localhost:80


    genau so einstellen, oder muß man "localhost" durch die interne ip des vdrs also z.B. 192.168.6.3 ersetzen oder durch was anderes?


    Wenn ich dann auf "add" klicke, muß ich anschließend noch was tun? Oder einfach im Browser localhost eintragen, oder 192.168.6.3 ?



    Wäre sehr nett, wenn Jemand kurz antworten könnte, denn ich habe wie man sieht keine Ahnung von Netzwerktechnik.


    Danke!!!

  • Zitat

    Original von Folio
    Hallo Allerseits!


    Sehr schöne Anleitung- prima.


    Zur Fernbedienung (z.B. um das Burn-Plugin zu bedienen) nutze ich dann immer noch das control-Plugin.


    Ist perfekt dafür. Per ssh anmelden und einfach ein telnet localhost 2002 machen. Dann funktionieren die "üblichen" Tastaturbefehle (z.B. "m" für Menü usw.


    Grüße

    Glotze: yaVDR (ASRock Q1900M, 4GB RAM, DD Cine S2 V6.5, ZOTAC GT630 (Rev. 2)
    Server: HP ProLiant MicroServer G8, VMware ESXi 5.5 :P

  • Zitat

    Original von steph@vdr


    Was genau muß ich dazu in putty einstellen? Unter tunnel


    Source Port: 80
    Destination: localhost:80


    Sollte so stimmen. Alle Zugriffe auf Port 80 des Rechners, auf dem Putty läuft, weden auf Port 80 des Rechners, auf dem du eingeloggt bist, weitergeleitet.


    Zitat


    genau so einstellen, oder muß man "localhost" durch die interne ip des vdrs also z.B. 192.168.6.3 ersetzen oder durch was anderes?


    Du musst im Browser zu "localhost" verbinden. 192.168.6.3 kann der PC, auf dem Putty läuft, nicht auflösen (bzw. falls doch, ist es ein Rechner im lokalen Netz und nicht der auf der anderen Seite des SSH-Tunnels).



    Überprüfe erstmal, ob VDR-Admin ohne SSH-Tunnel funktioniert, also von einem Rechner im gleichen Netz aus. Und ob du VDR-Admin tatsächlich auf Port 80 laufen hast.


    Falls es über SSH nicht funktioniert, kann es auch daran liegen, dass du evtl. Port 80 auf deinem PC (auf dem Putty läuft) nicht benutzen kannst, entweder weil schon ein Service läuft, eine personal Firewall den Zugriff blockt oder weil du unzureichende Rechte auf dem PC hast (ist das unter Windows so? Bin mir nicht 100% sicher). Versuch mal "8888" als Source Port, "locahost:80" als Destination und Verbinde dann mit dem Browser zu "localhost:8888".


    HTH,
    fitzefatze

  • Wer seinen VDR übers Internet von irgendeinem Browser in der Welt aufwecken will, kann das mit dieser Page tun:
    (WOL über den Browser) Achtung nichts für Paranoide ;D Theoretisch kann die Firma bzw. der Betreiber alle eingetragenen Rechner jederzeit aufwecken.
    Für die korrekte Funktion ist ne DynIP oder feste ExternIP natürlich vorrausgesetzt, sonst kommt man ja nicht von aussen an sein Router!
    Der Router muss das MagicPacket natürlich ins interne Netz broadcasten. Auf der Seite gibts auch ne Kompatibilitätsliste von Routern die das können. Bei meinem LinkSys WRT54g gehts einwandfrei.
    Gruß
    Jarny


    PS: Wer der Seite nicht traut und irgendwo einen eigenen Server zur Verfügung hat der eh 24 läuft, kann mit den entsprechenden Tools zB. ether-wake bei Linux sich ein kleines Skript basteln (mit Passwortabfrage etc.) um seinen VDR zuhause aufzuwecken.

    MLD 3.0.3 Server. Aufnahmen schaue ich mit einem separaten XBMC (OpenElec Distribution) im Wohnzimmer am 47 Zoll HD Fernseher

  • Danke schon mal für die Tips. Habe alles genauso gemacht nur funktioniert es irgendwie nicht. Im LAN ist VDR Admin problemlos erreichbar, Port 80 stimmt auch. Firewall habe ich vorrübergehend deaktiviert.


    Seht Ihr hier noch nen Fehler?



    [Blockierte Grafik: http://home.arcor.de/ansteph/PuttySession.jpg]



    hier habe ich noch auf "add" geklickt
    [Blockierte Grafik: http://home.arcor.de/ansteph/tunnels.jpg]


    Einstellungen der Fritz!Box:
    [Blockierte Grafik: http://home.arcor.de/ansteph/fritz.box.jpg]


    Wenn ich "localhost" eingebe, schreibt der immer ein http davor, klappt das trotzdem?
    [Blockierte Grafik: http://home.arcor.de/ansteph/http%20localhost.JPG]


    localhost:80 geht gar nicht
    [Blockierte Grafik: http://home.arcor.de/ansteph/localhost80.jpg]



    Da fehlt doch bestimmt irgendwo nur ein kleines Häckchen an der richtigen Stelle, nur wo?

  • @ steph@vdr,


    ohne mir deine einstellungen konkret angesehen zu haben:


    du versuchst aber nicht aus dem lan übers i-net auf dein lan zuzugreifen?


    geht nämlich nicht.



    bernd

    --------------------------------
    aktuelle Konfiguration:
    SERVER-VDR:suse10, kernel:2.6.5, DVB-treiber: kerneleigener, vdr-1.4.0 plain + noad + and. Serverdienste, 2*Nova-S-SE Rev:1.0, gesteuert via xxv-4.0, hda3-->/video0
    CLIENT-VDR: activy-300 mit gen2vdr1.2 (thx@helau+activy-300), hda3-->/video0
    nfs-mounts:
    server:/video0 --> client:/video0/SERVER_NEU
    server:/hdc1 --> client:/video0/FILME
    server:/hdd1 --> client:/video0/SERIEN
    SERVER läuft 24/7, CLIENT bei Bedarf

  • steph@vdr


    :lehrer1 Http stimmt schonmal, das ist das Protokoll für den Austausch von Dokumenten im WWW. "http://localhost:80" und "http://localhost" ist exakt dasselbe, weil Port 80 der Standard-Port für http ist (d.h. das :80 kann man sich in dem Fall schenken. Falls der http-Server NICHT auf 80 läuft, muss man den Port explizit mit :<port> angeben). :lehrer1


    Ähm ganz andere Frage: Du hast SSH schon laufen, wenn du versuchst, auf den VDR-Admin zuzugreifen? Der SSH-Tunnel ist nur so lange offen, wie die Login-Session läuft. Also zuerst SSH-Verbindung herstellen, dann über den Tunnel auf VDR-Admin zugreifen. Dann VDR-Admin ausloggen und erst am Ende SSH-Session schließen.


    Gruß,
    fitzefatze

  • Interessant finde ich in diesem Zusammenhang das Konzept des Port-Knocking.
    Kurze Zusammenfassung (allgemein) und Installationsanleitung für den WRT54G unter dd-wrt auf: http://www.dd-wrt.com/wiki/ind…ku_%28DE%29#Port-Knocking


    Ich habe Port-Knocking auf meinem Router aktiviert, so dass der SSH-Port nicht ständig offen ist. Erst wenn einen bestimmte Sequenz aus TCP und UDP-Paketen angekommen ist (bspw.: 6549:tcp, 7981:upd, 12364:tcp), wird für 20s der SSH-Port geöffnet.


    Zumindest unter Debian testing ist der knock-Daemon per "apt-get install knockd" verfügbar, so dass man auch einzelne Rechner damit zusätzlich abschotten kann.

    VDR-User #992
    Server: Asrock N3700-ITX mit Cine S2 6.5 headless
    System: Ubuntu 22.04.LTS
    VDR: VDR 2.2.0 mit epgsearch, live, vnsiserver
    Client: Raspberry Pi v4 mit LibreElec

  • Und wenn ssh so funktioniert, sollte der tunnel auch so funktionieren.


    Aber ist wirklich Routerabhängig, ob es funktioniert.
    Gibt einige Modelle wa das nicht funktioniert vom LAN aus.


    Also LAN --> Router --> Portforwarding --> LAN

  • steph@vdr:


    Du mußt den Tunnel noch per "Add" hinzufügen und am besten in der Sektion "Session" das ganze abspeichern.


    Und dran denken: Der Host (bei dir localhost) unter "Destination" muß der Host sein, auf dem VDRAdmin läuft. Und auch der entsprechende Port dahinter.

  • Zitat

    Original von wilderigel
    Aber ist wirklich Routerabhängig, ob es funktioniert.
    Gibt einige Modelle wa das nicht funktioniert vom LAN aus.


    Also LAN --> Router --> Portforwarding --> LAN


    Ich würde eher sagen, es gibt ein paar Router, bei denen das funktioniert. Im Normalfall funktioniert NAT nur zwischen zwei verschiedenen Netzen.
    Falls der Router das nicht unterstützt, kann man allerdings einen Proxy im Internet benutzen und kommt so vom LAN -> Router -> Proxy -> Router -> LAN.

  • Kurze Frage: SSh Tunnel setzen wir auch gelegentlich auf der Arbeit ein,
    aber wozu brauch ich den Loopback Adapter?
    EDIT: Vermutlich weil der Port local direkt verfügbar ist (bei SMB) :(
    Citrix / oracle / vdradmin läst sich sich so tunneln:
    Source:8001 / Destination IP:8001 ohne Loopback-Adapter


    Bei Smb und XXV scheitere ich mit beiden Methoden.
    Muss füt SMB nicht ein Range von 137-139 eingegeben werden?
    Warum reagiert XXV nicht ? DB <-> Web spielt sich doch komplett remote ab, oder ? ?(

    Software: gen2vdr V3 ( Beta8 ) / gen2vdr V2
    Hardware: Intel 5200EE - 5N7A-VM - Scythe Shuriken - BeQuiet(Netzteil) - X10-USB Remote
    SMT 7020S & P3@900 - Testsystem mit FF und X10-USB Remote
    Links für Neueinsteiger


    "Jetzt, wo ich weiß wie es geht, versteh ich auch die Gebrauchsanleitung"

    2 Mal editiert, zuletzt von Mr.N!ce ()

  • Bei mir habe ich einfach - wie auch im VDR-Wiki beschrieben - den VDRADMIN-AM über einen ReverseProxy freigegeben. Bei dem entsprechenden Verzeichnis wird natürlich SSL über Port 443 erzwungen. Bisher kann ich damit ganz gut schlafen.


    Mein Rechner ist aber auch kein reiner VDR, sondern ist von seinen Aufgaben her eher eine Art "Wollmilchsau", so dass sowieso schon ein Apache darauf werkelte.


    Gruß,
    Carsten



    P.S.: Sorry konnte keinen direkten Link ins Wiki setzten. Technische Probleme: Mein Anonymizer kommt mit JavaScript nicht klar.

    Wollmilchsau (im Auf- bzw. Umbau):
    Hardware: Asus M3N78-VM, Athlon X2 BE-2350, 8 GB RAM, 2x500GB HDD (RAID1), 1TB HDD (ext), Cinergy T2 (USB), Nova-T (USB)
    Software: Ubuntu Lucid

    Test- / Backup-System:
    Hardware: Asus P2-P5945gc, Intel E5200, 3 GB RAM, 1TB HDD (int), Airstar 2, Nova-T (USB)
    Software: Debian Squeeze

  • Oh man, wenn das wirklich der Fehler war, habe ich viel Zeit für nix vergeudet:


    Aus welchen Gründen auch immer muss man nicht wie in der Anleitung angegeben nur localhost oder localhost:80 im Browser eingeben (zweiteres funzt in Opera gar nicht) sondern http:\\localhost:80


    Hatte noch keine Gelegenheit es von ausserhalb des lan zu testen, aber da es jetzt im Gegensatz zu vorher im Lan klappt, schein das der Fehler gewesen zu sein. Ein paar Buchstaben, große Wirkung....


    Vielleicht kann ja Jemand mal ne Anleitung ins vdr-wiki setzen.



    Wie sieht es eigentlich mit der Sicherheit aus? Wenn Jemand die Ports scannt und merkt das einer offen ist muss er doch nur in aller Ruhe die Passwörter automatisch durchtesten. Hätte beliebig viele Versuche und anschließend ne Linux Konsole für weiteres Unheil zur Verfügung, oder? Das die Verbindung zum Rechner zuhause verschlüsselt ist bringt doch dann nicht viel!?

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!