CoreELEC Amlogic

  • Das ist ja teilweise das, sobald [definition=12,0]debug[/definition].[definition='1','0']log[/definition] läuft habe ich den Fehler nicht.

  • Das ist ja teilweise das, sobald [definition=12,0]debug[/definition].[definition='1','0']log[/definition] läuft habe ich den Fehler nicht.

    Und was ist "Echo 3" ?

    Dann leg mal eine [definition='2','1']advancedsettings[/definition].xml an (muss in ~/.kodi/userdata/ liegen)
    Inalt:

    <[definition='2','1']advancedsettings[/definition]>
    <loglevel hide=“false”>1</loglevel>
    </[definition='2','1']advancedsettings[/definition]>

    Dann Komponentenlog Video anschalten, und noch mal probieren.

    ^^ Ist Debugging ohne das [definition=12,4][definition='1','3']Debug[/definition][/definition] Overlay, was oft einiges an Analyse stört

  • echo 3 bezieht sich darauf.


    Code
    echo 1 | tee /sys/module/amvdec_h265/parameters/double_write_mode

    nur wird statt echo 1 halt echo 3 verwendet.


    Und ich werde mal das [definition=12,9]logging[/definition] testen.

    So mit deiner Methode konnte ich endlich mal den Fehler logen.

    So ab 22:00:00 Uhr könnte es interessant werden.

  • So mit deiner Methode konnte ich endlich mal den Fehler logen.

    Das Einzige, was ich sehen kann, ist das sich irgendetwas mit den Puffern verändert (als ob einer nicht mehr verfügbar ist).
    Meine Vermutung liegt leider treiberseitig, was da aber genau passiert ist unmöglich zu reproduzieren, wenn unbekannt ist, was das echo x auslöst / was es bewirkt.

    Generell ist es ja erstmal interessant zu wissen, warum es ohne das echo pink ist, das ist IMO viel interessanter zu wissen als herauszufinden, warum es mit echo 3 irgendwann stottert.

    Ich würde mich hier ans odroid forum halten, da sind die Spezialisten unterwegs.

    Sorry, mehr kann ich da im Moment nicht machen.

  • Es stottert mit beiden Befehlen, sowohl mit echo 1 als auch mit echo 3.
    Und hier habe ich mal den Grund gefunden.

    The HEVC codec uses a compressed frame buffer format by default. Applications that do frame grabbing will need to disable it:
    Code: Select all

    echo 1 | sudo tee /sys/module/amvdec_h265/parameters/double_write_mode

  • https://github.com/Raybuntu/Libre…ag/rb-krypton13

    -Aktuelles Kodi 17.3
    -Aktuelle LE updates
    -Man kann jetzt das root password direkt mit dem Befehl "passwd" ändern. danke an @vpeter
    -Standard Firewall mit iptables die alle Verbindungen die nicht aus dem privaten Subnetz kommt blockiert, damit man nicht teil eines IoT Botnetz wird irgendwann.
    über die Datei /storage/.config/iptables/rules.v4 bzw rules.v6 kann die Firewall angepasst werden. Erlaubte Subnetze: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, fc00::/7

    -GPIOPLUG repariert
    https://github.com/xbmc/xbmc/pull/12074 backport

  • Wow, viele Neuerungen!

    Das mag jetzt doof klingen, aber ich hab besonderes Interesse an einigen der Sicherheits-Punkten, daher Diskussionsbedarf, also sorry schon mal im Voraus ;)

    https://github.com/Raybuntu/Libre…ag/rb-krypton13

    -Aktuelles Kodi 17.3
    -Aktuelle LE updates

    Ich schätze das neueste Sicherheitsproblem bzgl. Samba konnte noch nicht behandelt werden, oder?

    https://github.com/Raybuntu/Libre…ag/rb-krypton13
    -Man kann jetzt das root password direkt mit dem Befehl "passwd" ändern. danke an @vpeter

    Wie habt ihr das hinbekommen? Ich danke das ginge schon allein aus dem Grunde nicht, weil man ein Read-Only-System hat? Wird das auch irgendwann in offizielle LibreELEC Builds einfließen? Super Sache auf jeden Fall!!

    https://github.com/Raybuntu/Libre…ag/rb-krypton13
    -Standard Firewall mit iptables die alle Verbindungen die nicht aus dem privaten Subnetz kommt blockiert, damit man nicht teil eines IoT Botnetz wird irgendwann.
    über die Datei /storage/.config/iptables/rules.v4 bzw rules.v6 kann die Firewall angepasst werden. Erlaubte Subnetze: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, fc00::/7

    Eeeeendlich... habe mir damals im OpenELEC-Forum, dann hier im Kodinerds-Forum, und am Ende im LibreELEC Forum, die Finger wundgetippt und wurde besonders hier als Spinner abgetan. Finde das mit iptables ist ein längst überfälliger Schritt gewesen.


    Hier habe ich allerdings den Diskussionsbedarf: Verstehen tue ich nicht genug von Netzwerken, sehe den Ansatz mit den lokalen Subnets und lokalen IP-Ranges als sinnvoll an und habe ich anfangs in LibreELEC auch so gemacht. Allerdings stellte sich mir dann irgendwann die Frage - besonders, wenn man einen VPN nutzt, und somit leicht zum BotNet-Mitglied wird - ob ein Angreifer nicht einfach auf seiner Seite eines VPN's oder was auch immer auch einfach genau diese Ranges für sich einstellen würde? Also bei einer Punkt-zu-Punkt Verbindung wie einem VPN, ist das ja ein leichtes genau diese 192.168.0.0 auf dem Rechner zu machen. Die Firewall würde denken, dass alles OK ist und das nicht filtern.

    Ich persönlich bin ja erst mit dem Thema in Berührung gekommen, nachdem es dank meines VPN-Einsatzes schon zu spät war. Jedenfalls hat @Tuxino dann irgendwann mal den sehr hilfreichen Post gemacht, wie man VPN-Verbindungen sehr leicht grundsätzlich schonmal absichern kann: tun0 filtern

    Spoiler anzeigen

    iptables -F
    iptables -A INPUT -i tun0 -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A INPUT -i tun0 -j DROP

    escalade vom LibreELEC Team hat das dann durch den sehr nützlichen Zusatz nachgebessert, und das ganze dann für alle virtuellen VPN-Adapter umsetzbar gemacht (quasi wildcard, damit die Regel nicht nur tun0, sondern auch für tun1, tun2 etc.):
    tun+ filtern

    Spoiler anzeigen

    [...] You can use tun+ instead of tun0 if you happen to have more than one VPN at a time as well [...]


    Wodurch werden nun die Filterregeln in /storage/.config/iptables/rules.v4 beim Start geladen? Ich nutzte dafür bislang einen systemd service, aber ich sehe nicht, dass deine build sowas nutzt. Eine Autostart.sh gibt es auch nicht, welche die Regeln laden würde.

    Ich würde jedenfalls irgendwie noch folgende regeln für VPN-Nutzer hinzufügen:

    Code
    *filter
    -A INPUT -i tun+ -m state --state ESTABLISHED,RELATED -j ACCEPT
    -A INPUT -i tun+ -j DROP
    COMMIT

    Damit verhindert man, dass beim Nutzen eines VPN-Providers jemand einfach durchs Wissen deiner IP (wird ja beim Streamen als Zugriffsquelle übermittelt) sich direkt mit deinem LibreELEC verbinden kann (SSH, Samba, Kodi Webserver etc.)

    Gibt es zu diesen iptables Regeln und dem nun änderbaren root-Passwort irgendwo einen Diskussionsthread?

  • Also ich versuche mal auf alles zu Antworten (ist viel). Ich nutze auch einen systemd Service eigentlich sogar 2. Einen für ipv4 und einen für ipv6 iptables. Geladen wird über iptables-restore bzw ip6tables-restore. Dann hab ich noch ein script was iptables-flush heißt (entfernt alle iptables ip6tables regeln)
    Deine tun0 regel ist überflüssig. Ich nutze Default policy DROP, d.h alles was nicht explizit erlaubt ist wird verboten in input und output und forward. Ich nutze sogenannte statefull inspection filter. Das bedeutet Verbindungen werden auf ihren State untersucht. Z.b ob es neue oder bestehende Verbindungen sind. Ich versuche nicht weiter auf die Details einzugehen. Lese dich am besten mal ein.

    Dein Angriff Szenario funktioniert nicht da sich der Angreifer bereits in deinem Lokalen Netz befinden muss. Der Angreifer müsste in der Lage sein deine Routing Tabelle zu manipulieren. Natürlich könnte mal über VPN auch private subnets vergeben aber das ist eigentlich nicht der Fall. Welche IP Adresse bekommst du den von deinem VPN (ersten 3 Zahlen reichen). In dem Fall könnte ich noch nachbessern.

    Das mit dem root passwd hat vpeter gemacht. Ist auch ein paar Monate her und er hat auch einen PR schon lange mit dem fix offen.

  • Hallo Raybuntu,


    nachdem der neueste "Patch" for KODI v17.3 ja nun auch für die WETEK Play 2 veröffentlich worden ist (LibreELEC v.8.0.2), wäre es super, wenn Du darauf basierend ein Build erstellen könntest, bei dem die "amcodec hardware Beschleunigung" funktioniert und die Erstellung von Bookmarks-Bildern ebenfalls, wenn diese genutzt wird (bisher erscheinen neben den Zeitmarken ja leider nur schwarze, leere Bilder ohne Inhalte)?

    Danke im Voraus!


    PS: Bitte nicht wundern, habe dieselbe Frage drüben im WETEK-Forum gerichtet an den User "codesnake" auch auf englisch gestellt :)

  • Das ist doch bei meinem aktuellen und sogar vorletzten build schon da gewesen (amcodec und 17.3). Mit den Bookmarks weiß ich nicht hab ich nicht probiert. Was geht den nicht?
    Edit: Oder verstehe ich dich falsch? Was ist mit "neuster Patch" gemeint?

  • Edit: Oder verstehe ich dich falsch? Was ist mit "neuster Patch" gemeint?

    Hardwarebeschleunigung geht je nach stream nicht mit 17.x, das gilt für android und auch für AML (beides Systeme, die nur einen "Single-Instance-Decoder" erlauben.
    Durchgängig funktioniert das ab aktuellen Master build, oder halt agile.

  • @peak3d und @Raybuntu habe mal ohne Hardwarebeschleunigung getestet um ohne den Echo 1 double write befehl anzuschauen. Dort geht Ambilight aber der Stream/HEVC Film ist nur am Ruckeln. Ohne Hardwarebeschleunigung hat er gegen nen schwächeren Raspberry Pi 3 das nachsehen.

  • Also ich versuche mal auf alles zu Antworten (ist viel). Ich nutze auch einen systemd Service eigentlich sogar 2. Einen für ipv4 und einen für ipv6 iptables. Geladen wird über iptables-restore bzw ip6tables-restore. Dann hab ich noch ein script was iptables-flush heißt (entfernt alle iptables ip6tables regeln)
    Deine tun0 regel ist überflüssig. Ich nutze Default policy DROP, d.h alles was nicht explizit erlaubt ist wird verboten in input und output und forward. Ich nutze sogenannte statefull inspection filter. Das bedeutet Verbindungen werden auf ihren State untersucht. Z.b ob es neue oder bestehende Verbindungen sind. Ich versuche nicht weiter auf die Details einzugehen. Lese dich am besten mal ein.

    Ersteinmal danke! Ich muss mich definitiv mal mehr in iptables einlesen. Mir ist noch nicht ganz klar was in deinem LibreELEC nun für das Laden der Regeln verantwortlich ist, aber ich nehme an, dass es nun ein im system integrierter service ist. Da ich keinen iptables bezogenen service im .config/system.d Ordner sehe. Normalerweise habe ich da meinen eigenen iptables.service drin und kann den bei bedarf mit systemctl stop [start] [restart] iptables.service stoppen usw. Was die Regeln angeht, werde ich mich mal schlau machen ;)

    Dein Angriff Szenario funktioniert nicht da sich der Angreifer bereits in deinem Lokalen Netz befinden muss. Der Angreifer müsste in der Lage sein deine Routing Tabelle zu manipulieren. Natürlich könnte mal über VPN auch private subnets vergeben aber das ist eigentlich nicht der Fall. Welche IP Adresse bekommst du den von deinem VPN (ersten 3 Zahlen reichen). In dem Fall könnte ich noch nachbessern.

    Das mit dem root passwd hat vpeter gemacht. Ist auch ein paar Monate her und er hat auch einen PR schon lange mit dem fix offen.

    Also meinst du, dass folgendes Szenario nicht wirklich möglich wäre?

    Ich mein... so ein Angreifer oder Botnetz legt es ja drauf an Systeme zu knacken und zu infiltrieren, daher gehe ich davon aus, dass das Anlegen einer lokalen IP Adresse wie 192.168.1.55 eine der ersten Sachen wäre, die der Angreifer einstellt.
    Meine Sorge ist halt - wie im Bild ersichtlich - dass jemand zunächst meine vom VPN-Provider zugewiesene VPN-IP "136.0.2.131" erfasst, dann rückwärts über den VPN irgendwie direkt auf den LibreELEC Rechner zugreift und in dem Fall nicht gefiltert wird, weil die VPN-Verbindung irgendwie von seiner eigenen Heimnetzadresse 192.168.1.55 zu meiner 192.168.1.2 erfolgt. In dem Fall würden deine Regeln denken, dass es ok ist, weil ja die 192.168.x.x Adressen ungefiltert sind.

    Allerdings weiß ich halt dabei nicht, wie er so eine punkt-zu-punkt Verbindung von sich aus aufbauen könnte. Könnte mir aber vorstellen, dass es ein Leichtes wäre, wenn derjenige den Server des VPN-Providers dafür misbraucht. Das Problem ist einfach, dass mein kack VPN-Provider (PureVPN) einfach so Verbindungen in meine Richtung durchlässt.

  • Hallo Raybuntu.
    Erstmal vielen Dank für deine tolle Arbeit. Deine Odroid C2 Builds haben mir schon diversen unkomplizierten Sky Abend ermöglicht ;)

    Leider funktioniert bei mir bei den Versionen > Krypton8 die Anbindung an meine mySQLDB (bzw. MariaDB) nicht mehr (im Log steht "can't connect [....] can't create").
    Nach Downgrade auf Krypton8 alles sofort wieder 1A. Gleiche [definition='2','1']advancedsettings[/definition].xml.
    An Kodi selber kann es eigentlich auch nicht liegen. Diverse andere 17.3 Clients (raspberry + PC) funktionieren mit gleicher advancedsetting.xml fehlerfrei.

    Bin ich der Einzige dem es so geht? Jemand eine Idee was da schief läuft.
    Momentan bin ich an Krypton8 gebundne. Ich teste jedesmal die neueste Version und bin wieder ernüchtert :(

  • @schmidex Ich nutzer selbst mariadb und habe keine Probleme. Solche Probleme kommen eigentlich immer wenn das Netzwerk noch nicht läuft und Kodi schon startet. In den LE settings unter Network gibt es eine Option "Wait for Network".
    Die Option funktioniert nicht richtig wenn eine statische IP Adresse eingetragen ist weil das Netzwerk hier immer sofort da ist auch wenn es in Wahrheit noch nicht soweit ist.
    Warum jetzt k8 läuft kann ich dir nicht sagen. Wenn alles nicht hilft mach mal ein [definition=12,0]debug[/definition] [definition='1','0']log[/definition] und schick es mir.

  • @infinity: Ich hab soweit alles abgeschlossen mit iptables und denke das ist jetzt ok so:
    https://github.com/Raybuntu/Libre…c506607afe40996
    Hab da nun noch einiges geändert wie die Regeln geladen werden.
    Erlaubt sind die privaten subnetze nur noch über eth+, en+ und wl+. Damit sollten alle physischen Adapter abgedeckt sein. Was ich jetzt noch gerne hätte wäre eine Einstellung in den LE Settings wo man die Filter allgemein abschalten kann. Wenn man zu viel spielt könnte man sich evtl. aussperren (mir selbst passiert).

Jetzt mitmachen!

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