Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Tester für WireGuard Adapter gesucht

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.4k

Tester für WireGuard Adapter gesucht

Geplant Angeheftet Gesperrt Verschoben Tester
118 Beiträge 12 Kommentatoren 16.1k Aufrufe 17 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • B bommel_030

    @grizzelbee
    Hab Mal dein neuestes Update installiert. Habe in einer Instanz zwei Hosts mit unterschiedlichen Abrufintervallen hinterlegt. Die Anzahl der connected Peers wird bei beiden mit 3 angegeben, obwohl beim ersten Peer einer und beim zweiten Peer zwei verbunden sind. In Summe ist die Anzahl richtig, halt nur "falsch" aufgeteilt.
    Weiterhin sind beide definitiv online, es wird aber immer nur der als online=true angezeigt der als letztes gepollt wurde. Es wechseln also im Abrufintervall beide von offline zu online und der andere von online zu offline.
    Oder sollten zwei Hosts besser auf zwei Instanzen aufgeteilt werden?

    GrizzelbeeG Offline
    GrizzelbeeG Offline
    Grizzelbee
    Developer
    schrieb am zuletzt editiert von
    #67

    @bommel_030 sagte in Tester für WireGuard Adapter gesucht:

    Hi bommel,
    vielen Dank für dein Feedback. Da ich selber nur einen WireGuard host habe, sind mir derartige Spielchen nicht aufgefallen - das muss ich mir dann noch einmal angucken. Das sollte nicht so sein. Die Idee war, das ein interface, das aktiv ist auch als online angezeigt wird.
    Mit den connectedPeers spiele ich gerade noch herum - da ist ohnehin noch ein bug drin: Peers, die offline gehen werden nicht von der Summe abgezogen - da hatte ich etwas kurz gedacht.

    In Summe ist die Anzahl richtig, halt nur "falsch" aufgeteilt.

    Dann habe ich schon eine Idee woran das liegt!

    Oder sollten zwei Hosts besser auf zwei Instanzen aufgeteilt werden?

    Um Gottes Willen - Nein! Die eine Instanz soll schon beliebig viele Hosts überwachen können.

    Stephan SchleichS B 2 Antworten Letzte Antwort
    1
    • GrizzelbeeG Grizzelbee

      @bommel_030 sagte in Tester für WireGuard Adapter gesucht:

      Hi bommel,
      vielen Dank für dein Feedback. Da ich selber nur einen WireGuard host habe, sind mir derartige Spielchen nicht aufgefallen - das muss ich mir dann noch einmal angucken. Das sollte nicht so sein. Die Idee war, das ein interface, das aktiv ist auch als online angezeigt wird.
      Mit den connectedPeers spiele ich gerade noch herum - da ist ohnehin noch ein bug drin: Peers, die offline gehen werden nicht von der Summe abgezogen - da hatte ich etwas kurz gedacht.

      In Summe ist die Anzahl richtig, halt nur "falsch" aufgeteilt.

      Dann habe ich schon eine Idee woran das liegt!

      Oder sollten zwei Hosts besser auf zwei Instanzen aufgeteilt werden?

      Um Gottes Willen - Nein! Die eine Instanz soll schon beliebig viele Hosts überwachen können.

      Stephan SchleichS Offline
      Stephan SchleichS Offline
      Stephan Schleich
      schrieb am zuletzt editiert von
      #68

      @grizzelbee Hat sich in den letzten Versionen was geändert?
      Kann mich nicht mehr mit dem Adapter connecten via Putty gehts aber v1.3.1

      Connection to host [WireGuard] can't be established. Please check and fix. =>[Error: All configured authentication methods failed]
      
      GrizzelbeeG 1 Antwort Letzte Antwort
      0
      • Stephan SchleichS Stephan Schleich

        @grizzelbee Hat sich in den letzten Versionen was geändert?
        Kann mich nicht mehr mit dem Adapter connecten via Putty gehts aber v1.3.1

        Connection to host [WireGuard] can't be established. Please check and fix. =>[Error: All configured authentication methods failed]
        
        GrizzelbeeG Offline
        GrizzelbeeG Offline
        Grizzelbee
        Developer
        schrieb am zuletzt editiert von
        #69

        @stephan-schleich

        Hat sich in den letzten Versionen was geändert?

        Sei mir nicht böse ... aber es fällt mir echt schwer mein Sarkasmus-Gen zu zügeln. ;)

        Also: Ja, klar hat sich etwas geändert. Was genau kann ich natürlich nicht sagen, weil ich nicht weiß von welcher Version auf welche Du aktualisiert hast. Ich protokolliere aber meine Änderungen recht ordentlich und gewissenhaft im Changelog auf github (https://github.com/Grizzelbee/ioBroker.wireguard). Schau da doch bitte mal vorbei.

        Ich schieße mal wild ins Blaue und sage: Gib bitte einfach das Passwort des Monitoring-Users mal neu ein. Weitere Fragen beantworte ich gerne, wenn ich mehr Informationen bekomme.

        Stephan SchleichS 1 Antwort Letzte Antwort
        0
        • GrizzelbeeG Grizzelbee

          @stephan-schleich

          Hat sich in den letzten Versionen was geändert?

          Sei mir nicht böse ... aber es fällt mir echt schwer mein Sarkasmus-Gen zu zügeln. ;)

          Also: Ja, klar hat sich etwas geändert. Was genau kann ich natürlich nicht sagen, weil ich nicht weiß von welcher Version auf welche Du aktualisiert hast. Ich protokolliere aber meine Änderungen recht ordentlich und gewissenhaft im Changelog auf github (https://github.com/Grizzelbee/ioBroker.wireguard). Schau da doch bitte mal vorbei.

          Ich schieße mal wild ins Blaue und sage: Gib bitte einfach das Passwort des Monitoring-Users mal neu ein. Weitere Fragen beantworte ich gerne, wenn ich mehr Informationen bekomme.

          Stephan SchleichS Offline
          Stephan SchleichS Offline
          Stephan Schleich
          schrieb am zuletzt editiert von Stephan Schleich
          #70

          @grizzelbee Alles gut :)
          Ich vermute seit der v1.4.0 hab ich das Problem
          Komisch ist das der login via Putty klappt aber via Adapter nicht. im Debug steht auch nicht dazu

          GrizzelbeeG 1 Antwort Letzte Antwort
          0
          • GrizzelbeeG Grizzelbee
            Aktuelle Test Version 1.1.0
            Veröffentlichungsdatum 07.03.2022
            Github Link https://github.com/Grizzelbee/ioBroker.wireguard

            Hier Adapter Beschreibung, Changelog etc.

            Hallo Zusammen,

            ich habe mir mal den Spass gemacht und einen WireGuard Adapter geschrieben mit dem man seine WireGuard Hosts und Peers monitoren kann.

            Vielleicht kann es ja jemand gebrauchen und mag testen:

            Sicherheitshinweis - Wichtige Änderung in 1.1.0:
            Nach aktuellem Kenntnisstand empfehle ich genau diese Konfig!
            Ab v1.1.0 kann der notwendige monitoring Befehl auch über sudo abgesetzt werden, wenn vorher eine entsprechende sudoers Regel erstellt wurde. Das Gute daran ist, dass ausschließlich genau dieser Befehl (mit genau diesen Parametern) ohne passwort abgesetzt werden kann - NICHTS anderes. Mehr oder weniger oder andere Parameter führen sofort zur Abfrage des Passwortes. Ausführlich ist das in Englisch in der Readme dokumentiert. Zur Bequemlichkeit hier an dieser Stelle auch noch einmal in Deutsch:
            Linux kann über sogenannte sudoers Regeln sehr genau steuern welcher User was alles darf. Wie das ganz genau geht hängt leider von der jeweiligen Linux Distro ab. Deshalb bitte im Zweifel und bei Unklarheiten google <name der distro> sudoers bemühen. Bei den meisten Distros läuft es aber auf folgendes heraus:

            1. visudo als adminstrativer User zum editieren der sudoers Datei aufrufen. Es wird dringend davon abgeraten sudoers auf einem anderen Wege zu editieren.
            2. Am Ende der Datei folgende Zeile hinzufügen: <name-des-monitoring-users> ALL=NOPASSWD:/usr/bin/wg show all dump (<name-des-monitoring-users> muss natürlich durch euren User ersetzt werden unnd /usr/binggf durch einen anderen Pfad falls wg irgendwo anders bei euch liegt. )
            3. Datei speichern

            Nach Eingabe dieser Regel kann in der Konfig das Häkchen bei sudogesetzt werden.

            Wichtige Änderung in 0.9.5:
            Ich nutze das wg-json script nicht mehr. Dadurch funktioniert der Adapter jetzt einfach so ohne weitere Handgriffe auf dem Server - aber es haben sich auch ein paar Datenpunkte geändert. Ggf. also bitte den Tree mal löschen und neu anlegen lassen. Latesthandshake sollte ein Datum sein! Und so ganz nebenbei werden jetzt auch WireGuard-Installationen auf Windows unterstützt.

            v1.1.0 (2022-03-06)

            • (grizzelbee) New: Added support for sudo when using a valid sudoers rule - refer to security hints in readme for more information
            • (grizzelbee) Upd: Documentation update regarding security
            • (grizzelbee) Upd: dependency update

            v1.0.0 (2022-02-25)

            • (grizzelbee) New: Added individual online state indicator for each interface
            • (grizzelbee) fix: Improved some data roles
            • (grizzelbee) fix: Improved documentation

            v0.9.5 (2022-02-22)

            • (grizzelbee) New: dropped use of wg-json script - not needed anymore
            • (grizzelbee) New: making internal use of wg show all dump command and self parsing the result
            • (grizzelbee) New: Added windows support by using the wg show all command
            • (grizzelbee) Upd: moved dependency admin to globalDependency as requested during adapter review

            v0.9.2 (2022-02-20)

            • (grizzelbee) Fix: removed unnecessary secret from index_m.html file
            • (grizzelbee) Fix: Using info.connection of adapter to indicate that at least one interface is online.
            • (grizzelbee) Fix: Updated adapter icon

            v0.9.1 (2022-02-19)

            • (grizzelbee) New: Improved optical quality of admin page - no technical improvements

            v0.9.0 (2022-02-18)

            • (grizzelbee) New: Improved documentation
            • (grizzelbee) New: Username and password for WireGuard hosts are getting encrypted now

            v0.8.0 (2022-02-17)

            • (grizzelbee) New: admin extended with second page
            • (grizzelbee) New: data file is getting parsed
            • (grizzelbee) New: data tree is getting populated
            • (grizzelbee) New: entire basic functionality is implemented
            • (grizzelbee) New: added plugin sentry
            David G.D Online
            David G.D Online
            David G.
            schrieb am zuletzt editiert von
            #71

            @grizzelbee

            Hallo,

            ich habe eine Frage zur Konfiguration.

            Wenn ich unter PUBLIC-KEY-ÜBERSETZUNGEN etwas hinzufüge bleibt der Adapter gelb.

            Im Log finde ich aber nicht wirklich was.

            Selbiges wenn ich WIREGUARD CONFIG FILES ausfülle.

            Trotz gelben Adapter werden laut log Daten abgerufen, was allerdings nicht stimmt.

            wireguard.0
            2022-11-01 13:35:25.843	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
            
            wireguard.0
            2022-11-01 13:35:25.843	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
            
            wireguard.0
            2022-11-01 13:34:55.843	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
            
            wireguard.0
            2022-11-01 13:34:55.843	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
            
            wireguard.0
            2022-11-01 13:34:25.844	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
            
            wireguard.0
            2022-11-01 13:34:25.843	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
            
            wireguard.0
            2022-11-01 13:33:55.844	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
            
            wireguard.0
            2022-11-01 13:33:55.843	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
            
            wireguard.0
            2022-11-01 13:33:25.843	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
            
            wireguard.0
            2022-11-01 13:33:25.842	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
            

            Zeigt eure Lovelace-Visualisierung klick
            (Auch ideal um sich Anregungen zu holen)

            Meine Tabellen für eure Visualisierung klick

            GrizzelbeeG 1 Antwort Letzte Antwort
            0
            • David G.D David G.

              @grizzelbee

              Hallo,

              ich habe eine Frage zur Konfiguration.

              Wenn ich unter PUBLIC-KEY-ÜBERSETZUNGEN etwas hinzufüge bleibt der Adapter gelb.

              Im Log finde ich aber nicht wirklich was.

              Selbiges wenn ich WIREGUARD CONFIG FILES ausfülle.

              Trotz gelben Adapter werden laut log Daten abgerufen, was allerdings nicht stimmt.

              wireguard.0
              2022-11-01 13:35:25.843	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
              
              wireguard.0
              2022-11-01 13:35:25.843	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
              
              wireguard.0
              2022-11-01 13:34:55.843	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
              
              wireguard.0
              2022-11-01 13:34:55.843	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
              
              wireguard.0
              2022-11-01 13:34:25.844	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
              
              wireguard.0
              2022-11-01 13:34:25.843	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
              
              wireguard.0
              2022-11-01 13:33:55.844	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
              
              wireguard.0
              2022-11-01 13:33:55.843	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
              
              wireguard.0
              2022-11-01 13:33:25.843	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
              
              wireguard.0
              2022-11-01 13:33:25.842	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
              
              GrizzelbeeG Offline
              GrizzelbeeG Offline
              Grizzelbee
              Developer
              schrieb am zuletzt editiert von Grizzelbee
              #72

              @david-g sagte in Tester für WireGuard Adapter gesucht:

              ich habe eine Frage zur Konfiguration.
              Wenn ich unter PUBLIC-KEY-ÜBERSETZUNGEN etwas hinzufüge bleibt der Adapter gelb.

              Hallo David,

              also ... die Sache ist nicht ganz trivial ...
              Um den Adapter zum Laufen zu bringen, brauchst Du nur die Basis-Konfig. Der Rest ist optional und nur für Komfortfunktionen interessant. Aber dröseln wir das mal auf:
              Wenn die Basis Konfig okay ist (und danach sieht es lt. Log bei dir aus) wird der Adapter frühestens nachdem er den ersten Poll-Intervall geschafft hat (default 2 Minuten) grün - vorher bleibt der gelb. Der wird aber auch nur dann grün, wenn er überhaupt mindestens ein aktives WireGuard Interface findet. Ohne das bleibt er auch gelb. Also gibt es grundsätzlich schon mal zwei gewollte Situationen in denen der Adapter gelb sein darf:

              1. Noch kein Pollintervall abgeschlossen
              2. Kein aktives WireGuard interface gefunden.

              Fall 1 scheint bei Dir kein Ding zu sein - ich sehe mehrere Poll-Versuche.

              • Was ist mit Fall 2?
              • Was passiert, wenn Du dich mit dem Monitoring-User interaktiv anmeldest und das Kommando sudo wg show all dump absetzt?
              • Hast Du die sudoers Datei wie in der readme beschrieben angepasst?

              Ich kenne allerdings auch einen User, der den Adapter tatsächlich nicht ans Laufen bekommen hat. Da bekam der Adapter von dem LXC-Container in dem WireGuard läuft keine Daten zurück geliefert. Das hat wohl etwas mit Linux-pseudo-terminals zu tun. Das Thema haben wir leider nicht geknackt. Bei anderen Usern mit LXC-Containern läuft er aber durchaus. Das ist also kein generelles LXC Thema.

              Public-Key-Übersetzungen:

              Die dienen nur dazu einen verständlichen Namen an die Peers zu bekommen - weil die public Keys etwas unhandlich und schwer zu merken sind:
              7385c99e-efd7-40b7-a856-b3acfb75a24f-grafik.png

              Ohne die Übersetzung siehst Du halt nur die public Keys - das ist alles. Mehr passiert nicht. Die Funktion als solche wird nicht beeinträchtigt.

              Wireguard Konfig Files (eins pro WG-Interface)

              Die wiederum werden nur gebraucht, wenn man den Restore all suspended peers Button nutzen möchte - man also mehrere Peers suspendiert hat und alle gleichzeitig wieder aktivieren will.

              David G.D 1 Antwort Letzte Antwort
              1
              • Stephan SchleichS Stephan Schleich

                @grizzelbee Alles gut :)
                Ich vermute seit der v1.4.0 hab ich das Problem
                Komisch ist das der login via Putty klappt aber via Adapter nicht. im Debug steht auch nicht dazu

                GrizzelbeeG Offline
                GrizzelbeeG Offline
                Grizzelbee
                Developer
                schrieb am zuletzt editiert von
                #73

                @stephan-schleich

                Ich habe das Admin-interface in der 1.4.0 auf jsonConfig umgestellt - das erzwingt leider das das Passwort und der Benutzername neu eingeben werden müssen - da sollte es eigentlich auch einen Hinweisdialog zu geben.

                Ich erneuere also meine Bitte:
                Gib mal im Adamin der Monitoring-User und dessen Passwort neu ein - ich bin ganz zuversichtlich das es dann wieder läuft.

                1 Antwort Letzte Antwort
                1
                • GrizzelbeeG Grizzelbee

                  @david-g sagte in Tester für WireGuard Adapter gesucht:

                  ich habe eine Frage zur Konfiguration.
                  Wenn ich unter PUBLIC-KEY-ÜBERSETZUNGEN etwas hinzufüge bleibt der Adapter gelb.

                  Hallo David,

                  also ... die Sache ist nicht ganz trivial ...
                  Um den Adapter zum Laufen zu bringen, brauchst Du nur die Basis-Konfig. Der Rest ist optional und nur für Komfortfunktionen interessant. Aber dröseln wir das mal auf:
                  Wenn die Basis Konfig okay ist (und danach sieht es lt. Log bei dir aus) wird der Adapter frühestens nachdem er den ersten Poll-Intervall geschafft hat (default 2 Minuten) grün - vorher bleibt der gelb. Der wird aber auch nur dann grün, wenn er überhaupt mindestens ein aktives WireGuard Interface findet. Ohne das bleibt er auch gelb. Also gibt es grundsätzlich schon mal zwei gewollte Situationen in denen der Adapter gelb sein darf:

                  1. Noch kein Pollintervall abgeschlossen
                  2. Kein aktives WireGuard interface gefunden.

                  Fall 1 scheint bei Dir kein Ding zu sein - ich sehe mehrere Poll-Versuche.

                  • Was ist mit Fall 2?
                  • Was passiert, wenn Du dich mit dem Monitoring-User interaktiv anmeldest und das Kommando sudo wg show all dump absetzt?
                  • Hast Du die sudoers Datei wie in der readme beschrieben angepasst?

                  Ich kenne allerdings auch einen User, der den Adapter tatsächlich nicht ans Laufen bekommen hat. Da bekam der Adapter von dem LXC-Container in dem WireGuard läuft keine Daten zurück geliefert. Das hat wohl etwas mit Linux-pseudo-terminals zu tun. Das Thema haben wir leider nicht geknackt. Bei anderen Usern mit LXC-Containern läuft er aber durchaus. Das ist also kein generelles LXC Thema.

                  Public-Key-Übersetzungen:

                  Die dienen nur dazu einen verständlichen Namen an die Peers zu bekommen - weil die public Keys etwas unhandlich und schwer zu merken sind:
                  7385c99e-efd7-40b7-a856-b3acfb75a24f-grafik.png

                  Ohne die Übersetzung siehst Du halt nur die public Keys - das ist alles. Mehr passiert nicht. Die Funktion als solche wird nicht beeinträchtigt.

                  Wireguard Konfig Files (eins pro WG-Interface)

                  Die wiederum werden nur gebraucht, wenn man den Restore all suspended peers Button nutzen möchte - man also mehrere Peers suspendiert hat und alle gleichzeitig wieder aktivieren will.

                  David G.D Online
                  David G.D Online
                  David G.
                  schrieb am zuletzt editiert von David G.
                  #74

                  @grizzelbee

                  Danke für die ausführliche Antwort.

                  Gehe jetzt mal alles genau durch.

                  Wenn ich im Adapter nur das einstelle:
                  Screenshot_20221102_100512.jpg
                  läuft alles und der Adapter wird grün.

                  Wenn ich die config files ausfülle bleibt er gelb.
                  Screenshot_20221102-100359_Chrome~2.jpg

                  Wenn ich mit den Namen übersetzen lassen möchte kopiere ich mir den öffentlichen key aus dem Datenpunkt des clients.
                  Screenshot_20221102_100937.jpg
                  Sobald ich diesen eingebe bleibt der Adapter gelb.

                  root@pi:/etc/wireguard# dir
                  configs  keys  wg0.conf
                  

                  (bin nur root um die Dateien zu sehen).

                  Das kommt, wenn ich den dump in der Konsole Abfrage:

                   pi@pi:~ $ sudo wg show all dump
                  /etc/sudoers:28:4: syntax error
                  <pi> ALL=NOPASSWD:/usr/bin/wg show all dump
                     ^
                  /etc/sudoers:29:10: syntax error
                  <iobroker> ALL=NOPASSWD:/usr/bin/wg show all dump
                           ^
                  wg0     xxxxxxxxxx       51820   off
                  wg0     xxxxxxxxxx       84.171.74.123:36311     10.189.255.2/32    1667380952      7527016 106836416       off
                  wg0     xxxxxxxx       87.177.22.167:47148     10.189.255.3/32    1667330049      1013028 7267524 off
                  pi@pi:~ $
                  

                  Das ist meine sudoers:

                  #
                  # This file MUST be edited with the 'visudo' command as root.
                    GNU nano 5.4              /etc/sudoers.tmp                       #
                  # Please consider adding local content in /etc/sudoers.d/ instead ># directly modifying this file.
                  #
                  # See the man page for details on how to write a sudoers file.
                  #
                  Defaults        env_reset
                  Defaults        mail_badpass
                  Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/s>
                  # Host alias specification
                  
                  # User alias specification
                  
                  # Cmnd alias specification
                  
                  # User privilege specification
                  root    ALL=(ALL:ALL) ALL
                  
                  # Allow members of group sudo to execute any command
                  %sudo   ALL=(ALL:ALL) ALL
                  
                  # See sudoers(5) for more information on "@include" directives:
                  
                  @includedir /etc/sudoers.d
                  <pi> ALL=NOPASSWD:/usr/bin/wg show all dump
                  <iobroker> ALL=NOPASSWD:/usr/bin/wg show all dump
                  
                  
                  ^G Help      ^O Write Out ^W Where Is  ^K Cut       ^T Execute
                  ^X Exit      ^R Read File ^\ Replace   ^U Paste     ^J Justify
                  

                  Edit:
                  Seitdem ich die sudoers angepasst habe, bleibt der Adapter immer gelb.

                  EDIT 2:
                  Im dump hab ich einen Fehler in der sudoers gesehen. Den hab ich behoben.

                  Zeigt eure Lovelace-Visualisierung klick
                  (Auch ideal um sich Anregungen zu holen)

                  Meine Tabellen für eure Visualisierung klick

                  GrizzelbeeG 1 Antwort Letzte Antwort
                  0
                  • David G.D David G.

                    @grizzelbee

                    Danke für die ausführliche Antwort.

                    Gehe jetzt mal alles genau durch.

                    Wenn ich im Adapter nur das einstelle:
                    Screenshot_20221102_100512.jpg
                    läuft alles und der Adapter wird grün.

                    Wenn ich die config files ausfülle bleibt er gelb.
                    Screenshot_20221102-100359_Chrome~2.jpg

                    Wenn ich mit den Namen übersetzen lassen möchte kopiere ich mir den öffentlichen key aus dem Datenpunkt des clients.
                    Screenshot_20221102_100937.jpg
                    Sobald ich diesen eingebe bleibt der Adapter gelb.

                    root@pi:/etc/wireguard# dir
                    configs  keys  wg0.conf
                    

                    (bin nur root um die Dateien zu sehen).

                    Das kommt, wenn ich den dump in der Konsole Abfrage:

                     pi@pi:~ $ sudo wg show all dump
                    /etc/sudoers:28:4: syntax error
                    <pi> ALL=NOPASSWD:/usr/bin/wg show all dump
                       ^
                    /etc/sudoers:29:10: syntax error
                    <iobroker> ALL=NOPASSWD:/usr/bin/wg show all dump
                             ^
                    wg0     xxxxxxxxxx       51820   off
                    wg0     xxxxxxxxxx       84.171.74.123:36311     10.189.255.2/32    1667380952      7527016 106836416       off
                    wg0     xxxxxxxx       87.177.22.167:47148     10.189.255.3/32    1667330049      1013028 7267524 off
                    pi@pi:~ $
                    

                    Das ist meine sudoers:

                    #
                    # This file MUST be edited with the 'visudo' command as root.
                      GNU nano 5.4              /etc/sudoers.tmp                       #
                    # Please consider adding local content in /etc/sudoers.d/ instead ># directly modifying this file.
                    #
                    # See the man page for details on how to write a sudoers file.
                    #
                    Defaults        env_reset
                    Defaults        mail_badpass
                    Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/s>
                    # Host alias specification
                    
                    # User alias specification
                    
                    # Cmnd alias specification
                    
                    # User privilege specification
                    root    ALL=(ALL:ALL) ALL
                    
                    # Allow members of group sudo to execute any command
                    %sudo   ALL=(ALL:ALL) ALL
                    
                    # See sudoers(5) for more information on "@include" directives:
                    
                    @includedir /etc/sudoers.d
                    <pi> ALL=NOPASSWD:/usr/bin/wg show all dump
                    <iobroker> ALL=NOPASSWD:/usr/bin/wg show all dump
                    
                    
                    ^G Help      ^O Write Out ^W Where Is  ^K Cut       ^T Execute
                    ^X Exit      ^R Read File ^\ Replace   ^U Paste     ^J Justify
                    

                    Edit:
                    Seitdem ich die sudoers angepasst habe, bleibt der Adapter immer gelb.

                    EDIT 2:
                    Im dump hab ich einen Fehler in der sudoers gesehen. Den hab ich behoben.

                    GrizzelbeeG Offline
                    GrizzelbeeG Offline
                    Grizzelbee
                    Developer
                    schrieb am zuletzt editiert von Grizzelbee
                    #75

                    @david-g

                    Okay, wir kommen der Sache näher.
                    Dein erstes (und vielleicht einziges) Problem ist die sudoers Datei (aber greifen wir den Dingen nicht vor):
                    c8c957fa-b121-4ae7-a193-e70fba6ea709-grafik.png

                    Zeile 26 und 27:
                    Der Benutzername darf nicht in <>. Da kommt nur der "nackte" Name hin. So wie root in Zeile 18.

                    Also:

                    pi       ALL=NOPASSWD:/usr/bin/wg show all dump
                    iobroker ALL=NOPASSWD:/usr/bin/wg show all dump
                    

                    Das erlaubt den Usern pi und iobroker das Kommando abzusetzen ohne ein Passwort eingeben zu müssen.
                    Wenn Du einen der User in der Konfig des Adapters nutzt ist das okay so; ansonsten müsste da der für das Monitoring genutzte User rein.

                    Hier beschwert sich Linux auch über die falschen Zeichen in der sudoers Datei:

                     pi@pi:~ $ sudo wg show all dump
                    
                    /etc/sudoers:28:4: syntax error
                    
                    <pi> ALL=NOPASSWD:/usr/bin/wg show all dump
                    
                       ^
                    
                    /etc/sudoers:29:10: syntax error
                    
                    <iobroker> ALL=NOPASSWD:/usr/bin/wg show all dump
                    

                    EDIT 2:
                    Im dump hab ich einen Fehler in der sudoers gesehen. Den hab ich behoben.

                    Und? Läuft es jetzt? Oder was hat sich geändert (oder eben auch nicht)?

                    David G.D 1 Antwort Letzte Antwort
                    0
                    • GrizzelbeeG Grizzelbee

                      @david-g

                      Okay, wir kommen der Sache näher.
                      Dein erstes (und vielleicht einziges) Problem ist die sudoers Datei (aber greifen wir den Dingen nicht vor):
                      c8c957fa-b121-4ae7-a193-e70fba6ea709-grafik.png

                      Zeile 26 und 27:
                      Der Benutzername darf nicht in <>. Da kommt nur der "nackte" Name hin. So wie root in Zeile 18.

                      Also:

                      pi       ALL=NOPASSWD:/usr/bin/wg show all dump
                      iobroker ALL=NOPASSWD:/usr/bin/wg show all dump
                      

                      Das erlaubt den Usern pi und iobroker das Kommando abzusetzen ohne ein Passwort eingeben zu müssen.
                      Wenn Du einen der User in der Konfig des Adapters nutzt ist das okay so; ansonsten müsste da der für das Monitoring genutzte User rein.

                      Hier beschwert sich Linux auch über die falschen Zeichen in der sudoers Datei:

                       pi@pi:~ $ sudo wg show all dump
                      
                      /etc/sudoers:28:4: syntax error
                      
                      <pi> ALL=NOPASSWD:/usr/bin/wg show all dump
                      
                         ^
                      
                      /etc/sudoers:29:10: syntax error
                      
                      <iobroker> ALL=NOPASSWD:/usr/bin/wg show all dump
                      

                      EDIT 2:
                      Im dump hab ich einen Fehler in der sudoers gesehen. Den hab ich behoben.

                      Und? Läuft es jetzt? Oder was hat sich geändert (oder eben auch nicht)?

                      David G.D Online
                      David G.D Online
                      David G.
                      schrieb am zuletzt editiert von David G.
                      #76

                      @grizzelbee

                      Hallo,

                      habe die Zeilen in der sudoers nochmal komplett gelöscht und das System neugestartet.

                      Im Adapter habe ich nur die erste Seite ausgefüllt wie bisher.

                      Aber der Adapter bleibt nochoch gelb.

                      Scheint sich aber zu verbinden.

                      wireguard.0
                      2022-11-02 11:25:58.104	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
                      
                      wireguard.0
                      2022-11-02 11:25:58.103	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
                      
                      wireguard.0
                      2022-11-02 11:24:58.109	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
                      
                      wireguard.0
                      2022-11-02 11:24:58.104	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
                      
                      wireguard.0
                      2022-11-02 11:23:58.103	info	Started 60 seconds monitoring interval for host [iobroker]
                      
                      wireguard.0
                      2022-11-02 11:23:58.095	info	There is 1 wireguard host to monitor.
                      

                      Edit
                      Hab im Adapter jetzt das sudo deaktiviert. Jetzt ist er grün.
                      Komisch, hatte ich vorher auch an, ohne sudoers.

                      Jetzt schalte ich nochmal nach und nach alles zu.

                      Zeigt eure Lovelace-Visualisierung klick
                      (Auch ideal um sich Anregungen zu holen)

                      Meine Tabellen für eure Visualisierung klick

                      GrizzelbeeG 1 Antwort Letzte Antwort
                      0
                      • David G.D David G.

                        @grizzelbee

                        Hallo,

                        habe die Zeilen in der sudoers nochmal komplett gelöscht und das System neugestartet.

                        Im Adapter habe ich nur die erste Seite ausgefüllt wie bisher.

                        Aber der Adapter bleibt nochoch gelb.

                        Scheint sich aber zu verbinden.

                        wireguard.0
                        2022-11-02 11:25:58.104	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
                        
                        wireguard.0
                        2022-11-02 11:25:58.103	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
                        
                        wireguard.0
                        2022-11-02 11:24:58.109	debug	Executing command [sudo wg show all dump] on host 192.168.99.33.
                        
                        wireguard.0
                        2022-11-02 11:24:58.104	debug	Retrieving WireGuard status of host [iobroker] on address [192.168.99.33]
                        
                        wireguard.0
                        2022-11-02 11:23:58.103	info	Started 60 seconds monitoring interval for host [iobroker]
                        
                        wireguard.0
                        2022-11-02 11:23:58.095	info	There is 1 wireguard host to monitor.
                        

                        Edit
                        Hab im Adapter jetzt das sudo deaktiviert. Jetzt ist er grün.
                        Komisch, hatte ich vorher auch an, ohne sudoers.

                        Jetzt schalte ich nochmal nach und nach alles zu.

                        GrizzelbeeG Offline
                        GrizzelbeeG Offline
                        Grizzelbee
                        Developer
                        schrieb am zuletzt editiert von
                        #77

                        @david-g sagte in Tester für WireGuard Adapter gesucht:

                        Komisch, hatte ich vorher auch an, ohne sudoers.

                        Hmmm. :thinking_face: Kann eigentlich nicht.
                        Die Nutzung von sudo erfordert entsprechende Einträge in der sudoers Datei.
                        Will sagen: Wenn dein Monitoring User (ohne root Rechte!!) fischkopp heißt, dann brauchst du auch eine sudoers Zeile:

                        fischkopp ALL=NOPASSWD:/usr/bin/wg show all dump
                        

                        Wenn dein Monitoring user eh root Rechte hat, brauchst Du kein sudo. Bei dem ganzen Spiel geht es ja nur darum, dass der Adapter kein passwort senden kann, wenn es abgefragt wird; deshalb der Trick über sudoers und NOPASSWD.

                        David G.D 1 Antwort Letzte Antwort
                        0
                        • GrizzelbeeG Grizzelbee

                          @david-g sagte in Tester für WireGuard Adapter gesucht:

                          Komisch, hatte ich vorher auch an, ohne sudoers.

                          Hmmm. :thinking_face: Kann eigentlich nicht.
                          Die Nutzung von sudo erfordert entsprechende Einträge in der sudoers Datei.
                          Will sagen: Wenn dein Monitoring User (ohne root Rechte!!) fischkopp heißt, dann brauchst du auch eine sudoers Zeile:

                          fischkopp ALL=NOPASSWD:/usr/bin/wg show all dump
                          

                          Wenn dein Monitoring user eh root Rechte hat, brauchst Du kein sudo. Bei dem ganzen Spiel geht es ja nur darum, dass der Adapter kein passwort senden kann, wenn es abgefragt wird; deshalb der Trick über sudoers und NOPASSWD.

                          David G.D Online
                          David G.D Online
                          David G.
                          schrieb am zuletzt editiert von
                          #78

                          @grizzelbee

                          Irgendwie stimmt bei mir was nicht.

                          Wollte nochmal ganz von vorne anfangen.
                          Hab sogar den Adapter komplett gelöscht und neu eingerichtet.

                          Jetzt macht er garnichts mehr.
                          Vermutlich, weil er den Nutuernamen immer irgendwie überschreibt.
                          Müsste eigentlich pi sein.

                          Screenshot_20221102_133207.jpg

                          Zeigt eure Lovelace-Visualisierung klick
                          (Auch ideal um sich Anregungen zu holen)

                          Meine Tabellen für eure Visualisierung klick

                          GrizzelbeeG 1 Antwort Letzte Antwort
                          0
                          • David G.D David G.

                            @grizzelbee

                            Irgendwie stimmt bei mir was nicht.

                            Wollte nochmal ganz von vorne anfangen.
                            Hab sogar den Adapter komplett gelöscht und neu eingerichtet.

                            Jetzt macht er garnichts mehr.
                            Vermutlich, weil er den Nutuernamen immer irgendwie überschreibt.
                            Müsste eigentlich pi sein.

                            Screenshot_20221102_133207.jpg

                            GrizzelbeeG Offline
                            GrizzelbeeG Offline
                            Grizzelbee
                            Developer
                            schrieb am zuletzt editiert von Grizzelbee
                            #79

                            @david-g

                            Irgendwie stimmt bei mir was nicht.

                            Ich stimme dir zu. Da ist irgendetwas quer. Und mir schwant auch schon was ...
                            Wenn ich das richtig sehe bist Du noch auf der v1.3.1. Die hat den Benutzernamen und das Passwort manuell verschlüsselt. Deshalb hast Du auch den Eindruck, dass der Benutzername immer wieder überschrieben wird.

                            In Kombination mit einer kaputten Admin-Version (>=6.1.9 & <6.2.5) hat es da Probleme gegeben.

                            • Bitte installiere mal eine aktuelle Admin, falls noch nicht geschehen und
                            • die Version 1.4.0 des wireguard adapters (pi@pi: /opt/iobroker> npm install iobroker.wireguard@1.4.0). Die neue Adapter version hat das neue Admin Interface und verschlüsselt den Benutzernamen nicht mehr.

                            Dann kommen wir vielleicht einen Schritt weiter.

                            David G.D 1 Antwort Letzte Antwort
                            0
                            • GrizzelbeeG Grizzelbee

                              @david-g

                              Irgendwie stimmt bei mir was nicht.

                              Ich stimme dir zu. Da ist irgendetwas quer. Und mir schwant auch schon was ...
                              Wenn ich das richtig sehe bist Du noch auf der v1.3.1. Die hat den Benutzernamen und das Passwort manuell verschlüsselt. Deshalb hast Du auch den Eindruck, dass der Benutzername immer wieder überschrieben wird.

                              In Kombination mit einer kaputten Admin-Version (>=6.1.9 & <6.2.5) hat es da Probleme gegeben.

                              • Bitte installiere mal eine aktuelle Admin, falls noch nicht geschehen und
                              • die Version 1.4.0 des wireguard adapters (pi@pi: /opt/iobroker> npm install iobroker.wireguard@1.4.0). Die neue Adapter version hat das neue Admin Interface und verschlüsselt den Benutzernamen nicht mehr.

                              Dann kommen wir vielleicht einen Schritt weiter.

                              David G.D Online
                              David G.D Online
                              David G.
                              schrieb am zuletzt editiert von
                              #80

                              @grizzelbee

                              Hab jetzt die 1.4 drauf.
                              Alles klappt.
                              Adapter ist grün und die Namen werden erstellt.
                              Allerdings wollte er das sudo haben......

                              Ob die Config aus dem dritten Reiter richtig geladen wird kann ich leider nicht testen.

                              Zeigt eure Lovelace-Visualisierung klick
                              (Auch ideal um sich Anregungen zu holen)

                              Meine Tabellen für eure Visualisierung klick

                              1 Antwort Letzte Antwort
                              0
                              • David G.D Online
                                David G.D Online
                                David G.
                                schrieb am zuletzt editiert von David G.
                                #81

                                Ich weiß die Frage ist so halb Offtopic, frage aber trotzdem mal.

                                Gibt bestimmt eine Logig wie es gemacht wird, wenn man vom Thema Netzwerk Ahnung hat.....

                                Hab grad angefangen mir eine kleine Tabelle für meine Visualisierung zu erstellen.

                                Screenshot_20221102_222027.jpg

                                Rx und Tx hab ich mal mit gesendet und empfangen übersetzt.

                                Gibt man in so einem Fall den Wert aus Sicht des Servers oder des Clienten an?
                                Im Moment steigt der Wert "gesendet", wenn ich vom Handy aus runterlade.
                                Also wird der Wert aus Sicht des Servers angegeben.

                                EDIT:

                                Hab die Tabelle jetzt fertig. Falls jmd Interesse hat:

                                Screenshot_20221103_213618.jpg

                                Über den Pfeil kann man sich anschauen, von wo die letzte/aktuelle IP kommt die sich verbunden hat. Wobei man das ja im Idealfall immer selber steht 😉

                                Die Infos zur IP werden von http://ipwho.is/ abgerufen.

                                Screenshot_20221103_213631.jpg

                                <xml xmlns="https://developers.google.com/blockly/xml">
                                 <variables>
                                   <variable id="zyM/JPT)}]T^gGWB:F@z">id</variable>
                                   <variable id="P]hs1T;bQP8mPlO[gI,G">city</variable>
                                   <variable id="smqD@1Uy]?O9IkTgYsh[">tabelle</variable>
                                   <variable id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</variable>
                                   <variable id=",{9I3n95un{O]_ilfGaC">i</variable>
                                   <variable id="i{;#5g`AfcVP:!fhdgPw">peer</variable>
                                   <variable id="}fTQ5LIFFh:KJ}if-0Ze">result</variable>
                                   <variable id="S.FRC##Hw2?0w)V+rL^2">transferRx</variable>
                                   <variable id="C/F_Y=6$Ds5n/qprHq[c">transferTx</variable>
                                   <variable id="jufz1u/JWS-Er-e+JLb!">endpoint</variable>
                                   <variable id="M~I$/Vj!yhhC]AKAyyFk">ip</variable>
                                   <variable id="v;-p[gTSM`],SG{[,SDl">abfrage_url</variable>
                                   <variable id=")j[GnvK_2~2}$q!/M+t;">land</variable>
                                   <variable id="2i7_N153+$/8+,0NNcKm">region</variable>
                                   <variable id="54Xg:T_Q`!#x/w*E!=#_">provider</variable>
                                   <variable id="W}.4#@,T@E.%qHYX!?5W">country_picture</variable>
                                 </variables>
                                 <block type="request" id=")N5rhid8GiQC*JpzD7(3" disabled="true" x="63" y="-1637">
                                   <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
                                   <field name="WITH_STATEMENT">TRUE</field>
                                   <field name="LOG"></field>
                                   <value name="URL">
                                     <shadow type="text" id=";Yo#oC}Nk9]C:)WNW{Lk">
                                       <field name="TEXT">http://ipwho.is/83.171.74.125</field>
                                     </shadow>
                                   </value>
                                   <statement name="STATEMENT">
                                     <block type="variables_set" id="yZ,__K01LN6h%PABrY[v">
                                       <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                       <value name="VALUE">
                                         <block type="get_attr" id="cc7[vI*$}xrtDrMt~OBj">
                                           <value name="PATH">
                                             <shadow type="text" id="EE;)y+tq$(;j+)+t}6N*">
                                               <field name="TEXT">city</field>
                                             </shadow>
                                           </value>
                                           <value name="OBJECT">
                                             <block type="convert_json2object" id="i+ECe}KB787,7WZ9B*=P">
                                               <value name="VALUE">
                                                 <block type="variables_get" id="e;SfvsEGcas3)+#3[|s=">
                                                   <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="variables_set" id="Jv]kPHDP!+qPmr0C/4_6">
                                           <field name="VAR" id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</field>
                                           <value name="VALUE">
                                             <block type="variables_get" id="1T}jB,#%wUuBhPF};k6Q">
                                               <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                             </block>
                                           </value>
                                           <next>
                                             <block type="debug" id="uoO#u~MJK:Iv#vLPaQW-">
                                               <field name="Severity">error</field>
                                               <value name="TEXT">
                                                 <shadow type="text">
                                                   <field name="TEXT">test</field>
                                                 </shadow>
                                                 <block type="variables_get" id="?hFiT,lj@AlJdB!uMlaP">
                                                   <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                   </statement>
                                   <next>
                                     <block type="timeouts_wait" id="dsl0+g%)^JUz!6b-$BYj" disabled="true">
                                       <field name="DELAY">1000</field>
                                       <field name="UNIT">ms</field>
                                       <next>
                                         <block type="debug" id="p3YJ(2$Er=6P,(vD|l3w" disabled="true">
                                           <field name="Severity">error</field>
                                           <value name="TEXT">
                                             <shadow type="text">
                                               <field name="TEXT">test</field>
                                             </shadow>
                                             <block type="variables_get" id="!khP)45:LW)ph!CLa5z4">
                                               <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                             </block>
                                           </value>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                                 <block type="procedures_defcustomreturn" id=";]!K;f1g9nqi9xIHEy8F" x="38" y="-788">
                                   <mutation statements="false">
                                     <arg name="id" varid="zyM/JPT)}]T^gGWB:F@z"></arg>
                                   </mutation>
                                   <field name="NAME">Kanalname</field>
                                   <field name="SCRIPT">aWQgPSBpZC5zdWJzdHJpbmcoMCwgaWQubGFzdEluZGV4T2YoJy4nKSk7CmlmKGV4aXN0c09iamVjdChpZCkpIHJldHVybiBnZXRPYmplY3QoaWQpLmNvbW1vbi5uYW1lOw==</field>
                                   <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                 </block>
                                 <block type="on_ext" id="*AYH{ret7JZ1QW^UA{`o" x="37" y="-760">
                                   <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                   <field name="CONDITION">ne</field>
                                   <field name="ACK_CONDITION"></field>
                                   <value name="OID0">
                                     <shadow type="field_oid">
                                       <field name="oid">default</field>
                                     </shadow>
                                     <block type="selector" id="O@OR#2?7z_V2GtPIXXlE">
                                       <field name="TEXT">wireguard.0.*.peers.*.connected</field>
                                     </block>
                                   </value>
                                   <statement name="STATEMENT">
                                     <block type="variables_set" id="M,^/Wy$Z(Ri-O+r$J2EM">
                                       <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                       <value name="VALUE">
                                         <block type="text" id="GQztwNrU3N3l(-HQD){{">
                                           <field name="TEXT"></field>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="controls_forEach" id="veYOQ1{6??T#Rg%Au2sv">
                                           <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                           <value name="LIST">
                                             <block type="selector" id="pQ4rA|H(~]Zi`E2tFf)R">
                                               <field name="TEXT">wireguard.0.*.peers.*.connected</field>
                                             </block>
                                           </value>
                                           <statement name="DO">
                                             <block type="variables_set" id="0YUuZlCKksW:|4UgM,sj">
                                               <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                               <value name="VALUE">
                                                 <block type="text_getSubstring" id="[AHj0;4KjS|p$9FDvGrd">
                                                   <mutation at1="false" at2="true"></mutation>
                                                   <field name="WHERE1">FIRST</field>
                                                   <field name="WHERE2">FROM_START</field>
                                                   <value name="STRING">
                                                     <block type="variables_get" id="2?gX6;{EJe`XL|0C}_wi">
                                                       <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                                     </block>
                                                   </value>
                                                   <value name="AT2">
                                                     <block type="text_indexOf" id="j[xyaOQIutX|_W9BwB0e">
                                                       <field name="END">LAST</field>
                                                       <value name="VALUE">
                                                         <block type="variables_get" id="S+@r`ZO;vXp`6tF=}XrA">
                                                           <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                                         </block>
                                                       </value>
                                                       <value name="FIND">
                                                         <shadow type="text">
                                                           <field name="TEXT">abc</field>
                                                         </shadow>
                                                         <block type="text" id="Wv@{y%itHoH$|uS:#.]c">
                                                           <field name="TEXT">.</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="variables_set" id="h%P+g|0Xu@[0f@lIVzkR">
                                                   <field name="VAR" id="S.FRC##Hw2?0w)V+rL^2">transferRx</field>
                                                   <value name="VALUE">
                                                     <block type="text_join" id="68k%qF8!65ii:Qq]Pm^)">
                                                       <mutation items="2"></mutation>
                                                       <value name="ADD0">
                                                         <block type="variables_get" id="kiyLLQy*x#F[$Fb28PR-">
                                                           <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                                         </block>
                                                       </value>
                                                       <value name="ADD1">
                                                         <block type="text" id="8onx#:a?(N_t0|7:bu{i">
                                                           <field name="TEXT">transferRx</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <next>
                                                     <block type="variables_set" id=":Pi}g+hmEaAPvwM*;+4.">
                                                       <field name="VAR" id="C/F_Y=6$Ds5n/qprHq[c">transferTx</field>
                                                       <value name="VALUE">
                                                         <block type="text_join" id="kNCk{#HV06{XE/jQ6#4Z">
                                                           <mutation items="2"></mutation>
                                                           <value name="ADD0">
                                                             <block type="variables_get" id="_.1EdEguDaD;|Tjw/78m">
                                                               <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                                             </block>
                                                           </value>
                                                           <value name="ADD1">
                                                             <block type="text" id="Um%*nvdNeQk#2|E{X)=4">
                                                               <field name="TEXT">transferTx</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <next>
                                                         <block type="variables_set" id="+RaNq^bTK3a[C;uqyI2i">
                                                           <field name="VAR" id="jufz1u/JWS-Er-e+JLb!">endpoint</field>
                                                           <value name="VALUE">
                                                             <block type="text_join" id="r0}``DS=.o5yX^7ZxtXH">
                                                               <mutation items="2"></mutation>
                                                               <value name="ADD0">
                                                                 <block type="variables_get" id="iU:-,TszPibEMR10E[Nn">
                                                                   <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                                                 </block>
                                                               </value>
                                                               <value name="ADD1">
                                                                 <block type="text" id="9BNmdn7[:(Zp9SppGE/!">
                                                                   <field name="TEXT">endpoint</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                           <next>
                                                             <block type="variables_set" id="]/%-HR7LqbNXDaldX+6v">
                                                               <field name="VAR" id="M~I$/Vj!yhhC]AKAyyFk">ip</field>
                                                               <value name="VALUE">
                                                                 <block type="text_getSubstring" id="d+sQ1Ac7B]#BWpR(u+!N">
                                                                   <mutation at1="true" at2="true"></mutation>
                                                                   <field name="WHERE1">FROM_START</field>
                                                                   <field name="WHERE2">FROM_START</field>
                                                                   <value name="STRING">
                                                                     <block type="text_getSubstring" id="`ZAHXSC%IP4W`CI5V:.C">
                                                                       <mutation at1="false" at2="true"></mutation>
                                                                       <field name="WHERE1">FIRST</field>
                                                                       <field name="WHERE2">FROM_START</field>
                                                                       <value name="STRING">
                                                                         <block type="get_value_var" id="qBE1@f(j-zez`w!D+D9(">
                                                                           <field name="ATTR">val</field>
                                                                           <value name="OID">
                                                                             <shadow type="text" id="T[UFJbAebSF~KJwN[whZ">
                                                                               <field name="TEXT"></field>
                                                                             </shadow>
                                                                             <block type="variables_get" id=";k7drB#W^}wXbqRmPRbP">
                                                                               <field name="VAR" id="jufz1u/JWS-Er-e+JLb!">endpoint</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <value name="AT2">
                                                                         <block type="text_indexOf" id="]s|i%].NCWJ%D6L)WJ[Q">
                                                                           <field name="END">LAST</field>
                                                                           <value name="VALUE">
                                                                             <block type="get_value_var" id="]9DealhF+Ph|sxHIa]@v">
                                                                               <field name="ATTR">val</field>
                                                                               <value name="OID">
                                                                                 <shadow type="text">
                                                                                   <field name="TEXT"></field>
                                                                                 </shadow>
                                                                                 <block type="variables_get" id="h:fIu=#qfFC-F{hAdE!5">
                                                                                   <field name="VAR" id="jufz1u/JWS-Er-e+JLb!">endpoint</field>
                                                                                 </block>
                                                                               </value>
                                                                             </block>
                                                                           </value>
                                                                           <value name="FIND">
                                                                             <shadow type="text">
                                                                               <field name="TEXT">abc</field>
                                                                             </shadow>
                                                                             <block type="text" id="6):Os@?A0QT6XMw;C0wc">
                                                                               <field name="TEXT">:</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                   <value name="AT1">
                                                                     <block type="math_number" id="+=ce5?*A3c6f]7.2Bj[$">
                                                                       <field name="NUM">1</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="AT2">
                                                                     <block type="math_number" id="LtgXjy#)9.`FkWUNgoe$">
                                                                       <field name="NUM">-1</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                               <next>
                                                                 <block type="variables_set" id="sY8v-iEo6OJ|M:b6S{/A">
                                                                   <field name="VAR" id="v;-p[gTSM`],SG{[,SDl">abfrage_url</field>
                                                                   <value name="VALUE">
                                                                     <block type="text_join" id="P,8mR2;t@~=T{;|AcKUM">
                                                                       <mutation items="2"></mutation>
                                                                       <value name="ADD0">
                                                                         <block type="text" id="qNoAL*`^y|_#u%b61T1*">
                                                                           <field name="TEXT">http://ipwho.is/</field>
                                                                         </block>
                                                                       </value>
                                                                       <value name="ADD1">
                                                                         <block type="variables_get" id="`73!fms.x9k`t6l!WlbD">
                                                                           <field name="VAR" id="M~I$/Vj!yhhC]AKAyyFk">ip</field>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                   <next>
                                                                     <block type="request" id="yQj=We:n%oJ]fv5EDKh#">
                                                                       <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
                                                                       <field name="WITH_STATEMENT">TRUE</field>
                                                                       <field name="LOG"></field>
                                                                       <value name="URL">
                                                                         <shadow type="text" id="1ZjuFLX9{_i/):-7*{1=">
                                                                           <field name="TEXT">text</field>
                                                                         </shadow>
                                                                         <block type="variables_get" id="{V`qu@4=M*NCc$:qDl,x">
                                                                           <field name="VAR" id="v;-p[gTSM`],SG{[,SDl">abfrage_url</field>
                                                                         </block>
                                                                       </value>
                                                                       <statement name="STATEMENT">
                                                                         <block type="variables_set" id="/2~fEs-/8iSj~xbu,VWS">
                                                                           <field name="VAR" id=")j[GnvK_2~2}$q!/M+t;">land</field>
                                                                           <value name="VALUE">
                                                                             <block type="get_attr" id="p@mYtPQrg]j=^;!(GB]k">
                                                                               <value name="PATH">
                                                                                 <shadow type="text" id="p%sL|r[$n-s|iYr}3:-2">
                                                                                   <field name="TEXT">country_code</field>
                                                                                 </shadow>
                                                                               </value>
                                                                               <value name="OBJECT">
                                                                                 <block type="convert_json2object" id="D])k5/#|{@E{E$nNTj,i">
                                                                                   <value name="VALUE">
                                                                                     <block type="variables_get" id="=avdbaKMsIq[9HG,bQN=">
                                                                                       <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                     </block>
                                                                                   </value>
                                                                                 </block>
                                                                               </value>
                                                                             </block>
                                                                           </value>
                                                                           <next>
                                                                             <block type="variables_set" id="KyDRw7l?3$ZJ@n6(I@LT">
                                                                               <field name="VAR" id="2i7_N153+$/8+,0NNcKm">region</field>
                                                                               <value name="VALUE">
                                                                                 <block type="get_attr" id="9^17kBsH`5z2qA[W}0$f">
                                                                                   <value name="PATH">
                                                                                     <shadow type="text" id="aiWGsO-%e?SKUJT*FoFD">
                                                                                       <field name="TEXT">region</field>
                                                                                     </shadow>
                                                                                   </value>
                                                                                   <value name="OBJECT">
                                                                                     <block type="convert_json2object" id="@rN56zHgxe)+%/dtHZ{[">
                                                                                       <value name="VALUE">
                                                                                         <block type="variables_get" id="Q1W]OLEygD*=~@Egnkd8">
                                                                                           <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                         </block>
                                                                                       </value>
                                                                                     </block>
                                                                                   </value>
                                                                                 </block>
                                                                               </value>
                                                                               <next>
                                                                                 <block type="variables_set" id="GL`%T+3[#obeYt]l,Qjs">
                                                                                   <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                                                                   <value name="VALUE">
                                                                                     <block type="get_attr" id=")2*)@[{m~!v4bZa[+o{-">
                                                                                       <value name="PATH">
                                                                                         <shadow type="text" id="LuuJ:2?E{~/M1A?++yLr">
                                                                                           <field name="TEXT">city</field>
                                                                                         </shadow>
                                                                                       </value>
                                                                                       <value name="OBJECT">
                                                                                         <block type="convert_json2object" id="C.{yE78r]Ip:Ef^sIkwO">
                                                                                           <value name="VALUE">
                                                                                             <block type="variables_get" id="c!rR?xyUqs@?N8a;*w`g">
                                                                                               <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                             </block>
                                                                                           </value>
                                                                                         </block>
                                                                                       </value>
                                                                                     </block>
                                                                                   </value>
                                                                                   <next>
                                                                                     <block type="variables_set" id="zhx.Vx,PC;sH@~8,)g$_">
                                                                                       <field name="VAR" id="54Xg:T_Q`!#x/w*E!=#_">provider</field>
                                                                                       <value name="VALUE">
                                                                                         <block type="get_attr" id="~oFcapqP+nb8zcgKPl;h">
                                                                                           <value name="PATH">
                                                                                             <shadow type="text" id="Q{PoFQHD{nq51xgddt]%">
                                                                                               <field name="TEXT">connection.isp</field>
                                                                                             </shadow>
                                                                                           </value>
                                                                                           <value name="OBJECT">
                                                                                             <block type="convert_json2object" id="6WpFriymLMfFm}+#wxeu">
                                                                                               <value name="VALUE">
                                                                                                 <block type="variables_get" id="?il?@)/C79Di=5^i8psh">
                                                                                                   <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                                 </block>
                                                                                               </value>
                                                                                             </block>
                                                                                           </value>
                                                                                         </block>
                                                                                       </value>
                                                                                       <next>
                                                                                         <block type="variables_set" id="VOJCwCjlv+=g0]h3j}:V">
                                                                                           <field name="VAR" id="W}.4#@,T@E.%qHYX!?5W">country_picture</field>
                                                                                           <value name="VALUE">
                                                                                             <block type="get_attr" id="~VI^@Wl$49,s9x37if(Q">
                                                                                               <value name="PATH">
                                                                                                 <shadow type="text" id="w`|+I{+Hs`HP/4,HcLvS">
                                                                                                   <field name="TEXT">flag.img</field>
                                                                                                 </shadow>
                                                                                               </value>
                                                                                               <value name="OBJECT">
                                                                                                 <block type="convert_json2object" id="^a)=+B4;AU#^wUkv[-aD">
                                                                                                   <value name="VALUE">
                                                                                                     <block type="variables_get" id="gw)4=kpm!6TE/+2{U]E;">
                                                                                                       <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                 </block>
                                                                                               </value>
                                                                                             </block>
                                                                                           </value>
                                                                                           <next>
                                                                                             <block type="variables_set" id="HWLxl`;D$jPN2dsp_l0M">
                                                                                               <field name="VAR" id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</field>
                                                                                               <value name="VALUE">
                                                                                                 <block type="text_join" id="=hm(W}x9o1XDg9ox@upw">
                                                                                                   <mutation items="10"></mutation>
                                                                                                   <value name="ADD0">
                                                                                                     <block type="text_join" id="NwGsXFXos0{R-Fq-5j6W">
                                                                                                       <mutation items="3"></mutation>
                                                                                                       <value name="ADD0">
                                                                                                         <block type="text" id="W?yqgK1aifB-ZrHL}YUd">
                                                                                                           <field name="TEXT">&lt;img src="</field>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                       <value name="ADD1">
                                                                                                         <block type="variables_get" id="~pU`cH|%o!eb)#zCJrvu">
                                                                                                           <field name="VAR" id="W}.4#@,T@E.%qHYX!?5W">country_picture</field>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                       <value name="ADD2">
                                                                                                         <block type="text" id="(!mkECXwYB.I!?u*0b8s">
                                                                                                           <field name="TEXT">" height="15" width="20" /&gt;</field>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                   <value name="ADD1">
                                                                                                     <block type="text" id="4rgo.Ek|R$~P.w|}mY~:">
                                                                                                       <field name="TEXT"> </field>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                   <value name="ADD2">
                                                                                                     <block type="variables_get" id="0|-AQlC+u7_!l+pZ()P|">
                                                                                                       <field name="VAR" id=")j[GnvK_2~2}$q!/M+t;">land</field>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                   <value name="ADD3">
                                                                                                     <block type="text" id="ZLeHRbssnJ_]T8-ZL.U1">
                                                                                                       <field name="TEXT"> / </field>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                   <value name="ADD4">
                                                                                                     <block type="variables_get" id="e/DltPU{]?F4pg`~)_we">
                                                                                                       <field name="VAR" id="2i7_N153+$/8+,0NNcKm">region</field>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                   <value name="ADD5">
                                                                                                     <block type="text" id="GJy$2~u0u[.{*U?1+Rs}">
                                                                                                       <field name="TEXT"> / </field>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                   <value name="ADD6">
                                                                                                     <block type="variables_get" id="h=cVYbl,lTADIV6nkO5G">
                                                                                                       <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                   <value name="ADD7">
                                                                                                     <block type="text" id="ZE^J~uZ*li-BOmL~jQU.">
                                                                                                       <field name="TEXT"> / </field>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                   <value name="ADD8">
                                                                                                     <block type="variables_get" id="cUms?WrPv]3zw;RDK5y*">
                                                                                                       <field name="VAR" id="54Xg:T_Q`!#x/w*E!=#_">provider</field>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                   <value name="ADD9">
                                                                                                     <block type="text" id="+]MQ2=#W5G(nn4:YaChr">
                                                                                                       <field name="TEXT"></field>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                 </block>
                                                                                               </value>
                                                                                             </block>
                                                                                           </next>
                                                                                         </block>
                                                                                       </next>
                                                                                     </block>
                                                                                   </next>
                                                                                 </block>
                                                                               </next>
                                                                             </block>
                                                                           </next>
                                                                         </block>
                                                                       </statement>
                                                                       <next>
                                                                         <block type="timeouts_wait" id="wDBP!}LPeaN}_$]qWUD@">
                                                                           <field name="DELAY">1000</field>
                                                                           <field name="UNIT">ms</field>
                                                                           <next>
                                                                             <block type="variables_set" id="|eyOkaiKEzp!7`4O%q(|">
                                                                               <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                                                               <value name="VALUE">
                                                                                 <block type="text_join" id="x(/8M1*c0r0dOEHH1cS)">
                                                                                   <mutation items="11"></mutation>
                                                                                   <value name="ADD0">
                                                                                     <block type="variables_get" id="VzHd03_5cmr%mg68:0ji">
                                                                                       <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                                                                     </block>
                                                                                   </value>
                                                                                   <value name="ADD1">
                                                                                     <block type="text" id="z9{VZS;@wA6DcSRXU|HP">
                                                                                       <field name="TEXT">&lt;tr&gt;&lt;td&gt;</field>
                                                                                     </block>
                                                                                   </value>
                                                                                   <value name="ADD2">
                                                                                     <block type="logic_ternary" id="D+m)U.nXTcPv_JX:YS7L">
                                                                                       <value name="IF">
                                                                                         <block type="get_value_var" id="1]idlwI||{Ir$D,B5A7P">
                                                                                           <field name="ATTR">val</field>
                                                                                           <value name="OID">
                                                                                             <shadow type="text">
                                                                                               <field name="TEXT"></field>
                                                                                             </shadow>
                                                                                             <block type="variables_get" id="nK.1b}{e92ZLDcI$.0il">
                                                                                               <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                                                                             </block>
                                                                                           </value>
                                                                                         </block>
                                                                                       </value>
                                                                                       <value name="THEN">
                                                                                         <block type="text" id="5.nKN;dyw^TkA8W,K`TZ">
                                                                                           <field name="TEXT">&lt;details&gt;&lt;summary&gt;&lt;font size="3"&gt;&lt;b&gt;&lt;font color=green&gt;● &lt;/font&gt;&lt;/b&gt;</field>
                                                                                         </block>
                                                                                       </value>
                                                                                       <value name="ELSE">
                                                                                         <block type="text" id="W8$7%-Enk^.^P59Sri~6">
                                                                                           <field name="TEXT">&lt;details&gt;&lt;summary&gt;&lt;font size="3"&gt;&lt;b&gt;&lt;font color=red&gt;● &lt;/font&gt;&lt;/b&gt;</field>
                                                                                         </block>
                                                                                       </value>
                                                                                     </block>
                                                                                   </value>
                                                                                   <value name="ADD3">
                                                                                     <block type="procedures_callcustomreturn" id="2Gs#,[7gcB],_]RjLg~G">
                                                                                       <mutation name="Kanalname">
                                                                                         <arg name="id"></arg>
                                                                                       </mutation>
                                                                                       <value name="ARG0">
                                                                                         <block type="variables_get" id="d12Mji%YD(L:H{Wkl0MM">
                                                                                           <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                                                                         </block>
                                                                                       </value>
                                                                                     </block>
                                                                                   </value>
                                                                                   <value name="ADD4">
                                                                                     <block type="text" id="DW)g%~#qYSVioQUxUf|,">
                                                                                       <field name="TEXT">&lt;/summary&gt;</field>
                                                                                     </block>
                                                                                   </value>
                                                                                   <value name="ADD5">
                                                                                     <block type="variables_get" id="s!ZU|P+d#p=*DzhAzYGl">
                                                                                       <field name="VAR" id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</field>
                                                                                     </block>
                                                                                   </value>
                                                                                   <value name="ADD6">
                                                                                     <block type="text" id="Ii8Ty%UU0D~D]sl+@S{d">
                                                                                       <field name="TEXT">&lt;/details&gt;&lt;/td&gt;&lt;td&gt;</field>
                                                                                     </block>
                                                                                   </value>
                                                                                   <value name="ADD7">
                                                                                     <block type="math_rndfixed" id="f@oQ4S4q|5ZVJ|_RK2K1">
                                                                                       <field name="n">1</field>
                                                                                       <value name="x">
                                                                                         <shadow type="math_number" id="jqVp50z~0j@|9Pa;Vs85">
                                                                                           <field name="NUM">3.1234</field>
                                                                                         </shadow>
                                                                                         <block type="math_arithmetic" id="W$8Lgq;$GP-/D1yf?:QC">
                                                                                           <field name="OP">MULTIPLY</field>
                                                                                           <value name="A">
                                                                                             <shadow type="math_number">
                                                                                               <field name="NUM">1</field>
                                                                                             </shadow>
                                                                                             <block type="get_value_var" id="[k[#r$Ep@{eAywbF|L@9">
                                                                                               <field name="ATTR">val</field>
                                                                                               <value name="OID">
                                                                                                 <shadow type="text" id="61+ObyAGen}9iPcNi+~`">
                                                                                                   <field name="TEXT"></field>
                                                                                                 </shadow>
                                                                                                 <block type="variables_get" id="r5%+e]~rU()E]t43#};C">
                                                                                                   <field name="VAR" id="C/F_Y=6$Ds5n/qprHq[c">transferTx</field>
                                                                                                 </block>
                                                                                               </value>
                                                                                             </block>
                                                                                           </value>
                                                                                           <value name="B">
                                                                                             <shadow type="math_number" id="FZ8^[rYvFWTG+[:qc)Ll">
                                                                                               <field name="NUM">0.000001</field>
                                                                                             </shadow>
                                                                                           </value>
                                                                                         </block>
                                                                                       </value>
                                                                                     </block>
                                                                                   </value>
                                                                                   <value name="ADD8">
                                                                                     <block type="text" id="fduLOuSzL6I3562+u+G?">
                                                                                       <field name="TEXT"> MB&lt;/td&gt;&lt;td&gt;</field>
                                                                                     </block>
                                                                                   </value>
                                                                                   <value name="ADD9">
                                                                                     <block type="math_rndfixed" id="nN/RhZ7w/|CgqEfaRzOF">
                                                                                       <field name="n">1</field>
                                                                                       <value name="x">
                                                                                         <shadow type="math_number" id="%bQ@ali!%@n#vEUO{=UY">
                                                                                           <field name="NUM">3.1234</field>
                                                                                         </shadow>
                                                                                         <block type="math_arithmetic" id="CaI#H!wz.!V#J7Ebn?H5">
                                                                                           <field name="OP">MULTIPLY</field>
                                                                                           <value name="A">
                                                                                             <shadow type="math_number" id="r4pDV]u/({hASSSM|$^{">
                                                                                               <field name="NUM">1</field>
                                                                                             </shadow>
                                                                                             <block type="get_value_var" id=",,pB]^{h9sFjel_E?UNP">
                                                                                               <field name="ATTR">val</field>
                                                                                               <value name="OID">
                                                                                                 <shadow type="text" id="tnRvo,GMPgs~:?Rlg*0y">
                                                                                                   <field name="TEXT"></field>
                                                                                                 </shadow>
                                                                                                 <block type="variables_get" id="Y?k!u%5taY9)sxBsjIB@">
                                                                                                   <field name="VAR" id="S.FRC##Hw2?0w)V+rL^2">transferRx</field>
                                                                                                 </block>
                                                                                               </value>
                                                                                             </block>
                                                                                           </value>
                                                                                           <value name="B">
                                                                                             <shadow type="math_number" id="w[mHdLVRLZCg=/Ori|2G">
                                                                                               <field name="NUM">0.000001</field>
                                                                                             </shadow>
                                                                                           </value>
                                                                                         </block>
                                                                                       </value>
                                                                                     </block>
                                                                                   </value>
                                                                                   <value name="ADD10">
                                                                                     <block type="text" id="z-)f|VOR{Z1a#3mt6f.D">
                                                                                       <field name="TEXT"> MB&lt;/td&gt;&lt;/tr&gt;</field>
                                                                                     </block>
                                                                                   </value>
                                                                                 </block>
                                                                               </value>
                                                                             </block>
                                                                           </next>
                                                                         </block>
                                                                       </next>
                                                                     </block>
                                                                   </next>
                                                                 </block>
                                                               </next>
                                                             </block>
                                                           </next>
                                                         </block>
                                                       </next>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </next>
                                             </block>
                                           </statement>
                                           <next>
                                             <block type="variables_set" id="r7;.)AWzn~Og=WYuviOr">
                                               <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                               <value name="VALUE">
                                                 <block type="text_join" id="D~eCviT1huxfi`bAJKgT">
                                                   <mutation items="3"></mutation>
                                                   <value name="ADD0">
                                                     <block type="text" id=",uS[jZuG?eIg$q6{Wo0(">
                                                       <field name="TEXT">&lt;table width=100%&gt;&lt;tr&gt;&lt;td width=50%&gt;&lt;b&gt;Client&lt;/td&gt;&lt;td width=25%&gt;&lt;b&gt;gesendet&lt;/td&gt;&lt;td width=25%&gt;&lt;b&gt;empfangen&lt;/dt&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;</field>
                                                     </block>
                                                   </value>
                                                   <value name="ADD1">
                                                     <block type="variables_get" id="}aSY%Cu.eaFdn8d[piW`">
                                                       <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                                     </block>
                                                   </value>
                                                   <value name="ADD2">
                                                     <block type="text" id="5TIxI)3=1`v=5T=CkrsL">
                                                       <field name="TEXT">&lt;/table&gt;</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="update" id="@m+uxxJM5NwXi;z[{2-{">
                                                   <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                   <field name="OID">0_userdata.0.VIS.Tabellen.Tabelle_Wireguard</field>
                                                   <field name="WITH_DELAY">FALSE</field>
                                                   <value name="VALUE">
                                                     <block type="variables_get" id="k,oGuXz4!Z~ev=Gf95%?">
                                                       <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </next>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                   </statement>
                                 </block>
                                </xml>
                                

                                Zeigt eure Lovelace-Visualisierung klick
                                (Auch ideal um sich Anregungen zu holen)

                                Meine Tabellen für eure Visualisierung klick

                                NegaleinN 1 Antwort Letzte Antwort
                                1
                                • GrizzelbeeG Grizzelbee

                                  @bommel_030 sagte in Tester für WireGuard Adapter gesucht:

                                  Hi bommel,
                                  vielen Dank für dein Feedback. Da ich selber nur einen WireGuard host habe, sind mir derartige Spielchen nicht aufgefallen - das muss ich mir dann noch einmal angucken. Das sollte nicht so sein. Die Idee war, das ein interface, das aktiv ist auch als online angezeigt wird.
                                  Mit den connectedPeers spiele ich gerade noch herum - da ist ohnehin noch ein bug drin: Peers, die offline gehen werden nicht von der Summe abgezogen - da hatte ich etwas kurz gedacht.

                                  In Summe ist die Anzahl richtig, halt nur "falsch" aufgeteilt.

                                  Dann habe ich schon eine Idee woran das liegt!

                                  Oder sollten zwei Hosts besser auf zwei Instanzen aufgeteilt werden?

                                  Um Gottes Willen - Nein! Die eine Instanz soll schon beliebig viele Hosts überwachen können.

                                  B Nicht stören
                                  B Nicht stören
                                  bommel_030
                                  schrieb am zuletzt editiert von
                                  #82

                                  @grizzelbee
                                  Hab mir mal die 1.5.0 installiert. Die neuen Datenpunkte für die User finde ich super, fand die Bennennung der Peers aber auch ganz praktisch.
                                  Ich habe leider immer noch das Problem, dass ich bei meinen 2 Servern die beide definitiv online sind, der als online=true angezeigt der als letztes gepollt wurde.
                                  Es wechseln also im Abrufintervall beide von offline zu online und der andere von online zu offline.

                                  GrizzelbeeG 1 Antwort Letzte Antwort
                                  0
                                  • David G.D David G.

                                    Ich weiß die Frage ist so halb Offtopic, frage aber trotzdem mal.

                                    Gibt bestimmt eine Logig wie es gemacht wird, wenn man vom Thema Netzwerk Ahnung hat.....

                                    Hab grad angefangen mir eine kleine Tabelle für meine Visualisierung zu erstellen.

                                    Screenshot_20221102_222027.jpg

                                    Rx und Tx hab ich mal mit gesendet und empfangen übersetzt.

                                    Gibt man in so einem Fall den Wert aus Sicht des Servers oder des Clienten an?
                                    Im Moment steigt der Wert "gesendet", wenn ich vom Handy aus runterlade.
                                    Also wird der Wert aus Sicht des Servers angegeben.

                                    EDIT:

                                    Hab die Tabelle jetzt fertig. Falls jmd Interesse hat:

                                    Screenshot_20221103_213618.jpg

                                    Über den Pfeil kann man sich anschauen, von wo die letzte/aktuelle IP kommt die sich verbunden hat. Wobei man das ja im Idealfall immer selber steht 😉

                                    Die Infos zur IP werden von http://ipwho.is/ abgerufen.

                                    Screenshot_20221103_213631.jpg

                                    <xml xmlns="https://developers.google.com/blockly/xml">
                                     <variables>
                                       <variable id="zyM/JPT)}]T^gGWB:F@z">id</variable>
                                       <variable id="P]hs1T;bQP8mPlO[gI,G">city</variable>
                                       <variable id="smqD@1Uy]?O9IkTgYsh[">tabelle</variable>
                                       <variable id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</variable>
                                       <variable id=",{9I3n95un{O]_ilfGaC">i</variable>
                                       <variable id="i{;#5g`AfcVP:!fhdgPw">peer</variable>
                                       <variable id="}fTQ5LIFFh:KJ}if-0Ze">result</variable>
                                       <variable id="S.FRC##Hw2?0w)V+rL^2">transferRx</variable>
                                       <variable id="C/F_Y=6$Ds5n/qprHq[c">transferTx</variable>
                                       <variable id="jufz1u/JWS-Er-e+JLb!">endpoint</variable>
                                       <variable id="M~I$/Vj!yhhC]AKAyyFk">ip</variable>
                                       <variable id="v;-p[gTSM`],SG{[,SDl">abfrage_url</variable>
                                       <variable id=")j[GnvK_2~2}$q!/M+t;">land</variable>
                                       <variable id="2i7_N153+$/8+,0NNcKm">region</variable>
                                       <variable id="54Xg:T_Q`!#x/w*E!=#_">provider</variable>
                                       <variable id="W}.4#@,T@E.%qHYX!?5W">country_picture</variable>
                                     </variables>
                                     <block type="request" id=")N5rhid8GiQC*JpzD7(3" disabled="true" x="63" y="-1637">
                                       <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
                                       <field name="WITH_STATEMENT">TRUE</field>
                                       <field name="LOG"></field>
                                       <value name="URL">
                                         <shadow type="text" id=";Yo#oC}Nk9]C:)WNW{Lk">
                                           <field name="TEXT">http://ipwho.is/83.171.74.125</field>
                                         </shadow>
                                       </value>
                                       <statement name="STATEMENT">
                                         <block type="variables_set" id="yZ,__K01LN6h%PABrY[v">
                                           <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                           <value name="VALUE">
                                             <block type="get_attr" id="cc7[vI*$}xrtDrMt~OBj">
                                               <value name="PATH">
                                                 <shadow type="text" id="EE;)y+tq$(;j+)+t}6N*">
                                                   <field name="TEXT">city</field>
                                                 </shadow>
                                               </value>
                                               <value name="OBJECT">
                                                 <block type="convert_json2object" id="i+ECe}KB787,7WZ9B*=P">
                                                   <value name="VALUE">
                                                     <block type="variables_get" id="e;SfvsEGcas3)+#3[|s=">
                                                       <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <next>
                                             <block type="variables_set" id="Jv]kPHDP!+qPmr0C/4_6">
                                               <field name="VAR" id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</field>
                                               <value name="VALUE">
                                                 <block type="variables_get" id="1T}jB,#%wUuBhPF};k6Q">
                                                   <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="debug" id="uoO#u~MJK:Iv#vLPaQW-">
                                                   <field name="Severity">error</field>
                                                   <value name="TEXT">
                                                     <shadow type="text">
                                                       <field name="TEXT">test</field>
                                                     </shadow>
                                                     <block type="variables_get" id="?hFiT,lj@AlJdB!uMlaP">
                                                       <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </next>
                                             </block>
                                           </next>
                                         </block>
                                       </statement>
                                       <next>
                                         <block type="timeouts_wait" id="dsl0+g%)^JUz!6b-$BYj" disabled="true">
                                           <field name="DELAY">1000</field>
                                           <field name="UNIT">ms</field>
                                           <next>
                                             <block type="debug" id="p3YJ(2$Er=6P,(vD|l3w" disabled="true">
                                               <field name="Severity">error</field>
                                               <value name="TEXT">
                                                 <shadow type="text">
                                                   <field name="TEXT">test</field>
                                                 </shadow>
                                                 <block type="variables_get" id="!khP)45:LW)ph!CLa5z4">
                                                   <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                     <block type="procedures_defcustomreturn" id=";]!K;f1g9nqi9xIHEy8F" x="38" y="-788">
                                       <mutation statements="false">
                                         <arg name="id" varid="zyM/JPT)}]T^gGWB:F@z"></arg>
                                       </mutation>
                                       <field name="NAME">Kanalname</field>
                                       <field name="SCRIPT">aWQgPSBpZC5zdWJzdHJpbmcoMCwgaWQubGFzdEluZGV4T2YoJy4nKSk7CmlmKGV4aXN0c09iamVjdChpZCkpIHJldHVybiBnZXRPYmplY3QoaWQpLmNvbW1vbi5uYW1lOw==</field>
                                       <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                     </block>
                                     <block type="on_ext" id="*AYH{ret7JZ1QW^UA{`o" x="37" y="-760">
                                       <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                       <field name="CONDITION">ne</field>
                                       <field name="ACK_CONDITION"></field>
                                       <value name="OID0">
                                         <shadow type="field_oid">
                                           <field name="oid">default</field>
                                         </shadow>
                                         <block type="selector" id="O@OR#2?7z_V2GtPIXXlE">
                                           <field name="TEXT">wireguard.0.*.peers.*.connected</field>
                                         </block>
                                       </value>
                                       <statement name="STATEMENT">
                                         <block type="variables_set" id="M,^/Wy$Z(Ri-O+r$J2EM">
                                           <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                           <value name="VALUE">
                                             <block type="text" id="GQztwNrU3N3l(-HQD){{">
                                               <field name="TEXT"></field>
                                             </block>
                                           </value>
                                           <next>
                                             <block type="controls_forEach" id="veYOQ1{6??T#Rg%Au2sv">
                                               <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                               <value name="LIST">
                                                 <block type="selector" id="pQ4rA|H(~]Zi`E2tFf)R">
                                                   <field name="TEXT">wireguard.0.*.peers.*.connected</field>
                                                 </block>
                                               </value>
                                               <statement name="DO">
                                                 <block type="variables_set" id="0YUuZlCKksW:|4UgM,sj">
                                                   <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                                   <value name="VALUE">
                                                     <block type="text_getSubstring" id="[AHj0;4KjS|p$9FDvGrd">
                                                       <mutation at1="false" at2="true"></mutation>
                                                       <field name="WHERE1">FIRST</field>
                                                       <field name="WHERE2">FROM_START</field>
                                                       <value name="STRING">
                                                         <block type="variables_get" id="2?gX6;{EJe`XL|0C}_wi">
                                                           <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                                         </block>
                                                       </value>
                                                       <value name="AT2">
                                                         <block type="text_indexOf" id="j[xyaOQIutX|_W9BwB0e">
                                                           <field name="END">LAST</field>
                                                           <value name="VALUE">
                                                             <block type="variables_get" id="S+@r`ZO;vXp`6tF=}XrA">
                                                               <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                                             </block>
                                                           </value>
                                                           <value name="FIND">
                                                             <shadow type="text">
                                                               <field name="TEXT">abc</field>
                                                             </shadow>
                                                             <block type="text" id="Wv@{y%itHoH$|uS:#.]c">
                                                               <field name="TEXT">.</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <next>
                                                     <block type="variables_set" id="h%P+g|0Xu@[0f@lIVzkR">
                                                       <field name="VAR" id="S.FRC##Hw2?0w)V+rL^2">transferRx</field>
                                                       <value name="VALUE">
                                                         <block type="text_join" id="68k%qF8!65ii:Qq]Pm^)">
                                                           <mutation items="2"></mutation>
                                                           <value name="ADD0">
                                                             <block type="variables_get" id="kiyLLQy*x#F[$Fb28PR-">
                                                               <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                                             </block>
                                                           </value>
                                                           <value name="ADD1">
                                                             <block type="text" id="8onx#:a?(N_t0|7:bu{i">
                                                               <field name="TEXT">transferRx</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <next>
                                                         <block type="variables_set" id=":Pi}g+hmEaAPvwM*;+4.">
                                                           <field name="VAR" id="C/F_Y=6$Ds5n/qprHq[c">transferTx</field>
                                                           <value name="VALUE">
                                                             <block type="text_join" id="kNCk{#HV06{XE/jQ6#4Z">
                                                               <mutation items="2"></mutation>
                                                               <value name="ADD0">
                                                                 <block type="variables_get" id="_.1EdEguDaD;|Tjw/78m">
                                                                   <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                                                 </block>
                                                               </value>
                                                               <value name="ADD1">
                                                                 <block type="text" id="Um%*nvdNeQk#2|E{X)=4">
                                                                   <field name="TEXT">transferTx</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                           <next>
                                                             <block type="variables_set" id="+RaNq^bTK3a[C;uqyI2i">
                                                               <field name="VAR" id="jufz1u/JWS-Er-e+JLb!">endpoint</field>
                                                               <value name="VALUE">
                                                                 <block type="text_join" id="r0}``DS=.o5yX^7ZxtXH">
                                                                   <mutation items="2"></mutation>
                                                                   <value name="ADD0">
                                                                     <block type="variables_get" id="iU:-,TszPibEMR10E[Nn">
                                                                       <field name="VAR" id="i{;#5g`AfcVP:!fhdgPw">peer</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="ADD1">
                                                                     <block type="text" id="9BNmdn7[:(Zp9SppGE/!">
                                                                       <field name="TEXT">endpoint</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                               <next>
                                                                 <block type="variables_set" id="]/%-HR7LqbNXDaldX+6v">
                                                                   <field name="VAR" id="M~I$/Vj!yhhC]AKAyyFk">ip</field>
                                                                   <value name="VALUE">
                                                                     <block type="text_getSubstring" id="d+sQ1Ac7B]#BWpR(u+!N">
                                                                       <mutation at1="true" at2="true"></mutation>
                                                                       <field name="WHERE1">FROM_START</field>
                                                                       <field name="WHERE2">FROM_START</field>
                                                                       <value name="STRING">
                                                                         <block type="text_getSubstring" id="`ZAHXSC%IP4W`CI5V:.C">
                                                                           <mutation at1="false" at2="true"></mutation>
                                                                           <field name="WHERE1">FIRST</field>
                                                                           <field name="WHERE2">FROM_START</field>
                                                                           <value name="STRING">
                                                                             <block type="get_value_var" id="qBE1@f(j-zez`w!D+D9(">
                                                                               <field name="ATTR">val</field>
                                                                               <value name="OID">
                                                                                 <shadow type="text" id="T[UFJbAebSF~KJwN[whZ">
                                                                                   <field name="TEXT"></field>
                                                                                 </shadow>
                                                                                 <block type="variables_get" id=";k7drB#W^}wXbqRmPRbP">
                                                                                   <field name="VAR" id="jufz1u/JWS-Er-e+JLb!">endpoint</field>
                                                                                 </block>
                                                                               </value>
                                                                             </block>
                                                                           </value>
                                                                           <value name="AT2">
                                                                             <block type="text_indexOf" id="]s|i%].NCWJ%D6L)WJ[Q">
                                                                               <field name="END">LAST</field>
                                                                               <value name="VALUE">
                                                                                 <block type="get_value_var" id="]9DealhF+Ph|sxHIa]@v">
                                                                                   <field name="ATTR">val</field>
                                                                                   <value name="OID">
                                                                                     <shadow type="text">
                                                                                       <field name="TEXT"></field>
                                                                                     </shadow>
                                                                                     <block type="variables_get" id="h:fIu=#qfFC-F{hAdE!5">
                                                                                       <field name="VAR" id="jufz1u/JWS-Er-e+JLb!">endpoint</field>
                                                                                     </block>
                                                                                   </value>
                                                                                 </block>
                                                                               </value>
                                                                               <value name="FIND">
                                                                                 <shadow type="text">
                                                                                   <field name="TEXT">abc</field>
                                                                                 </shadow>
                                                                                 <block type="text" id="6):Os@?A0QT6XMw;C0wc">
                                                                                   <field name="TEXT">:</field>
                                                                                 </block>
                                                                               </value>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <value name="AT1">
                                                                         <block type="math_number" id="+=ce5?*A3c6f]7.2Bj[$">
                                                                           <field name="NUM">1</field>
                                                                         </block>
                                                                       </value>
                                                                       <value name="AT2">
                                                                         <block type="math_number" id="LtgXjy#)9.`FkWUNgoe$">
                                                                           <field name="NUM">-1</field>
                                                                         </block>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                   <next>
                                                                     <block type="variables_set" id="sY8v-iEo6OJ|M:b6S{/A">
                                                                       <field name="VAR" id="v;-p[gTSM`],SG{[,SDl">abfrage_url</field>
                                                                       <value name="VALUE">
                                                                         <block type="text_join" id="P,8mR2;t@~=T{;|AcKUM">
                                                                           <mutation items="2"></mutation>
                                                                           <value name="ADD0">
                                                                             <block type="text" id="qNoAL*`^y|_#u%b61T1*">
                                                                               <field name="TEXT">http://ipwho.is/</field>
                                                                             </block>
                                                                           </value>
                                                                           <value name="ADD1">
                                                                             <block type="variables_get" id="`73!fms.x9k`t6l!WlbD">
                                                                               <field name="VAR" id="M~I$/Vj!yhhC]AKAyyFk">ip</field>
                                                                             </block>
                                                                           </value>
                                                                         </block>
                                                                       </value>
                                                                       <next>
                                                                         <block type="request" id="yQj=We:n%oJ]fv5EDKh#">
                                                                           <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
                                                                           <field name="WITH_STATEMENT">TRUE</field>
                                                                           <field name="LOG"></field>
                                                                           <value name="URL">
                                                                             <shadow type="text" id="1ZjuFLX9{_i/):-7*{1=">
                                                                               <field name="TEXT">text</field>
                                                                             </shadow>
                                                                             <block type="variables_get" id="{V`qu@4=M*NCc$:qDl,x">
                                                                               <field name="VAR" id="v;-p[gTSM`],SG{[,SDl">abfrage_url</field>
                                                                             </block>
                                                                           </value>
                                                                           <statement name="STATEMENT">
                                                                             <block type="variables_set" id="/2~fEs-/8iSj~xbu,VWS">
                                                                               <field name="VAR" id=")j[GnvK_2~2}$q!/M+t;">land</field>
                                                                               <value name="VALUE">
                                                                                 <block type="get_attr" id="p@mYtPQrg]j=^;!(GB]k">
                                                                                   <value name="PATH">
                                                                                     <shadow type="text" id="p%sL|r[$n-s|iYr}3:-2">
                                                                                       <field name="TEXT">country_code</field>
                                                                                     </shadow>
                                                                                   </value>
                                                                                   <value name="OBJECT">
                                                                                     <block type="convert_json2object" id="D])k5/#|{@E{E$nNTj,i">
                                                                                       <value name="VALUE">
                                                                                         <block type="variables_get" id="=avdbaKMsIq[9HG,bQN=">
                                                                                           <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                         </block>
                                                                                       </value>
                                                                                     </block>
                                                                                   </value>
                                                                                 </block>
                                                                               </value>
                                                                               <next>
                                                                                 <block type="variables_set" id="KyDRw7l?3$ZJ@n6(I@LT">
                                                                                   <field name="VAR" id="2i7_N153+$/8+,0NNcKm">region</field>
                                                                                   <value name="VALUE">
                                                                                     <block type="get_attr" id="9^17kBsH`5z2qA[W}0$f">
                                                                                       <value name="PATH">
                                                                                         <shadow type="text" id="aiWGsO-%e?SKUJT*FoFD">
                                                                                           <field name="TEXT">region</field>
                                                                                         </shadow>
                                                                                       </value>
                                                                                       <value name="OBJECT">
                                                                                         <block type="convert_json2object" id="@rN56zHgxe)+%/dtHZ{[">
                                                                                           <value name="VALUE">
                                                                                             <block type="variables_get" id="Q1W]OLEygD*=~@Egnkd8">
                                                                                               <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                             </block>
                                                                                           </value>
                                                                                         </block>
                                                                                       </value>
                                                                                     </block>
                                                                                   </value>
                                                                                   <next>
                                                                                     <block type="variables_set" id="GL`%T+3[#obeYt]l,Qjs">
                                                                                       <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                                                                       <value name="VALUE">
                                                                                         <block type="get_attr" id=")2*)@[{m~!v4bZa[+o{-">
                                                                                           <value name="PATH">
                                                                                             <shadow type="text" id="LuuJ:2?E{~/M1A?++yLr">
                                                                                               <field name="TEXT">city</field>
                                                                                             </shadow>
                                                                                           </value>
                                                                                           <value name="OBJECT">
                                                                                             <block type="convert_json2object" id="C.{yE78r]Ip:Ef^sIkwO">
                                                                                               <value name="VALUE">
                                                                                                 <block type="variables_get" id="c!rR?xyUqs@?N8a;*w`g">
                                                                                                   <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                                 </block>
                                                                                               </value>
                                                                                             </block>
                                                                                           </value>
                                                                                         </block>
                                                                                       </value>
                                                                                       <next>
                                                                                         <block type="variables_set" id="zhx.Vx,PC;sH@~8,)g$_">
                                                                                           <field name="VAR" id="54Xg:T_Q`!#x/w*E!=#_">provider</field>
                                                                                           <value name="VALUE">
                                                                                             <block type="get_attr" id="~oFcapqP+nb8zcgKPl;h">
                                                                                               <value name="PATH">
                                                                                                 <shadow type="text" id="Q{PoFQHD{nq51xgddt]%">
                                                                                                   <field name="TEXT">connection.isp</field>
                                                                                                 </shadow>
                                                                                               </value>
                                                                                               <value name="OBJECT">
                                                                                                 <block type="convert_json2object" id="6WpFriymLMfFm}+#wxeu">
                                                                                                   <value name="VALUE">
                                                                                                     <block type="variables_get" id="?il?@)/C79Di=5^i8psh">
                                                                                                       <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                 </block>
                                                                                               </value>
                                                                                             </block>
                                                                                           </value>
                                                                                           <next>
                                                                                             <block type="variables_set" id="VOJCwCjlv+=g0]h3j}:V">
                                                                                               <field name="VAR" id="W}.4#@,T@E.%qHYX!?5W">country_picture</field>
                                                                                               <value name="VALUE">
                                                                                                 <block type="get_attr" id="~VI^@Wl$49,s9x37if(Q">
                                                                                                   <value name="PATH">
                                                                                                     <shadow type="text" id="w`|+I{+Hs`HP/4,HcLvS">
                                                                                                       <field name="TEXT">flag.img</field>
                                                                                                     </shadow>
                                                                                                   </value>
                                                                                                   <value name="OBJECT">
                                                                                                     <block type="convert_json2object" id="^a)=+B4;AU#^wUkv[-aD">
                                                                                                       <value name="VALUE">
                                                                                                         <block type="variables_get" id="gw)4=kpm!6TE/+2{U]E;">
                                                                                                           <field name="VAR" id="}fTQ5LIFFh:KJ}if-0Ze">result</field>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                 </block>
                                                                                               </value>
                                                                                               <next>
                                                                                                 <block type="variables_set" id="HWLxl`;D$jPN2dsp_l0M">
                                                                                                   <field name="VAR" id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</field>
                                                                                                   <value name="VALUE">
                                                                                                     <block type="text_join" id="=hm(W}x9o1XDg9ox@upw">
                                                                                                       <mutation items="10"></mutation>
                                                                                                       <value name="ADD0">
                                                                                                         <block type="text_join" id="NwGsXFXos0{R-Fq-5j6W">
                                                                                                           <mutation items="3"></mutation>
                                                                                                           <value name="ADD0">
                                                                                                             <block type="text" id="W?yqgK1aifB-ZrHL}YUd">
                                                                                                               <field name="TEXT">&lt;img src="</field>
                                                                                                             </block>
                                                                                                           </value>
                                                                                                           <value name="ADD1">
                                                                                                             <block type="variables_get" id="~pU`cH|%o!eb)#zCJrvu">
                                                                                                               <field name="VAR" id="W}.4#@,T@E.%qHYX!?5W">country_picture</field>
                                                                                                             </block>
                                                                                                           </value>
                                                                                                           <value name="ADD2">
                                                                                                             <block type="text" id="(!mkECXwYB.I!?u*0b8s">
                                                                                                               <field name="TEXT">" height="15" width="20" /&gt;</field>
                                                                                                             </block>
                                                                                                           </value>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                       <value name="ADD1">
                                                                                                         <block type="text" id="4rgo.Ek|R$~P.w|}mY~:">
                                                                                                           <field name="TEXT"> </field>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                       <value name="ADD2">
                                                                                                         <block type="variables_get" id="0|-AQlC+u7_!l+pZ()P|">
                                                                                                           <field name="VAR" id=")j[GnvK_2~2}$q!/M+t;">land</field>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                       <value name="ADD3">
                                                                                                         <block type="text" id="ZLeHRbssnJ_]T8-ZL.U1">
                                                                                                           <field name="TEXT"> / </field>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                       <value name="ADD4">
                                                                                                         <block type="variables_get" id="e/DltPU{]?F4pg`~)_we">
                                                                                                           <field name="VAR" id="2i7_N153+$/8+,0NNcKm">region</field>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                       <value name="ADD5">
                                                                                                         <block type="text" id="GJy$2~u0u[.{*U?1+Rs}">
                                                                                                           <field name="TEXT"> / </field>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                       <value name="ADD6">
                                                                                                         <block type="variables_get" id="h=cVYbl,lTADIV6nkO5G">
                                                                                                           <field name="VAR" id="P]hs1T;bQP8mPlO[gI,G">city</field>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                       <value name="ADD7">
                                                                                                         <block type="text" id="ZE^J~uZ*li-BOmL~jQU.">
                                                                                                           <field name="TEXT"> / </field>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                       <value name="ADD8">
                                                                                                         <block type="variables_get" id="cUms?WrPv]3zw;RDK5y*">
                                                                                                           <field name="VAR" id="54Xg:T_Q`!#x/w*E!=#_">provider</field>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                       <value name="ADD9">
                                                                                                         <block type="text" id="+]MQ2=#W5G(nn4:YaChr">
                                                                                                           <field name="TEXT"></field>
                                                                                                         </block>
                                                                                                       </value>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                 </block>
                                                                                               </next>
                                                                                             </block>
                                                                                           </next>
                                                                                         </block>
                                                                                       </next>
                                                                                     </block>
                                                                                   </next>
                                                                                 </block>
                                                                               </next>
                                                                             </block>
                                                                           </statement>
                                                                           <next>
                                                                             <block type="timeouts_wait" id="wDBP!}LPeaN}_$]qWUD@">
                                                                               <field name="DELAY">1000</field>
                                                                               <field name="UNIT">ms</field>
                                                                               <next>
                                                                                 <block type="variables_set" id="|eyOkaiKEzp!7`4O%q(|">
                                                                                   <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                                                                   <value name="VALUE">
                                                                                     <block type="text_join" id="x(/8M1*c0r0dOEHH1cS)">
                                                                                       <mutation items="11"></mutation>
                                                                                       <value name="ADD0">
                                                                                         <block type="variables_get" id="VzHd03_5cmr%mg68:0ji">
                                                                                           <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                                                                         </block>
                                                                                       </value>
                                                                                       <value name="ADD1">
                                                                                         <block type="text" id="z9{VZS;@wA6DcSRXU|HP">
                                                                                           <field name="TEXT">&lt;tr&gt;&lt;td&gt;</field>
                                                                                         </block>
                                                                                       </value>
                                                                                       <value name="ADD2">
                                                                                         <block type="logic_ternary" id="D+m)U.nXTcPv_JX:YS7L">
                                                                                           <value name="IF">
                                                                                             <block type="get_value_var" id="1]idlwI||{Ir$D,B5A7P">
                                                                                               <field name="ATTR">val</field>
                                                                                               <value name="OID">
                                                                                                 <shadow type="text">
                                                                                                   <field name="TEXT"></field>
                                                                                                 </shadow>
                                                                                                 <block type="variables_get" id="nK.1b}{e92ZLDcI$.0il">
                                                                                                   <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                                                                                 </block>
                                                                                               </value>
                                                                                             </block>
                                                                                           </value>
                                                                                           <value name="THEN">
                                                                                             <block type="text" id="5.nKN;dyw^TkA8W,K`TZ">
                                                                                               <field name="TEXT">&lt;details&gt;&lt;summary&gt;&lt;font size="3"&gt;&lt;b&gt;&lt;font color=green&gt;● &lt;/font&gt;&lt;/b&gt;</field>
                                                                                             </block>
                                                                                           </value>
                                                                                           <value name="ELSE">
                                                                                             <block type="text" id="W8$7%-Enk^.^P59Sri~6">
                                                                                               <field name="TEXT">&lt;details&gt;&lt;summary&gt;&lt;font size="3"&gt;&lt;b&gt;&lt;font color=red&gt;● &lt;/font&gt;&lt;/b&gt;</field>
                                                                                             </block>
                                                                                           </value>
                                                                                         </block>
                                                                                       </value>
                                                                                       <value name="ADD3">
                                                                                         <block type="procedures_callcustomreturn" id="2Gs#,[7gcB],_]RjLg~G">
                                                                                           <mutation name="Kanalname">
                                                                                             <arg name="id"></arg>
                                                                                           </mutation>
                                                                                           <value name="ARG0">
                                                                                             <block type="variables_get" id="d12Mji%YD(L:H{Wkl0MM">
                                                                                               <field name="VAR" id=",{9I3n95un{O]_ilfGaC">i</field>
                                                                                             </block>
                                                                                           </value>
                                                                                         </block>
                                                                                       </value>
                                                                                       <value name="ADD4">
                                                                                         <block type="text" id="DW)g%~#qYSVioQUxUf|,">
                                                                                           <field name="TEXT">&lt;/summary&gt;</field>
                                                                                         </block>
                                                                                       </value>
                                                                                       <value name="ADD5">
                                                                                         <block type="variables_get" id="s!ZU|P+d#p=*DzhAzYGl">
                                                                                           <field name="VAR" id="/^Xr+LwwMWgTWK)qZnsr">aufstellung_details</field>
                                                                                         </block>
                                                                                       </value>
                                                                                       <value name="ADD6">
                                                                                         <block type="text" id="Ii8Ty%UU0D~D]sl+@S{d">
                                                                                           <field name="TEXT">&lt;/details&gt;&lt;/td&gt;&lt;td&gt;</field>
                                                                                         </block>
                                                                                       </value>
                                                                                       <value name="ADD7">
                                                                                         <block type="math_rndfixed" id="f@oQ4S4q|5ZVJ|_RK2K1">
                                                                                           <field name="n">1</field>
                                                                                           <value name="x">
                                                                                             <shadow type="math_number" id="jqVp50z~0j@|9Pa;Vs85">
                                                                                               <field name="NUM">3.1234</field>
                                                                                             </shadow>
                                                                                             <block type="math_arithmetic" id="W$8Lgq;$GP-/D1yf?:QC">
                                                                                               <field name="OP">MULTIPLY</field>
                                                                                               <value name="A">
                                                                                                 <shadow type="math_number">
                                                                                                   <field name="NUM">1</field>
                                                                                                 </shadow>
                                                                                                 <block type="get_value_var" id="[k[#r$Ep@{eAywbF|L@9">
                                                                                                   <field name="ATTR">val</field>
                                                                                                   <value name="OID">
                                                                                                     <shadow type="text" id="61+ObyAGen}9iPcNi+~`">
                                                                                                       <field name="TEXT"></field>
                                                                                                     </shadow>
                                                                                                     <block type="variables_get" id="r5%+e]~rU()E]t43#};C">
                                                                                                       <field name="VAR" id="C/F_Y=6$Ds5n/qprHq[c">transferTx</field>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                 </block>
                                                                                               </value>
                                                                                               <value name="B">
                                                                                                 <shadow type="math_number" id="FZ8^[rYvFWTG+[:qc)Ll">
                                                                                                   <field name="NUM">0.000001</field>
                                                                                                 </shadow>
                                                                                               </value>
                                                                                             </block>
                                                                                           </value>
                                                                                         </block>
                                                                                       </value>
                                                                                       <value name="ADD8">
                                                                                         <block type="text" id="fduLOuSzL6I3562+u+G?">
                                                                                           <field name="TEXT"> MB&lt;/td&gt;&lt;td&gt;</field>
                                                                                         </block>
                                                                                       </value>
                                                                                       <value name="ADD9">
                                                                                         <block type="math_rndfixed" id="nN/RhZ7w/|CgqEfaRzOF">
                                                                                           <field name="n">1</field>
                                                                                           <value name="x">
                                                                                             <shadow type="math_number" id="%bQ@ali!%@n#vEUO{=UY">
                                                                                               <field name="NUM">3.1234</field>
                                                                                             </shadow>
                                                                                             <block type="math_arithmetic" id="CaI#H!wz.!V#J7Ebn?H5">
                                                                                               <field name="OP">MULTIPLY</field>
                                                                                               <value name="A">
                                                                                                 <shadow type="math_number" id="r4pDV]u/({hASSSM|$^{">
                                                                                                   <field name="NUM">1</field>
                                                                                                 </shadow>
                                                                                                 <block type="get_value_var" id=",,pB]^{h9sFjel_E?UNP">
                                                                                                   <field name="ATTR">val</field>
                                                                                                   <value name="OID">
                                                                                                     <shadow type="text" id="tnRvo,GMPgs~:?Rlg*0y">
                                                                                                       <field name="TEXT"></field>
                                                                                                     </shadow>
                                                                                                     <block type="variables_get" id="Y?k!u%5taY9)sxBsjIB@">
                                                                                                       <field name="VAR" id="S.FRC##Hw2?0w)V+rL^2">transferRx</field>
                                                                                                     </block>
                                                                                                   </value>
                                                                                                 </block>
                                                                                               </value>
                                                                                               <value name="B">
                                                                                                 <shadow type="math_number" id="w[mHdLVRLZCg=/Ori|2G">
                                                                                                   <field name="NUM">0.000001</field>
                                                                                                 </shadow>
                                                                                               </value>
                                                                                             </block>
                                                                                           </value>
                                                                                         </block>
                                                                                       </value>
                                                                                       <value name="ADD10">
                                                                                         <block type="text" id="z-)f|VOR{Z1a#3mt6f.D">
                                                                                           <field name="TEXT"> MB&lt;/td&gt;&lt;/tr&gt;</field>
                                                                                         </block>
                                                                                       </value>
                                                                                     </block>
                                                                                   </value>
                                                                                 </block>
                                                                               </next>
                                                                             </block>
                                                                           </next>
                                                                         </block>
                                                                       </next>
                                                                     </block>
                                                                   </next>
                                                                 </block>
                                                               </next>
                                                             </block>
                                                           </next>
                                                         </block>
                                                       </next>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </statement>
                                               <next>
                                                 <block type="variables_set" id="r7;.)AWzn~Og=WYuviOr">
                                                   <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                                   <value name="VALUE">
                                                     <block type="text_join" id="D~eCviT1huxfi`bAJKgT">
                                                       <mutation items="3"></mutation>
                                                       <value name="ADD0">
                                                         <block type="text" id=",uS[jZuG?eIg$q6{Wo0(">
                                                           <field name="TEXT">&lt;table width=100%&gt;&lt;tr&gt;&lt;td width=50%&gt;&lt;b&gt;Client&lt;/td&gt;&lt;td width=25%&gt;&lt;b&gt;gesendet&lt;/td&gt;&lt;td width=25%&gt;&lt;b&gt;empfangen&lt;/dt&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3"&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;</field>
                                                         </block>
                                                       </value>
                                                       <value name="ADD1">
                                                         <block type="variables_get" id="}aSY%Cu.eaFdn8d[piW`">
                                                           <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                                         </block>
                                                       </value>
                                                       <value name="ADD2">
                                                         <block type="text" id="5TIxI)3=1`v=5T=CkrsL">
                                                           <field name="TEXT">&lt;/table&gt;</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <next>
                                                     <block type="update" id="@m+uxxJM5NwXi;z[{2-{">
                                                       <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                       <field name="OID">0_userdata.0.VIS.Tabellen.Tabelle_Wireguard</field>
                                                       <field name="WITH_DELAY">FALSE</field>
                                                       <value name="VALUE">
                                                         <block type="variables_get" id="k,oGuXz4!Z~ev=Gf95%?">
                                                           <field name="VAR" id="smqD@1Uy]?O9IkTgYsh[">tabelle</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </next>
                                             </block>
                                           </next>
                                         </block>
                                       </statement>
                                     </block>
                                    </xml>
                                    

                                    NegaleinN Offline
                                    NegaleinN Offline
                                    Negalein
                                    Global Moderator
                                    schrieb am zuletzt editiert von
                                    #83

                                    @david-g sagte in Tester für WireGuard Adapter gesucht:

                                    Hab die Tabelle jetzt fertig. Falls jmd Interesse hat:

                                    Hallo David!

                                    Schaut sehr gut aus. Gefällt mir sehr.
                                    Kann ich den Export haben?

                                    Und für was wird das Blockly benötigt?

                                    ° Node.js: 20.17.0 NPM: 10.8.2
                                    ° Proxmox, Ubuntu 22.04.3 LTS
                                    ° Fixer ---> iob fix

                                    1 Antwort Letzte Antwort
                                    0
                                    • GrizzelbeeG Grizzelbee
                                      Aktuelle Test Version 1.1.0
                                      Veröffentlichungsdatum 07.03.2022
                                      Github Link https://github.com/Grizzelbee/ioBroker.wireguard

                                      Hier Adapter Beschreibung, Changelog etc.

                                      Hallo Zusammen,

                                      ich habe mir mal den Spass gemacht und einen WireGuard Adapter geschrieben mit dem man seine WireGuard Hosts und Peers monitoren kann.

                                      Vielleicht kann es ja jemand gebrauchen und mag testen:

                                      Sicherheitshinweis - Wichtige Änderung in 1.1.0:
                                      Nach aktuellem Kenntnisstand empfehle ich genau diese Konfig!
                                      Ab v1.1.0 kann der notwendige monitoring Befehl auch über sudo abgesetzt werden, wenn vorher eine entsprechende sudoers Regel erstellt wurde. Das Gute daran ist, dass ausschließlich genau dieser Befehl (mit genau diesen Parametern) ohne passwort abgesetzt werden kann - NICHTS anderes. Mehr oder weniger oder andere Parameter führen sofort zur Abfrage des Passwortes. Ausführlich ist das in Englisch in der Readme dokumentiert. Zur Bequemlichkeit hier an dieser Stelle auch noch einmal in Deutsch:
                                      Linux kann über sogenannte sudoers Regeln sehr genau steuern welcher User was alles darf. Wie das ganz genau geht hängt leider von der jeweiligen Linux Distro ab. Deshalb bitte im Zweifel und bei Unklarheiten google <name der distro> sudoers bemühen. Bei den meisten Distros läuft es aber auf folgendes heraus:

                                      1. visudo als adminstrativer User zum editieren der sudoers Datei aufrufen. Es wird dringend davon abgeraten sudoers auf einem anderen Wege zu editieren.
                                      2. Am Ende der Datei folgende Zeile hinzufügen: <name-des-monitoring-users> ALL=NOPASSWD:/usr/bin/wg show all dump (<name-des-monitoring-users> muss natürlich durch euren User ersetzt werden unnd /usr/binggf durch einen anderen Pfad falls wg irgendwo anders bei euch liegt. )
                                      3. Datei speichern

                                      Nach Eingabe dieser Regel kann in der Konfig das Häkchen bei sudogesetzt werden.

                                      Wichtige Änderung in 0.9.5:
                                      Ich nutze das wg-json script nicht mehr. Dadurch funktioniert der Adapter jetzt einfach so ohne weitere Handgriffe auf dem Server - aber es haben sich auch ein paar Datenpunkte geändert. Ggf. also bitte den Tree mal löschen und neu anlegen lassen. Latesthandshake sollte ein Datum sein! Und so ganz nebenbei werden jetzt auch WireGuard-Installationen auf Windows unterstützt.

                                      v1.1.0 (2022-03-06)

                                      • (grizzelbee) New: Added support for sudo when using a valid sudoers rule - refer to security hints in readme for more information
                                      • (grizzelbee) Upd: Documentation update regarding security
                                      • (grizzelbee) Upd: dependency update

                                      v1.0.0 (2022-02-25)

                                      • (grizzelbee) New: Added individual online state indicator for each interface
                                      • (grizzelbee) fix: Improved some data roles
                                      • (grizzelbee) fix: Improved documentation

                                      v0.9.5 (2022-02-22)

                                      • (grizzelbee) New: dropped use of wg-json script - not needed anymore
                                      • (grizzelbee) New: making internal use of wg show all dump command and self parsing the result
                                      • (grizzelbee) New: Added windows support by using the wg show all command
                                      • (grizzelbee) Upd: moved dependency admin to globalDependency as requested during adapter review

                                      v0.9.2 (2022-02-20)

                                      • (grizzelbee) Fix: removed unnecessary secret from index_m.html file
                                      • (grizzelbee) Fix: Using info.connection of adapter to indicate that at least one interface is online.
                                      • (grizzelbee) Fix: Updated adapter icon

                                      v0.9.1 (2022-02-19)

                                      • (grizzelbee) New: Improved optical quality of admin page - no technical improvements

                                      v0.9.0 (2022-02-18)

                                      • (grizzelbee) New: Improved documentation
                                      • (grizzelbee) New: Username and password for WireGuard hosts are getting encrypted now

                                      v0.8.0 (2022-02-17)

                                      • (grizzelbee) New: admin extended with second page
                                      • (grizzelbee) New: data file is getting parsed
                                      • (grizzelbee) New: data tree is getting populated
                                      • (grizzelbee) New: entire basic functionality is implemented
                                      • (grizzelbee) New: added plugin sentry
                                      NegaleinN Offline
                                      NegaleinN Offline
                                      Negalein
                                      Global Moderator
                                      schrieb am zuletzt editiert von
                                      #84

                                      @grizzelbee

                                      Ich kann nicht sagen, ob diese Meldungen vor der 1.5.0 auch schon gekommen sind.
                                      Mir sind sie gerade aufgefallen.

                                      wireguard.0 2023-06-29 08:51:01.437	info	State value to set for "wireguard.0.Nega-wg0.peers.xxxxxxxxxxxx.device" has to be type "undefined" but received type "string"
                                      wireguard.0 2023-06-29 08:51:01.436	info	State value to set for "wireguard.0.Nega-wg0.peers.xxxxxxxxxxxx.user" has to be type "undefined" but received type "string"
                                      

                                      ° Node.js: 20.17.0 NPM: 10.8.2
                                      ° Proxmox, Ubuntu 22.04.3 LTS
                                      ° Fixer ---> iob fix

                                      B 1 Antwort Letzte Antwort
                                      0
                                      • GrizzelbeeG Grizzelbee
                                        Aktuelle Test Version 1.1.0
                                        Veröffentlichungsdatum 07.03.2022
                                        Github Link https://github.com/Grizzelbee/ioBroker.wireguard

                                        Hier Adapter Beschreibung, Changelog etc.

                                        Hallo Zusammen,

                                        ich habe mir mal den Spass gemacht und einen WireGuard Adapter geschrieben mit dem man seine WireGuard Hosts und Peers monitoren kann.

                                        Vielleicht kann es ja jemand gebrauchen und mag testen:

                                        Sicherheitshinweis - Wichtige Änderung in 1.1.0:
                                        Nach aktuellem Kenntnisstand empfehle ich genau diese Konfig!
                                        Ab v1.1.0 kann der notwendige monitoring Befehl auch über sudo abgesetzt werden, wenn vorher eine entsprechende sudoers Regel erstellt wurde. Das Gute daran ist, dass ausschließlich genau dieser Befehl (mit genau diesen Parametern) ohne passwort abgesetzt werden kann - NICHTS anderes. Mehr oder weniger oder andere Parameter führen sofort zur Abfrage des Passwortes. Ausführlich ist das in Englisch in der Readme dokumentiert. Zur Bequemlichkeit hier an dieser Stelle auch noch einmal in Deutsch:
                                        Linux kann über sogenannte sudoers Regeln sehr genau steuern welcher User was alles darf. Wie das ganz genau geht hängt leider von der jeweiligen Linux Distro ab. Deshalb bitte im Zweifel und bei Unklarheiten google <name der distro> sudoers bemühen. Bei den meisten Distros läuft es aber auf folgendes heraus:

                                        1. visudo als adminstrativer User zum editieren der sudoers Datei aufrufen. Es wird dringend davon abgeraten sudoers auf einem anderen Wege zu editieren.
                                        2. Am Ende der Datei folgende Zeile hinzufügen: <name-des-monitoring-users> ALL=NOPASSWD:/usr/bin/wg show all dump (<name-des-monitoring-users> muss natürlich durch euren User ersetzt werden unnd /usr/binggf durch einen anderen Pfad falls wg irgendwo anders bei euch liegt. )
                                        3. Datei speichern

                                        Nach Eingabe dieser Regel kann in der Konfig das Häkchen bei sudogesetzt werden.

                                        Wichtige Änderung in 0.9.5:
                                        Ich nutze das wg-json script nicht mehr. Dadurch funktioniert der Adapter jetzt einfach so ohne weitere Handgriffe auf dem Server - aber es haben sich auch ein paar Datenpunkte geändert. Ggf. also bitte den Tree mal löschen und neu anlegen lassen. Latesthandshake sollte ein Datum sein! Und so ganz nebenbei werden jetzt auch WireGuard-Installationen auf Windows unterstützt.

                                        v1.1.0 (2022-03-06)

                                        • (grizzelbee) New: Added support for sudo when using a valid sudoers rule - refer to security hints in readme for more information
                                        • (grizzelbee) Upd: Documentation update regarding security
                                        • (grizzelbee) Upd: dependency update

                                        v1.0.0 (2022-02-25)

                                        • (grizzelbee) New: Added individual online state indicator for each interface
                                        • (grizzelbee) fix: Improved some data roles
                                        • (grizzelbee) fix: Improved documentation

                                        v0.9.5 (2022-02-22)

                                        • (grizzelbee) New: dropped use of wg-json script - not needed anymore
                                        • (grizzelbee) New: making internal use of wg show all dump command and self parsing the result
                                        • (grizzelbee) New: Added windows support by using the wg show all command
                                        • (grizzelbee) Upd: moved dependency admin to globalDependency as requested during adapter review

                                        v0.9.2 (2022-02-20)

                                        • (grizzelbee) Fix: removed unnecessary secret from index_m.html file
                                        • (grizzelbee) Fix: Using info.connection of adapter to indicate that at least one interface is online.
                                        • (grizzelbee) Fix: Updated adapter icon

                                        v0.9.1 (2022-02-19)

                                        • (grizzelbee) New: Improved optical quality of admin page - no technical improvements

                                        v0.9.0 (2022-02-18)

                                        • (grizzelbee) New: Improved documentation
                                        • (grizzelbee) New: Username and password for WireGuard hosts are getting encrypted now

                                        v0.8.0 (2022-02-17)

                                        • (grizzelbee) New: admin extended with second page
                                        • (grizzelbee) New: data file is getting parsed
                                        • (grizzelbee) New: data tree is getting populated
                                        • (grizzelbee) New: entire basic functionality is implemented
                                        • (grizzelbee) New: added plugin sentry
                                        ? Offline
                                        ? Offline
                                        Ein ehemaliger Benutzer
                                        schrieb am zuletzt editiert von Ein ehemaliger Benutzer
                                        #85

                                        @grizzelbee
                                        EDIT:
                                        ah, habs gefunden.. es gibt jetzt Datenpunkte.. ja ich weiss. wer lesen kann... stand im Changelog..
                                        Muss das Script aendern.. dann gehts .. :-)

                                        Hi,
                                        nach dem Update auf 1.5.0 werden mir die Clientnamen nicht mehr angezeigt in den Objekten .. ?
                                        c0d2a5bc-412c-4e12-a788-22eb3a1158af-image.png

                                        @David-G dein Blockly zeigt seit 1.5.0 auch nicht mehr den Clientnamen an.. geht das bei dir noch?
                                        b2177463-13d0-4ac9-a1e9-5cf386a8b665-image.png

                                        NegaleinN 1 Antwort Letzte Antwort
                                        0
                                        • NegaleinN Negalein

                                          @grizzelbee

                                          Ich kann nicht sagen, ob diese Meldungen vor der 1.5.0 auch schon gekommen sind.
                                          Mir sind sie gerade aufgefallen.

                                          wireguard.0 2023-06-29 08:51:01.437	info	State value to set for "wireguard.0.Nega-wg0.peers.xxxxxxxxxxxx.device" has to be type "undefined" but received type "string"
                                          wireguard.0 2023-06-29 08:51:01.436	info	State value to set for "wireguard.0.Nega-wg0.peers.xxxxxxxxxxxx.user" has to be type "undefined" but received type "string"
                                          
                                          B Nicht stören
                                          B Nicht stören
                                          bommel_030
                                          schrieb am zuletzt editiert von
                                          #86

                                          @negalein
                                          Hatte ich auch, einfach Objekte löschen und Adapter neu starten.

                                          @ilovegym
                                          Wenn ich den Changelog richtig verstanden habe wird das nicht mehr unterstützt. Hatte das auch gerne genutzt.

                                          NegaleinN 1 Antwort Letzte Antwort
                                          1
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          642

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe