BPI-R3 : IP Blockliste dynamisch anpassen (ubus access denied)

Hallo,

nachdem ich mich begeistert und erfolgreich mit den neuen Begriffen ( komme aus der Windows Welt ) NAND / NOR / eMMC / luci usw - herumgeschlagen habe, konnte ich mein eigentliches Ziel den R3 als “Hardware”-Firewall zu benutzen angehen.

In LUCI => Firewall habe ich ein IP Set angelegt, und dafür eine Datei hochgeladen.

Diese IP - Adressen Datei soll nun dynamisch erweitert werden, mit Adressen die bei Angriffen aus dem Windows LOG gesammelt werden.

Nach vielem Lesen scheint mir die ubus Schnittstelle am geeignetsten zu sein.

Ich kann erfolgreich mit curl aus php heraus ubus Anfragen stellen. und erhalte auch sinnvolle results.

Wenn ich aber ubus => file => read benutze und versuche die in luci hochgeladene Datei zu lesen, erhalte ich ein Relult mit int(6) => “access dinied”

Ich suche nun eine Möglichkeit meine lese und schreib rechte auf diese Datei zu erweitern.

Ich denke das dass ein LINUX Thema ist, aber auf sudo z.B. reagiert OpenWtr nicht.

Kann jeman helfen?

Gruß Steffen

bitte in englisch posten…sudo gibts i openwrt nicht, da bist beim normalen login (serielle Konsole) aber schon root (weis nicht, ob man das ändern kann)

welches openwrt nutzt du da? das von BPI oder von openwrt.org (snapshot)

Hallo und danke für die Rückmeldung,

von OpenWrt.org

Ich dachte es ist ein Deutsches Forum.

https://oldwiki.archive.openwrt.org/doc/techref/ubus

In diesem Artikel ist etwas von ACL bescvhrieben, /usr/share/rpcd/acl.d/*.json soll beasrbeitet werden, aber wie?

nein, die anderen Postings sind auch englisch :stuck_out_tongue:

mit openwrt selbst kann ich dir nicht wirklich helfen, da ich debian/ubuntu nutze mit gepatchtem mainline-kernel…

in dem Artikel steht, dass ich eine Datei:

`/usr/share/rpcd/acl.d/superuser.json`

Inhalt:
----------------------------------------------------------------------
{
        "superuser": {
                "description": "Super user access role",
                "read": {
                        "ubus": {
                                "*": [ "*" ]
                        },
                        "uci": [ "*" ]
                },
                "write": {
                        "ubus": {
                                "*": [ "*" ]
                        },
                        "uci": [ "*" ]
                }
        }
}
----------------------------------------------------------------------
speichern soll.

Wie macht man das?

entweder kommst direkt auf das Dateisystem der SD-Karte, was aber vermutlich mit windows und dem von openwrt verwendeten overlay/squashfs schwierig sein dürfte. Oder du änderst/erzeugst die Datei im laufenden system…also entweder per ssh verbinden oder via debug-uart…denke über die weboberfläche wird das nix.

bist du verbunden kommt es drauf an, welche editoren vorhanden sind…man kann natürlich auch sowas machen:

cat << EOF >  /usr/share/rpcd/acl.d/superuser.json
{
        "lesssuperuser": {
                "description": "not quite as super user",
                "read": {
                        "ubus": {
                                "file": [ "*" ],
                                "log": [ "*" ],
                                "service": [ "*" ],
                        },
                },
                "write": {
                        "ubus": {
                                "file": [ "*" ],
                                "log": [ "*" ],
                                "service": [ "*" ],
                        },
                }
        }
}
EOF

aber mit einem editor wie nano tut man sich da etwas leichter

ok super danke,

ich bin über Ubuntu console microcom mit dem R3 verbunden.

Das System läuft auf dem eMMC

thank U frank-w your help hepled. I can now read the file, tomorrow I try to write.