User Tools

Site Tools


gluon:admin

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
gluon:admin [2022/04/13 17:45] MaciejKrügergluon:admin [2022/10/03 13:40] (current) MaciejKrüger
Line 2: Line 2:
  
 ====== Gluon Administration und Entwicklung ====== ====== Gluon Administration und Entwicklung ======
 +:!: [[Gluon/Admin/Mobil|Administration von Mobilgeräten aus]] 
  
  
-==== Was läuft hier und wie Verwalte ich das ====+ 
 +==== Was läuft hier und wie verwalte ich das ====
 Aktuelle Version, Gerät, etc abfragen via SSH  Aktuelle Version, Gerät, etc abfragen via SSH 
  
-''''` gluon-info '''' 
  
-Für webinterface außerhalb Config-Mode (d.h. im Betrieb) ist folgender SSH Befehl hilfreich  
  
-''''` ssh root@KNOTEN -L 12345:localhost:81 ''''+<file>gluon-info 
 +</file> 
 +Für Webinterface außerhalb der Config-Mode (d.h. im Betrieb) ist folgender SSH Befehl hilfreich
  
-Unter [[http://localhost:12345|http://localhost:12345]] kann der knoten dann verwaltet werden.  
  
-WICHTIG: entweder via ssh ''uci commit'' für speichern bzw ''gluon-reconfigure && gluon-reload'' für Übernehmen oder ''speichern & neustarten'' im wizard anwählen, sonst wird nichts gespeichert/angewendet  
  
 +<file>ssh root@KNOTEN -L 12345:localhost:81
 +</file>
 +Unter [[http://localhost:12345|http://localhost:12345]] kann der Knoten dann verwaltet werden. 
 +
 +WICHTIG: entweder via ssh ''uci commit'' für speichern bzw. ''gluon-reconfigure && gluon-reload'' für Übernehmen oder ''speichern & neustarten'' im Wizard anwählen, sonst wird nichts gespeichert/angewendet 
 +
 +:!: Der Login zum Webinterface im Betrieb ist ausschließlich über SSH-Tunnel möglich. Dies verbessert die Sicherheit des Netzes und trägt dazu bei das z.B. die Rechte einzelner Personen ordentlich einkassiert werden können ohne globale Passwort-Änderungen. 
 +
 +
 +
 +=== Liste der vorinstallieren SSH-keys ===
 +
 +
 +<file>    -- mkg20001
 +    'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIBBEhZ7sLQCNZXBunHMxEDS2Niy3wpnHgUPDBCNeKew mkg20001@gmail.com',
 +    -- gabor
 +    'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOJQSyzxAt5NJ3+IhwI0+Qvg0s4zofVJjizulhuwcSZo gabor@g',
 +    -- av
 +    'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILx3bNdCoR8CmDS30bGP+/QaC/3P4XfZUz6Kt5poDfAS av',
 +    -- reinisch
 +    'ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA53/y7tolRs/+hySECf4rfUYrs7FIzh6qBhmUM/IADLYm/NEwHTrWp+zXBs6xYXTKkgTmjDurA8Knl+ow/BCETS5vCgfhNtSb1O9YO40+8NEF0fSPjyNcMXkJTy+4Lvaq3kwWf8BkD6s+8rxJPZJpPXg7UDm8PXnL71BwTVuCEfI3WQlGdXpbjbh6C1FDLUleWi3LmWJvMLow0gwAUvpEF6wJSkmuHTxvs4t8EYDjlcQwqfPnqRqcpIb9rgNGmWWP+E1BJA9o41IzetSh2jDCnPAjTqOw5FWcFY9MKNh9y/AygryVvCsWval17ctz/WXRM+26QZuZaje7lAnsuedsUw== w@0032 w@0037',
 +</file>
  
  
 ==== Was machen meine Pakete ==== ==== Was machen meine Pakete ====
-==== Teil 1: war es die Firewall?  
  
 +
 +=== Teil 1: War es die Firewall? ===
 Firewall debuggen  Firewall debuggen 
  
-Interesannte Zonen: mesh (alles was mit mesh zutun hat, außer LAN mesh) wired_mesh (Nur LAN mesh) loc_client (Client AP) +Interessante Zonen: mesh (alles was mit mesh zu tun hat, außer LAN mesh) wired_mesh (Nur LAN mesh) loc_client (Client AP) 
  
 Zone Debuggen  Zone Debuggen 
  
-''''` uci set firewall.ZONE.log=1 uci set firewall.ZONE.log_limit=10/second uci commit service firewall reload '''' 
  
 +
 +<file>uci set firewall.ZONE.log=1
 +uci set firewall.ZONE.log_limit=10/second
 +uci commit
 +service firewall reload
 +</file>
 Dann ''logread -f'' und Spaß haben  Dann ''logread -f'' und Spaß haben 
  
  
  
-=== Teil 2: was zur Hölle? (Wireshark muss ran) ===+=== Teil 2: Was zur Hölle? (Wireshark muss ran) ===
 Die Pakete können auch per Wireshark angezapft werden, tcpdump ist vorinstalliert  Die Pakete können auch per Wireshark angezapft werden, tcpdump ist vorinstalliert 
  
 Anzapfen geht via sshdump Adapter in Wireshark (dazu in der liste unten das Zahnrad neben dem Adapter anwählen)  Anzapfen geht via sshdump Adapter in Wireshark (dazu in der liste unten das Zahnrad neben dem Adapter anwählen) 
  
-Interface bestenfalls any, zum filtern macht es Sinn ''!olsrd && !openvpn'' zu benutzen, um Noise zu filtern +Interface bestenfalls any, zum Filtern macht es Sinn ''!olsrd && !openvpn'' zu benutzen, um Noise zu filtern 
  
-WICHTIG: Wenn der zugriff auf die Node über das mesh selbst erfolgt ist eventuelle rückkoplung durch mesh Traffic möglich. Der "not (port 22)" filter fängt das idR aber bei mesh VPN wirds kritisch. +WICHTIG: Wenn der zugriff auf die Node über das mesh selbst erfolgtist eventuelle Rückkopplung durch mesh Traffic möglich. Der "not (port 22)" filter fängt das idRaber bei mesh VPN wirds kritisch. 
  
-===== Performance ====  
  
 +
 +==== Was macht mein OLSR ====
 +
 +
 +=== Nachbarn auflisten ===
 +
 +
 +<file>olsrd-cli olsr1 neigh
 +olsrd-cli olsr2 neigh
 +</file>
 +
 +
 +=== Daten abfragen ===
 +
 +
 +<file>olsrd-cli olsr1 nodeinfo all
 +
 +olsrd-cli olsr2 nodeinfo json <befehl>
 +# bzw
 +olsrd-cli olsr2 nodeinfo raw help
 +</file>
 +
 +
 +==== Performance ====
 Performance zwischen zwei Nodes testen  Performance zwischen zwei Nodes testen 
  
Line 50: Line 101:
  
 == Server == == Server ==
-''''` iptables -I INPUT -p tcp -m tcp --dport 5201 -j ACCEPT ip6tables -I INPUT -p tcp -m tcp --dport 5201 -j ACCEPT iperf3 -s '''' 
  
 +
 +<file>iptables -I INPUT -p tcp -m tcp --dport 5201 -j ACCEPT
 +ip6tables -I INPUT -p tcp -m tcp --dport 5201 -j ACCEPT
 +iperf3 -s
 +</file>
  
  
 == Client == == Client ==
-''''` iperf3 -c IP '''' 
  
 +
 +<file>iperf3 -c IP
 +</file>
  
  
-=== ManMan Sync ===+==== ManMan Sync ====
 manman-sync übernimmt die interface ips die im [[:ManMan|ManMan]] angegeben sind  manman-sync übernimmt die interface ips die im [[:ManMan|ManMan]] angegeben sind 
  
-Abgerufen werden diese vom Knoten jede stunde (jeweils zu zufälliger, gleichbleibender Minute). Auf [[:ManApi|ManApi]] wird die Info ebenfalls für eine Stunde gecached +Abgerufen werden diese vom Knoten jede Stunde (jeweils zu zufälliger, gleichbleibender Minute). Auf [[:ManApi|ManApi]] wird die Info ebenfalls für eine Stunde gecached 
  
 Folgendes Namensschema wird verwendet, um ein [[:ManMan|ManMan]] Interface in ein Gluon Interface umzuwandeln  Folgendes Namensschema wird verwendet, um ein [[:ManMan|ManMan]] Interface in ein Gluon Interface umzuwandeln 
  
-''''` wifi -> mesh_radio0 tunnel -> mesh_vpn * (z.B. radio1) -> mesh_* *_* (z.B. ibss_radio0) -> *_* '''' 
  
 +
 +<file>wifi -> mesh_radio0
 +tunnel -> mesh_vpn
 +wan -> mesh_uplink
 +lan -> mesh_other
 +* (z.B. radio1) -> mesh_*
 +*_* (z.B. ibss_radio0) -> *_*
 +</file>
 In Gluon wird die Wi-Fi-IP für 802.11s verwendet  In Gluon wird die Wi-Fi-IP für 802.11s verwendet 
  
Line 74: Line 138:
 Ungültige Interfacenamen werden in gluon-static-ip config geworfen und bleiben dort für immer (oder bis jemand sie aufräumt), sind aber effektiv wirkungslos  Ungültige Interfacenamen werden in gluon-static-ip config geworfen und bleiben dort für immer (oder bis jemand sie aufräumt), sind aber effektiv wirkungslos 
  
-WICHTIG: aktuell gibt es noch kein rollback Support. d.h. kaputtmachen ist leicht. Das wird in Zukunft dann besser gemacht. +WICHTIG: aktuell gibt es noch kein Rollback Support. d.h. kaputtmachen ist leicht. Das wird in Zukunft dann besser gemacht. 
  
  
  
-=== gdb ===+==== gdb ====
 Was macht mein C code?  Was macht mein C code? 
  
-- in targets/x86-64 'gdb' und 'gdbserver' ergänzen (nicht commiten, nur lokal) - x86-64 qemu debug bauen, irgendwo starten  
  
 +  * in targets/x86-64 'gdb' und 'gdbserver' ergänzen (nicht commiten, nur lokal) 
 +  * x86-64 qemu debug bauen, irgendwo starten 
 +    * make GLUON_DEBUG=1 GLUON_TARGET=x86-64 -j12 
 +
 +    In /etc/config/firewall GDB durch die firewall lassen: 
 +
 +
 +<file>config rule 'allow_gdb'
 +        option name 'Allow GDB'
 +        option src '*'
 +        option proto 'tcp'
 +        option dest_port '3344'
 +        option target 'ACCEPT'
 +</file>
 +
 +  * GDBServer starten: 
 +
 +
 +<file>gdbserver --attach 0.0.0.0:3344 PID
 +</file>
 +
 +  * Lokal dann mit gdb oder pwndbg verbinden 
  
-  * - make GLUON_DEBUG=1 GLUON_TARGET=x86-64 -j12  
-- Befehle Ausführen:  
  
-''''` iptables -I INPUT -p tcp -m tcp --dport 3344 -j ACCEPT ip6tables -I INPUT -p tcp -m tcp --dport 3344 -j ACCEPT gdbserver --attach 0.0.0.0:3344 PID ''''+<file>target remote <ip>:3344 
 +</file>
  
-- Lokal dann mit gdb oder pwndbg verbinden ''''` target remote <ip>:3344 '''' 
  
  
gluon/admin.1649871900.txt · Last modified: by MaciejKrüger

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki