Aufsetzen eines eigenen Streaming-Servers
Immer wieder wurde ich gefragt, wie ich auf diesen Seiten das Livestreaming realisiere, dass Sie mittels der Player in der Webseite hier die verschiedenen Livestreams beobachten können! Bisher konnte ich da nur auf meine Kollegen verweisen, nun habe ich mich selbst mal hinter das Linux-Terminal geklemmt und eine Testkonfiguration auf einem Raspberry Pi 3b und 4 hinbekommen. Sie erhalten am Ende eine leistungsstarke Möglichkeit, eigene Livestreams zu hosten und diese z.B auf der eigenen Webseite darzustellen oder zu Drittanbietern wie YouTube, Twitch, Facebook u.v.m zu streamen. Ebenso sind Mehrfach-Streams zu verschiedenen Anbietern möglich sowie mehrere Livestream-Kanäle, sodass ihr z.B einen Nistkasten und eine Webcam zeitgleich streamen könnt! Das alles ohne die horrenden Kosten für Streaming-Provider!
In dieser Anleitung beschreibe ich Erstellung auf einem Raspberry Pi 3b, da dieser preiswerter ist als ein 4 er oder 5 er und die Leistung für einfaches Streaming in der Regel genügt. Die erforderlichen Befehle für die Konsole unterscheiden sich aber nur minimal.
INFO: Am Ende dieser Installationsanleitung können Sie sich auch ein von mir vorkonfiguriertes Setup herunterladen und auf Ihre Micro-SD ablegen!
Voraussetzungen & benötigte Hardware
Zunächst brauchen Sie einen hinreichend schnellen Internetanschluss sowie eine öffentliche IPv4-Adresse. Mit reinem IPv6 oder gar einem DS-Lite funktioniert es nicht ohne Weiteres, da Sie nicht von „draussen“ auf ihren Raspberry kommen! Ebenso sollte Ihr Upload mindestens 4 mbit betragen – später dazu mehr. Hohe Bandbreiten im Uplink sind auf jeden Fall aber zu bevorzugen. Machen Sie einen Speedtest.
- Sie benötigen ein Raspberry Pi 3b
- Ein Gehäuse dafür ist empfehlenswert.
- Der Raspi sollte per LAN ins Netzwerk eingebunden sein
- Sie benötigen eine Micro-SD Karte mit hoher Lebensdauer.
Beachten Sie:
Statt einem Raspberry Pi kann man sich z.B auch einen Server bei einem Hoster mieten und diesen nutzen! Ich rate aber dringend davon ab wenn Sie kein IT-Profi sind! Ein vServer ist wesentlich leistungsstärker und kann auch durch Cyberkriminalität für destruktive Zwecke eingesetzt werden, wenn Hacker Zugriff erlangen mangelns entsprechender Sicherungsmaßnahmen.
Wird solch ein Server durch Schadsoftware kompromittiert, kann damit großer Schaden angerichtet werden! Ein gemieteter Server ist leistungsstärker und bandbreitentechnisch viel besser angebunden. Darum realisiere ich diese Webseite über einen vServer bei NetCup. Ich habe allerdings einen Profi mit an Board! Für einfaches Streaming von 1-4 Streams reicht eine gute Internetleitung mit einem Raspberry Pi zu Hause völlig aus!
Die folgende Anleitung bezieht sich auf das Aufsetzen eines Raspberry Pi 3 als Stream-Server. Grundlegende PC-Kenntnisse sind erforderlich! Sie sollten wissen, was eine IPv4 ist, wie man einen Port freischaltet und wie man ggf. ein DynDNS einrichtet, um auch bei wechselnder IP an den Raspberry samt der Player zu kommen. Es ist in jedem Fall aber auch als Nicht-Experte hinzubekommen!
Speicherkarte mit dem Betriebssystem beschreiben
Bevor Sie den Raspberry Pi in Betrieb nehmen können, braucht er zunächst ein Betriebssystem. Dieses wird mit dem Raspberry Pi Imager auf die Speicherkarte geschrieben. Weiter unten habe ich auch noch ein Tutorial verlinkt, welches den Umgang mit den Raspberry Pi Imager genauer erklärt.
- Stecken Sie die Micro-SD in einen Kartenleser
- Laden Sie sich den Raspberry Pi Imager herunter.
- Wählen Sie Ihr Raspi-Modell aus und als OS „Raspberry PI OS 32 bit“ und nun wählen Sie die Speicherkarte aus. (NICHT die Lite-Version nutzen – damit wird SSL/HTTPS nicht funktionieren!)
- Gehen Sie auf „Weiter“ und öffen Sie die Einstellungen. Dort setzen Sie den Haken bei SSH und vergeben ein Benutzername und Passwort. Das SSH ist für den Zugriff über die Konsole nötig, um Kommandos eingeben zu können. Mit den gesetzten Zugangsdaten melden Sie sich später an. Nun beschreiben Sie die Karte.
- Laden Sie sich „Putty“ herunter. Mit diesem Programm können den Raspberry am SSH-Terminal steuern und Kommandos eingeben – später dazu mehr.
- Ist der Schreibvorgang abgeschlossen können Sie die Karte in Ihren Raspberry einsetzen und ihn einschalten.
Die Einrichtung der Software
Nun geht es ins Eingemachte. Schauen Sie in Ihrem Router nach der IP des Raspberry und öffnen sie nun „Putty“. Geben Sie die IP des Raspberry Pi ein und drücken auf „open“. Es sollte sich ein dunkles Fenster öffnen wo nun nacheinander nach Benutzername und Passwort gefragt wird. Nicht wundern: Beim Eingeben des Passworts sehen Sie keine Zeichen! Dies ist völlig normal! Bestätigen Sie jede Eingabe mit „Enter“.
Nach dem Login sehen Sie den grünen Cursor mit Ihrem Benutzernamen vorangestellt. Sie können nun Kommandos abschicken. Los geht es mit dem Updaten des Betriebssystems, damit alle Systemkomponenten auf dem neusten Stand sind.
Betriebssystem updaten:
Geben Sie folgende Befehle nacheinander ein, warten Sie immer, bis der Vorgang abgeschlossen ist und er sich die Pakete und Dateien gezogen hat. Das kann auch mal ein Paar Minuten dauern! Nach Abschluss des Vorgangs erscheint wieder der grüne Curser mit Ihrem Nutzernamen voran.
sudo apt update
sudo apt upgrade
Das „sudo“ sagt, dass Sie den Befehl als „SuperUser“, also mit Root-Rechten ausführt.
Docker installieren
Nach dem erfolgreichen Update des Betriebssystems können Sie Docker installieren. Dabei handelt es sich um eine Virtualisierungsumgebung bei der verschiedene Anwendungen isoliert in eigenen Containern betrieben werden können. Der Datarhei Restreamer läuft ebenfalls in solch einem „Container“.
Geben Sie nun folgende Befehle in der aufgeführten Reihenfolge ein – jede Zeile ist ein eigenes Kommando welches abgeschickt wird. Das Reinkopieren in Putty erfolgt dabei mit der rechten Maustaste. Achten Sie stets darauf, dass vorne keine # oder Leerzeichen stehen! Mit den Pfeiltasten können Sie den Curser bewegen.
curl -fsSL https://get.Docker.com -o get-Docker.sh
sudo sh get-Docker.sh
sudo usermod -aG docker $USER
newgrp docker
docker run hello-world
Datarhei Restreamer installieren
Nun kommt die Installation des Datarhei Restreamers. Er wird als Docker-Container installiert und ausgeführt und nach der Installation erhalten Sie zudem eine grafische Bedienoberfläche und müssen nicht mehr das Terminal mit Kommandos füttern!
Geben Sie folgendes Kommando ein (Alle Zeilen kopieren):
docker run -d --restart=always --name restreamer-rpi -v /opt/restreamer/config:/core/config -v /opt/restreamer/data:/core/data --privileged -p 8080:8080 -p 8181:8181 -p 1935:1935 -p 1936:1936 -p 6000:6000/udp datarhei/restreamer:rpi-latest
Wenn Sie einen anderen Port als 8080 möchten, ersetzen Sie diesen durch einen anderen, ungenutzten Port. Beispiel: 9000:8080
Wenn er sich ale Datenpakete gezogen und installiert hat, können Sie nun die grafische Bedienoberfläche des Restreamers im Webbrowser öffnen! Geben Sie nun Folgendes in die Adresszeile des Webbrowsers ein: Ipadresse:8080/ui – nun sollte eine Anmeldemaske erscheinen bei der Sie ihr Benutzerkonto erstellen. Nutzen Sie unbedingt sichere Passwörter!
Die Entwickler haben zudem zahlreiche Tutorials und Anleitungen ausgearbeitet, die die Bedienung kurz und knapp erklären!
Portfreigaben für das Raspberry Pi einrichten
Damit Sie Ihre Livestreams für den Rest der Welt zugängig machen können, benötigen Sie 2 Portfreigaben für den Raspberry, damit dieser aus dem Internet heraus erreichbar ist und der Stream abrufbar wird. Der weitergeleitete Port ist der externe Port auf den man bei Eingabe der IP oder Domain zugreift, dieser wird entsprechend an den Port des Raspberry intern weitergereicht.
- Port 8181 (SSL) an 443 weiterleiten
- Port 8080 an 80 weiterleiten.
Auch hier nachfolgend ein YouTube-Tutorial, wie man Portweiterleitungen einrichtet am Beispiel einer FritzBox.
Verschlüsselte Verbindung einrichten (SSL/HTTPS)
Früher war das Internet mit HTTP zu benutzen, die Verbindungen waren also nicht verschlüsselt. Mittlerweile aber läuft der überragende Teil aller Webseiten über HTTPS/SSL. Dabei ist die Verbindung zwischen Server und Endgerät verschlüsselt und schwerer abzuhören. Aus Sicherheitsgründen werden daher heutzutage Webseitenelemente blockiert, wenn diese über das unsichere HTTP-Protokoll ausgeliefert werden. Dies würde also auch mit Ihren Livestreams geschehen! Darum müssen wir dem Restreamer nun ein SSL-Zertifikat hinterlegen – das ist jedoch einfacher als wonach es klingt – hier haben die Entwickler ebenfalls wieder ganze Arbeit geleistet!
- Gehen Sie ganz oben rechts auf das Symbol zu den Einstellungen.
- Wählen Sie „System“, dann „Netzwerk“.
- Setzen Sie den Haken bei „SSL-Let’s Encrypt“ und tragen Sie Ihre öffentliche IP-Adresse ein, sofern es sich um eine statische IP handelt, ansonsten Ihre DynDNS-Adresse über die das Ganze später erreichbar sein soll.
- Speichern Sie die Einstellungen und versuchen Sie nun das Webinterface über HTTPS aufzurufen, Hierzu geben Sie die IP, bzw. Domainnamen mit https:// voran ein und Sie sollten ein „Schloss“ vor der Adresszeile sehen. (und ein https:// vorne)
Wenn Sie eine statische IPv4 haben, geben Sie diese in das Feld ein, weiter unten Ihre Email – Falls es Probleme gibt. Wenn Sie eine dynamische IP haben (was meistens der Fall ist, die sich ständig also ändert) müssen Sie zunächst ein DynDNS einrichten, damit sich dei Adresse für den Zugriff auf Restreamer sowie der Streams nicht ändert. Wie das geht habe ich als Video am Beispiel einer FritzBox angefügt. Ich nutze „No-IP“ ganz gerne.
Livestreams einrichten und veröffentlichen
Hurra, Sie haben es fast geschafft! Jetzt kommt der letzte Schritt 🙂 Jetzt gilt es, eigene Liveübertragungen einzurichten und für Ihre Zuschauer sichtbar zu machen. Auch hier liefern die Entwickler des Restreamers wieder die passenden, knackig-kurzen aber informativen Tutorials, wie das genau geht. Darum spare ich mir viel „BlaBla“ und verlinke die für diesen Schritt entscheidenen Videos!
Wichtig! Im dritten Video wird gezeigt, wie man den Videoplayer in eine Webseite einbettet. Der angegebene Code für das Iframe ist nicht responsiv. Also die Videogröße passt sich nicht an die Displaygröße/Fenstergröße dynamsich an. Das ist im modernen Internet ein Problem. Es kann zu Layoutverschiebungen oder abgeschnittenem Bild kommen.
Daher ziehen Sie den Code für das Iframe zum Einbetten einmal durch dieses Tool unter dem Reiter „Generic Iframe“ und binden dann den neu, responsiv generierten Code in das Layout Ihrer Webseite ein. Dies habe ich selbst hier so gehandhabt, die Streamplayer sind dadurch nun responsiv und passen sich dynamisch an jeden Bildschirm an, richten sich in ihrer maximalen Größe nach dem Layout, ansonsten nach Ihrem Bildschirm.
Playlist
Download & Einrichtung als fertiger Streaming-Server
Sie können ein vorkonfiguriertes Setup eines Streaming-Servers herunterladen und sich damit Arbeit sparen. Sie müssen die Installation dann nur noch entsprechend personalisieren, um es im Handumdrehen nutzen zu können.
Und so nutzen sie es:
- Laden Sie das .rar Archiv herunter und entpacken Sie es.
- Nun haben sie eine Imagedatei von 16 GB Größe. Laden Sie sich den Win32Diskimager herunter
- Öffnen Sie das Programm und wählen Sie oben die Image-Datei aus und rechts den Datenträger (die Micro SD für den Raspberry)
- Klicken Sie auf „Schreiben“. Nun wird das Image auf die Karte kopiert.
- Nach der Erfolgsmeldung stecken Sie die Karte in Ihren Raspberry und starten ihn.
Beachten Sie: Sie müssen mindestens eine 16 GB Karte verwenden, damit das Image drauf passt. Da sich die Karten in ihrer tatsächlich nutzbaren Speicherkapazität von Hersteller zu Hersteller minimal unterscheiden können, kann es passieren, dass das Image nicht auf die vermeintlich gleichgroße Karte passt. Nutzen Sie dann die nächst größere Karte, eine 32 GB.
Nach dem Start des Raspberrys ändern Sie unbedingt als Erstes ihr Benutzerpasswort! Für die Erstanmeldung in der Konsole/SSH lauten das Passwort sowie der Benutzername: admin . Das neue Passwort muss 2 mal eingegeben werden. Ggf wird nach dem alten/bisherigen Passwort gefragt.
Das Kommando dazu geht wie folgt:
sudo passwd
Als Nächstes das System updaten:
sudo apt update
sudo apt upgrade
Datarhei Restreamer updaten:
docker pull datarhei/restreamer:rpi-latest
Vorkonfigurierten Streaming-Server bestellen
Wenn Sie sich die Einrichtung nicht zutrauen, können Sie auch einen vorkonfigurierten Streaming-Server bestellen. Dabei erhalten Sie die Hardware mit einem lauffähigen System, das Sie nur noch Updaten brauchen sowie dass SSL/HTTPS einrichten müssen. Eine Anleitung finden Sie hier.
-
Vorkonfigurierter Streaming-Server
129,00 €Kein Mehrwertsteuerausweis, da Kleinunternehmer nach §19 (1) UStG.
Lieferzeit: 5 - 10 Tage
In den Warenkorb
Namensnennung & Lizenzierung der Software
Es gibt eine große Palette an Informationen, wie die Software zu nutzen oder einzurichten ist. All die Software ist open source und damit kostenfrei zu nutzen. Die nachfolgenden Angaben der Lizenzen regeln, wie die jeweilige Software genutzt werden darf. Die entsprechenden Lizenztexte liegen dem Downloadpaket bei.
Eine Veränderung des Quellcodes meinerseits fand nicht statt.
Datarhei Restreamer, lizenziert unter der Apache 2.0
Datarhei Restreamer Dokumentationen
Docker, lizenziert unter der Apache 2.0
Raspberry Pi OS, lizenziert unter der CC BY-SA 3.0