PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Diskussionsthread zu How-To: Box sicher ins Internet freigeben



/dev/null
29.04.2014, 11:02
Unter Linux mache ich das auf folgende Art, wenn .ssh existiert. Vorsichtshalber >> zum anhängen, falls authorized_keys existiert.
cat .ssh/id_rsa.pub | ssh IP_oder_HOSTNAME_der_STB"cat >> .ssh/authorized_keys"

Erstellt den Ordner, wenn nicht vorhanden.
ssh IP_oder_HOSTNAME_der_STB"mkdir .shh && chmod 700 .ssh"

Oder als komplette Möglichkeit.
cat .ssh/id_rsa.pub | ssh IP_oder_HOSTNAME_der_STB"mkdir .ssh && chmod 700 .ssh && cat >> /tmp/bla/authorized_keys"

MfG

Oma Edith sagt:
Jetzt macht die ganze Sache mit scp mehr Spaß, entweder man holt was von der Box:
scp IP_Hostname_der_STB:/etc/enigma2/settings . (kopiert die Datei von der Box in das aktuelle Verzeichnis)

oder man schiebt was auf die Box:
scp meine_Datei IP_oder_HOSTNAME_der_STB:/etc/enigma2/meine_Datei (Dateiname kann man in diesem Fall auch weglassen beim Ziel, außer der name soll sich ändern)

Das ganze funktioniert auch Rekursiv in beide Richtungen.

MfG
Wollte dort nur noch Anmerken, dass die Sache noch etwas sicherer wird, wenn man an der externen Schnittstelle des Routers PAT verwendet. Somit erkennt man nicht gleich, dass es ein ssh Zugang gibt, ohne den ssh-Port direkt ändern zu müssen.

Beispiel:
interne_IP_STB:22 auf öffentliche_IP:8080

Bei einer ssh-Verbindung muss dann immer der Port mit angegeben werden:
ssh -p 8080 öffentliche_IP/dnsname
scp -P 8080 datei öffentliche_IP/dnsname:/zielverzeichnis
Eventuell noch den Benutzername vor der öffentliche_IP/dnsname setzen, wenn die User sich unterscheiden.

MfG

Oma Edith sagt:
Box -> STB

TheChip
29.04.2014, 13:45
Hier können Verbesserungsvorschläge / Disskussionen zum How-To (http://www.hdmedia-universe.com/board/showthread.php?6574-How-To-Box-sicher-ins-Internet-freigeben) rein.

drcyber
29.04.2014, 15:56
kann man diese Einstellungen irgendwie Sichern und zurück spielen (admin tool oder so?) ,

oder muss man das jedesmal wenn man das Image aktualisiert neu einrichten?

Dondo
29.04.2014, 19:18
kann man diese Einstellungen irgendwie Sichern und zurück spielen (admin tool oder so?) ,

oder muss man das jedesmal wenn man das Image aktualisiert neu einrichten?

Rules in morly's tool rule! :D

solala
29.04.2014, 19:32
feines Tut bei dem mir nur auffiel, daß Receiver und Router durchweg beide als Box bezeichnet werden was in diesem Zusammenhang ungünstig erscheint

drcyber
29.04.2014, 20:03
Rules in morly's tool rule! :D

Ja aber welche Dateien muss ich genau sichern ?

Dondo
29.04.2014, 20:35
Ja aber welche Dateien muss ich genau sichern ?

Na ja... Deine .ssh/authorized_keys halt. Willst ja nicht jedes Mal das Schlüsselpaar neu erzeugen. Lies Dir SpaceRats Anleitung im anderen Thread einfach nochmal aufmerksam durch - die ist wirklich umfassend und gut!

/dev/null
29.04.2014, 21:09
Ich lege meine Backups auf der Box mit hilfe eines winzigen Script an.

script back


#!/bin/sh
tar czvf /hdd/backup_$1.tar.gz `cat rules | cut -d"#" -f1` --exclude=.gstream*


Was gesichert werden soll bekommt tar in diesem Fall aus einer Datei namens rules.

Datei rules


/bin/evremote2 # Fernbedienung
/boot/audio.elf # Sound mit DTS
/etc/.emustart # oscam status
/etc/auto.network # Netzwerkverbindungen
/etc/dropbear # ssh
/etc/enigma2 # Box Einstellungen Senderlisten etc.
/etc/fstab # Mount Optionen
/etc/inetd.conf # Netzwerkdienste daemon Konfiguration
/etc/init.d/dropbear # ssh
/etc/init.d/oscam.sh # oscamscript
/etc/network/interfaces # Netzwerkkonfiguration
/etc/ownscript.sh # Startscript für seinen eigenen Kram
/picon # Senderlogos
/root # My Home is my Castle
/usr/bin/dbclient # fuer dropbear/ssh
/usr/bin/dropbearconvert # fuer dropbear/ssh
/usr/bin/dropbearkey # fuer dropbear/ssh
/usr/bin/scp # fuer dropbear/ssh
/usr/emu # oscam binary
/usr/keys # oscam Konfigurationen
/usr/lib/enigma2/python/Components/Renderer/CoolNextEvent.pyo # CoolTV Plugin
/usr/lib/enigma2/python/Components/Renderer/CoolPico.pyo # CoolTV Plugin
/usr/lib/enigma2/python/Plugins/Extensions/BMediaCenter # Mediacenter Plugin / Folder Taste auf der FB
/usr/lib/enigma2/python/Plugins/Extensions/CoolTVGuide # CoolTV Plugin
/usr/lib/enigma2/python/Plugins/Extensions/CustomSubservices # Unterkanallisten Plugin / gruene Taste dann wieder gruene Taste auf der FB, vorher auf richtigen Sender Eurosport, Bundesliga, Sport
/usr/lib/enigma2/python/Plugins/Extensions/DreamPlex # DreamPlex Plugin
/usr/lib/enigma2/python/Plugins/Extensions/EPGRefresh # EPG Nachts refreshen um keine leeren Infos bei den Sendern zu haben
/usr/lib/enigma2/python/Plugins/Extensions/FritzCall # Fritzbox Plugin / Status der Box, WiFi an-aus, Anruferanzeige mit Bild
/usr/lib/enigma2/python/Plugins/Extensions/MediaPortal # MediaPortal Plugin
/usr/lib/enigma2/python/Plugins/Extensions/OscamStatus # oscam Statusinformationen Plugin
/usr/lib/enigma2/python/Plugins/SystemPlugins/AutomaticVolumeAdjustment # automatisch Lautstaerke angleichen zwischen Stereo und AC3 bei den Sendern
/usr/lib/enigma2/python/Plugins/SystemPlugins/SkyFanZone # Sky Fanzone Plugin Fussball und F1
/usr/lib/enigma2/python/Screens/InfoBarGenerics.pyo # angepasste Datei fuer die Fernbedienung
/usr/libexec/sftp-server # fuer dropbear/ssh
/usr/local/share/enigma2/NoGfxBlue # Oberflaechenskin Plugin
/usr/local/share/enigma2/keymap.xml # angepasste Datei fuer die Fernbedienung
/usr/sbin/dropbear # dropbear/ssh Plugin
/var/lock/dropbear # dropbear/ssh Plugin
/var/opkg # Informationen der installierten Pakete



Das hinter der Raute (#) sind Kommentare, da ich das mal für einen Bekannten gemacht habe, damit er weiß für was so die einzelnen Dateien sind. Diese werden durch das cut nach dem Pipe ausgeblendet so das nir die Pfade übergeben werden.

Die beiden Dateien liegen in /root und werden dann z.B. ./back sz aufgerufen. sz steht für Schlafzimmer und es wird eine Datei /hdd/backup_sz.tar.gz angelegt. Die beiden Dateien verwende ich auf alle Boxen und sammle so meine Backups mit dem jeweiligen Namen. Zurückgespielt wird das Backup mit tar xzvf /hdd/backup_sz.tar.gz -C / (trau mich jetzt hier nicht einen Punkt zu setzen, deshalb der Kommentar).

So mache ich das und fahre damit sehr gut, vielleicht ein Anreiz für den Einen oder Anderen sich auch mal darüber Gedanken zu machen.

MfG

santa
29.04.2014, 21:36
/etc/enigma2 # Box Einstellungen Senderlisten etc.
/usr/lib/enigma2/python/Screens/InfoBarGenerics.pyo # angepasste Datei fuer die Fernbedienung

Bitte nicht, das ist nicht schön

/dev/null
29.04.2014, 21:45
Für die Allgemeinheit hast Du wahrscheinlich recht, aber bei mir sieht das so aus, das diese aus einer InfoBarGenerics.py generiert wird und wenn es da keine Änderungen gibt, dann muss ich diese nicht neu aufspielen. Und deshalb sichere ich diese mit, wegen meinen Änderungen (Portaltaste, Time/Sleeptaste). Ich vergleiche immer und passe sie halt an.

MfG

santa
29.04.2014, 21:55
ändere deinen Post vielleicht bitte so ab, das andere das auch nutzen können, du weißt doch das
User immer gerne c+p benutzen ohne zu wissen warum.

SpaceRat
30.04.2014, 21:05
Na ja... Deine .ssh/authorized_keys halt. Willst ja nicht jedes Mal das Schlüsselpaar neu erzeugen. Lies Dir SpaceRats Anleitung im anderen Thread einfach nochmal aufmerksam durch - die ist wirklich umfassend und gut!

Ein interessanter Aspekt ...
Ich hatte nicht berücksichtigt, daß die sh4-Images nicht wirklich online aktualisiert werden können und damit die Einstellungen ständig "at risk" sind ... (Aus dem Grund mache ich auch jedes Mal ein Full-Backup ...)

Zu sichern wären:
/etc/dropbear/dropbear_dss_host_key
/etc/dropbear/dropbear_rsa_host_key
/root/.ssh/authorized_keys

und der Schalter "-s" in inet.conf wäre nach der Re-Installation des dropbear manuell wieder zu setzen ...
(Die inetd.conf sollte man aber nicht als solche sichern, bzw. nur so, daß sie nicht automatisch zurückgeschrieben wird).

Die Host Keys (Die ersten beiden Dateien) würde ich auch mitsichern, denn die identifizieren den Receiver ggü. dem Client. Das dropbear-Paket erzeugt zwar während der Installation neue, aber das führt dann beim nächsten Verbindungsaufbau zu einer Warnung des Clients, daß hier ein Angriffsversuch eines MITM (Man in the middle, als ein Angreifer auf dem Weg zwischen Client und Server) vorliegen könnte.

drcyber
02.05.2014, 11:39
Ich hab das jetzt mal probiert und es funzt auch :) , ausser das mit der Key-Authorisierung hab ich noch nicht hinbekommen, irgendwo hab ich da wohl einen Fehler gemacht. Aber ich werde, auch um das Konfigurieren nach jedem Update der Box zu vermeiden, mir einen Raspberry Pi zulegen und den als ssh-Server laufen lassen, der braucht kaum Strom und kann somit auch immer on sein :)

Eine Frage noch bezüglich der Key-Erzeugung.. gibts da in Linux was ähnliches wie dieses Puttygen?

/dev/null
02.05.2014, 11:51
man ssh-keygen. ;)
Schau mal ob der Ordner /root root gehört oder ob da 1000 steht. Wenn da 1000 steht, dann ändern. Jetzt sollte auch die Key-Authorisierung funktionieren.

MfG

drcyber
04.05.2014, 00:06
ich kriegs einfach nicht hin...

das root verzeichnis hat folgende Berechtigungen:


drwxr-xr-x 4 root root 1024 May 1 10:46 root


.shh so:


drwx------ 2 root root 1024 May 3 22:58 .ssh


und authorized_keys:


-rw------- 1 root root 595 May 3 22:58 authorized_keys



... ich habs jetzt auch mit ssh-keygen schlüsseln versucht , selbes ergebnis..
:(

SpaceRat
04.05.2014, 01:17
ich kriegs einfach nicht hin...



drwx------ 2 root root 1024 May 3 22:58 .ssh
-rw------- 1 root root 595 May 3 22:58 authorized_keys

:(
Name und Rechte der Verzeichnisse/Dateien sind o.k.

Entweder stimmt der Inhalt nicht oder der Client zickt.

/dev/null
04.05.2014, 14:52
@drcyber

Starte drobear (dropbear -E -F -s)mal von Hand und schaue was beim Loginversuch dann in der Konsole steht.

MfG

so sieht es bei mir aus

ll .ssh/
drwx------ 2 root root 0 Jan 1 2000 .
drwxr-xr-x 4 root 1000 0 Jan 1 2000 ..
-rw-r--r-- 1 root root 394 Apr 14 09:46 authorized_keys
-rw-r--r-- 1 root root 216 Mar 25 16:19 known_hosts

drcyber
06.05.2014, 11:41
Danke für eure Hilfe. Mittlerweile habe ich den Ssh-Server auf dem pi laufen und alles funzt perfekt , danke nochmal für die Idee :)