Benutzer:Cptechnik/pimp-my-router-cp: Unterschied zwischen den Versionen
(Die Seite wurde neu angelegt: „==== Meine (cptechnik) SSH Vereinfachungen ==== ===== Hostnamen statt IP-Adressen benutzen ===== echo "2a03:2260:0118:0063:dont:ask4:my1:ipv6 myff1" >>/etc/h…“) |
|||
(18 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
=== Meine (cptechnik) SSH Vereinfachungen === | |||
Wer faul ist ist auch schlau. | |||
Wer die Linux Konsole kennt und erlernt hat, kennt Abkürzungen, ich stelle meine vor. | |||
===== Hostnamen statt IP-Adressen benutzen ===== | ==== Randbemerkung ==== | ||
'2a03:2260:0118:0063:dont:ask4:my2:ipv6' und 'myff1'/'myff2' sind fiktive, erfundene IP-Adressen und Hostnamen, mir fällt das leichter zu erkennen als Platzhalter wie "<Link-lokale Adresse des Nodes>". | |||
==== reine shell wrapper ==== | |||
===== Map/Karte aus/an ===== | |||
Vorbereitung: | |||
echo "uci set gluon-node-info.@location[0].share_location='1'">gluon-mapon;echo "uci set gluon-node-info.@location[0].share_location='0'">gluon-mapoff;chmod +x gluon-map*;mv gluon-map* /usr/bin | |||
Anwenden: | |||
gluon-mapon # schaltet das Anzeigen auf der Karte ein (Vorrausgesetzt dass es Konfiguriert wurde) | |||
gluon-mapoff # schaltet das Anzeigen auf der Karte aus | |||
===== switch domain ===== | |||
Vorbereitung | |||
echo "gluon-switch-domain ffkbu_hood_bonn">gluon-swbn;echo "gluon-switch-domain ffkbu_hood_umland">gluon-swum;chmod +x gluon-*;mv gluon-sw* /usr/bin | |||
Anwenden | |||
gluon-swbn # wechselt nach Bonn | |||
gluon-swum # wechselt nach Umland | |||
===== Neustart/Reboot in den Konfigurationsmodus ===== | |||
uci set gluon-setup-mode.@setup_mode[0].enabled=1 | |||
uci commit gluon-setup-mode | |||
reboot | |||
oder | |||
uci set gluon-setup-mode.@setup_mode[0].enabled=1;uci commit gluon-setup-mode;reboot | |||
geht einfacher | |||
* ab 2022: gluon-enter-setup-mode | |||
* bis 2021: | |||
** ` echo uci set gluon-setup-mode.@setup_mode[0].enabled=1;uci commit gluon-setup-mode;reboot">ges;chmod +x ges;mv ges /usr/bin ` | |||
==== Schnittstellen neustarten ==== | |||
* echo "wifi;ip link set wr-wan down;ip link set wr-wan up;">iprefresh | |||
* besteht aus | |||
** wifi | |||
** ip link set wr-wan down | |||
** ip link set wr-wan up | |||
das ganze in eine Datei geschrieben... iprefresh , ausführbar gemacht (chmod +x iprefresh) und in /usr/bin (mv iprefresh /usr/bin/) verfrachtet. | |||
(könnte auch br-wan heissen... ) | |||
==== Hostnamen statt IP-Adressen benutzen ==== | |||
===== Hinzufügen mit echo ===== | |||
echo "2a03:2260:0118:0063:dont:ask4:my1:ipv6 myff1" >>/etc/hosts | echo "2a03:2260:0118:0063:dont:ask4:my1:ipv6 myff1" >>/etc/hosts | ||
echo "2a03:2260:0118:0063:dont:ask4:my2:ipv6 myff2" >>/etc/hosts | echo "2a03:2260:0118:0063:dont:ask4:my2:ipv6 myff2" >>/etc/hosts | ||
fügt den Hostnamen am lokalen ff-Router für die IPv6 Adresse hinzu. ( | fügt den Hostnamen am lokalen ff-Router für die IPv6 Adresse hinzu. <br> | ||
(gilt für ff-Router und Linux-PC, an dem das aber auch root machen muss) | |||
Statt | Statt | ||
ssh 2a03:2260:0118:0063:dont:ask4:my1:ipv6 | ssh root@2a03:2260:0118:0063:dont:ask4:my1:ipv6 | ||
nur noch | nur noch | ||
ssh myff1 | ssh myff1 | ||
Zeile 12: | Zeile 57: | ||
===== Kopieren des ssh Schlüssels ===== | ===== Bearbeiten ===== | ||
Kopieren (des ssh Schlüssels) die ssh-Schlüssel¹ | Mit dem auf dem Freifunk-Router installierten VIM Editor (vi) | ||
scp /etc/dropbear/authorized_keys | [[https://wiki.ubuntuusers.de/VIM/ ubuntuusers.de/VIM]] | ||
können die Einträge bearbeitet werden. | |||
Dazu muss man sich ein wenig mit vi auseinandersetzen, die wichtigsten Befehle sind | |||
* i - Editormodus | |||
* ESC - Viewermodus | |||
** :q - Schließen ohne Speichern ...und wenn er meckert... | |||
** :q! - Schließen ohne Speichern, auch wenn was verändert wurde... | |||
** :wq - Speichern und Schließen | |||
** dd - Zeile löschen | |||
==== Kopieren des ssh Schlüssels ==== | |||
===== vom Linux-PC zum anderen ff-Router ===== | |||
scp -6 id_rsa4096.pub root@[2a03:2260:0118:0063:dont:ask4:my1:ipv6%eth0]:/etc/dropbear/authorized_keys | |||
bzw | |||
scp -6 ~/.ssh/id_rsa.pub root@[2a03:2260:0118:0063:dont:ask4:my1:ipv6%eth0]:/etc/dropbear/authorized_keys | |||
oder | |||
cat ~/.ssh/id_rsa4096.pub | ssh root@[<Link-lokale Adresse des Nodes>%eth0] 'umask 077; cat >>/etc/dropbear/authorized_keys' | |||
bzw | |||
cat ~/.ssh/id_rsa.pub | ssh myff1 'umask 077; cat >>/etc/dropbear/authorized_keys' | |||
===== vom ff-Router zum anderen ff-Router ===== | |||
Kopieren (des ssh Schlüssels) die ssh-Schlüssel¹ vom lokalen Freifunkrouter auf den (neuen) entfernten Freifunk-Router | |||
scp /etc/dropbear/authorized_keys myff1:/etc/dropbear/authorized_keys | |||
¹hier wird die ganze Schlüsseldatei kopiert, hier wird nicht zwischen unterschiedlichen Admins und unterschiedlich verwalteten Routern unterschieden! | ¹hier wird die ganze Schlüsseldatei kopiert, hier wird nicht zwischen unterschiedlichen Admins und unterschiedlich verwalteten Routern unterschieden! | ||
==== whatsup ==== | |||
ssh dh4 batctl tl |grep W ;ssh dh2 batctl tl |grep W;ssh dh1 batctl tl |grep W | |||
=== Aliase === | |||
echo "alias gluon-esm='uci set gluon-setup-mode.@setup_mode[0].enabled=1;uci commit gluon-setup-mode;reboot'">>/etc/shinit | |||
...irgendwie funktioniert das nicht... | |||
== Prompt in Farbe == | |||
* echo "PS1='\[\033[38;5;199;1m\]\h \[\033[38;5;227;1m\]\$PWD\[\033[0m\] \[\033[38;5;199;1m\]\$\[\033[0m\] '" >.profile | |||
** magenta/gelb | |||
* echo "PS1='\[\033[38;5;199;1m\]\h \[\033[38;5;227;1m\]\$PWD\[\033[0m\] \[\033[38;5;199;1m\]\$\[\033[0m\] '" >/tmp/ffprofile | |||
* scp .profile ffrouterhostname:.profile | |||
* for COLOR in $(seq 1 254); do echo -e "\033[38;5;${COLOR}m${COLOR}\033[0m"; done; | |||
* for COLOR in $(seq 1 254); do echo -e -n " \033[38;5;${COLOR}m${COLOR}\033[0m"; done; | |||
* PS1='\[\033[38;5;170;1m\]\h \[\033[38;5;185;1m\]$PWD\[\033[0m\] \[\033[38;5;170;1m\]$\[\033[0m\] ' | |||
* for FF in $(seq 0 4); do scp ffprofile cpt0${FF}:.profile; done; | |||
* echo "PS1='\[\033[31;1m\]\h \[\033[32;1m\]\$PWD\[\033[0m\] \[\033[31m\]\$\[\033[0m\] '" >/root/.profile | |||
** hellrot / grün | |||
*https://en.wikipedia.org/wiki/ANSI_escape_code#graphics | |||
== Alias(e) == | |||
Ein Alias oder mehrere Aliase können für komplizierte wiederkehrende Befehle eingetragen werden. | |||
Zum Beispiel: | |||
"ll" statt "ls- l" --oder-- beim aufruf von "ls" immer coloriert darstellen (--color=auto) | |||
Der Eintrag | |||
"alias ll='ls -l'" | |||
erzeugt das. | |||
(Der ist in der 'v2022.1.1-6-gccd7fa3+ / ca486f1' schon eingetragen) | |||
Gespeichert werden die Aliase in | |||
* Bash in ~/.bashrc | |||
* Z-Shell in ~/.zshrc | |||
und im Freifunk-Router (2022) | |||
* -ash in /etc/shinit | |||
Dort könnt ihr dann auch weitere Abkürzungen vornehmen! | |||
== Videos von Martin Leyrer == | |||
* Martin Leyrer, "Fortgeschrittene IT-Magie" https://martin.leyrer.priv.at | |||
Martin Leyrer hält leidenschaftlich und gute Vorträge für Einsteiger auf verschiedenen Veranstaltungen. Ich habe einpaar hier mal verlinkt die man unter Linux, mit ssh gebrauchen kann. | |||
=== Besser leben mit SSH === | |||
~/.ssh/config | |||
* https://www.youtube.com/watch?v=qvdlLTyUJ5I #GPN20 | |||
* Für Einsteiger hat Leyrer einen Vortrag in der #GPN20 (Gulasch Programmier-Nacht) über SSH und die passende Konfigurationsdatei .ssh/config einen Vortrag gehalten. Auch für Windows/Putty hat er einen kleinen Abstecher gemacht. | |||
=== Moderne Linux Kommandozeilenwerkzeuge === | |||
==== #GPN20 Edition "Allein zu Haus" ==== | |||
==== 2019 ==== | |||
==== 2018 ==== | |||
Kommandos: ''dig'', tracepath, mtr, oping, iprout2, ''tmux'', ''zsh'', ranger, HTTPie, aria2c, ''jq'', icdiff, colordiff, ''ripgrep'', fd, z, exa, ''fzf'', pv, progress |
Aktuelle Version vom 19. Februar 2023, 13:05 Uhr
Meine (cptechnik) SSH Vereinfachungen
Wer faul ist ist auch schlau. Wer die Linux Konsole kennt und erlernt hat, kennt Abkürzungen, ich stelle meine vor.
Randbemerkung
'2a03:2260:0118:0063:dont:ask4:my2:ipv6' und 'myff1'/'myff2' sind fiktive, erfundene IP-Adressen und Hostnamen, mir fällt das leichter zu erkennen als Platzhalter wie "<Link-lokale Adresse des Nodes>".
reine shell wrapper
Map/Karte aus/an
Vorbereitung:
echo "uci set gluon-node-info.@location[0].share_location='1'">gluon-mapon;echo "uci set gluon-node-info.@location[0].share_location='0'">gluon-mapoff;chmod +x gluon-map*;mv gluon-map* /usr/bin
Anwenden:
gluon-mapon # schaltet das Anzeigen auf der Karte ein (Vorrausgesetzt dass es Konfiguriert wurde) gluon-mapoff # schaltet das Anzeigen auf der Karte aus
switch domain
Vorbereitung
echo "gluon-switch-domain ffkbu_hood_bonn">gluon-swbn;echo "gluon-switch-domain ffkbu_hood_umland">gluon-swum;chmod +x gluon-*;mv gluon-sw* /usr/bin
Anwenden
gluon-swbn # wechselt nach Bonn gluon-swum # wechselt nach Umland
Neustart/Reboot in den Konfigurationsmodus
uci set gluon-setup-mode.@setup_mode[0].enabled=1 uci commit gluon-setup-mode reboot
oder
uci set gluon-setup-mode.@setup_mode[0].enabled=1;uci commit gluon-setup-mode;reboot
geht einfacher
- ab 2022: gluon-enter-setup-mode
- bis 2021:
- ` echo uci set gluon-setup-mode.@setup_mode[0].enabled=1;uci commit gluon-setup-mode;reboot">ges;chmod +x ges;mv ges /usr/bin `
Schnittstellen neustarten
- echo "wifi;ip link set wr-wan down;ip link set wr-wan up;">iprefresh
- besteht aus
- wifi
- ip link set wr-wan down
- ip link set wr-wan up
das ganze in eine Datei geschrieben... iprefresh , ausführbar gemacht (chmod +x iprefresh) und in /usr/bin (mv iprefresh /usr/bin/) verfrachtet.
(könnte auch br-wan heissen... )
Hostnamen statt IP-Adressen benutzen
Hinzufügen mit echo
echo "2a03:2260:0118:0063:dont:ask4:my1:ipv6 myff1" >>/etc/hosts echo "2a03:2260:0118:0063:dont:ask4:my2:ipv6 myff2" >>/etc/hosts
fügt den Hostnamen am lokalen ff-Router für die IPv6 Adresse hinzu.
(gilt für ff-Router und Linux-PC, an dem das aber auch root machen muss)
Statt
ssh root@2a03:2260:0118:0063:dont:ask4:my1:ipv6
nur noch
ssh myff1
("root@" wurde hier schon weggekürzt, da man schon in einem ff-Router ist, dort ist man ja schon Root)
Bearbeiten
Mit dem auf dem Freifunk-Router installierten VIM Editor (vi) [ubuntuusers.de/VIM] können die Einträge bearbeitet werden. Dazu muss man sich ein wenig mit vi auseinandersetzen, die wichtigsten Befehle sind
- i - Editormodus
- ESC - Viewermodus
- :q - Schließen ohne Speichern ...und wenn er meckert...
- :q! - Schließen ohne Speichern, auch wenn was verändert wurde...
- :wq - Speichern und Schließen
- dd - Zeile löschen
Kopieren des ssh Schlüssels
vom Linux-PC zum anderen ff-Router
scp -6 id_rsa4096.pub root@[2a03:2260:0118:0063:dont:ask4:my1:ipv6%eth0]:/etc/dropbear/authorized_keys
bzw
scp -6 ~/.ssh/id_rsa.pub root@[2a03:2260:0118:0063:dont:ask4:my1:ipv6%eth0]:/etc/dropbear/authorized_keys
oder
cat ~/.ssh/id_rsa4096.pub | ssh root@[<Link-lokale Adresse des Nodes>%eth0] 'umask 077; cat >>/etc/dropbear/authorized_keys'
bzw
cat ~/.ssh/id_rsa.pub | ssh myff1 'umask 077; cat >>/etc/dropbear/authorized_keys'
vom ff-Router zum anderen ff-Router
Kopieren (des ssh Schlüssels) die ssh-Schlüssel¹ vom lokalen Freifunkrouter auf den (neuen) entfernten Freifunk-Router
scp /etc/dropbear/authorized_keys myff1:/etc/dropbear/authorized_keys
¹hier wird die ganze Schlüsseldatei kopiert, hier wird nicht zwischen unterschiedlichen Admins und unterschiedlich verwalteten Routern unterschieden!
whatsup
ssh dh4 batctl tl |grep W ;ssh dh2 batctl tl |grep W;ssh dh1 batctl tl |grep W
Aliase
echo "alias gluon-esm='uci set gluon-setup-mode.@setup_mode[0].enabled=1;uci commit gluon-setup-mode;reboot'">>/etc/shinit
...irgendwie funktioniert das nicht...
Prompt in Farbe
- echo "PS1='\[\033[38;5;199;1m\]\h \[\033[38;5;227;1m\]\$PWD\[\033[0m\] \[\033[38;5;199;1m\]\$\[\033[0m\] '" >.profile
- magenta/gelb
- echo "PS1='\[\033[38;5;199;1m\]\h \[\033[38;5;227;1m\]\$PWD\[\033[0m\] \[\033[38;5;199;1m\]\$\[\033[0m\] '" >/tmp/ffprofile
- scp .profile ffrouterhostname:.profile
- for COLOR in $(seq 1 254); do echo -e "\033[38;5;${COLOR}m${COLOR}\033[0m"; done;
- for COLOR in $(seq 1 254); do echo -e -n " \033[38;5;${COLOR}m${COLOR}\033[0m"; done;
- PS1='\[\033[38;5;170;1m\]\h \[\033[38;5;185;1m\]$PWD\[\033[0m\] \[\033[38;5;170;1m\]$\[\033[0m\] '
- for FF in $(seq 0 4); do scp ffprofile cpt0${FF}:.profile; done;
- echo "PS1='\[\033[31;1m\]\h \[\033[32;1m\]\$PWD\[\033[0m\] \[\033[31m\]\$\[\033[0m\] '" >/root/.profile
- hellrot / grün
- https://en.wikipedia.org/wiki/ANSI_escape_code#graphics
Alias(e)
Ein Alias oder mehrere Aliase können für komplizierte wiederkehrende Befehle eingetragen werden.
Zum Beispiel: "ll" statt "ls- l" --oder-- beim aufruf von "ls" immer coloriert darstellen (--color=auto)
Der Eintrag "alias ll='ls -l'" erzeugt das. (Der ist in der 'v2022.1.1-6-gccd7fa3+ / ca486f1' schon eingetragen)
Gespeichert werden die Aliase in
- Bash in ~/.bashrc
- Z-Shell in ~/.zshrc
und im Freifunk-Router (2022)
- -ash in /etc/shinit
Dort könnt ihr dann auch weitere Abkürzungen vornehmen!
Videos von Martin Leyrer
- Martin Leyrer, "Fortgeschrittene IT-Magie" https://martin.leyrer.priv.at
Martin Leyrer hält leidenschaftlich und gute Vorträge für Einsteiger auf verschiedenen Veranstaltungen. Ich habe einpaar hier mal verlinkt die man unter Linux, mit ssh gebrauchen kann.
Besser leben mit SSH
~/.ssh/config
- https://www.youtube.com/watch?v=qvdlLTyUJ5I #GPN20
- Für Einsteiger hat Leyrer einen Vortrag in der #GPN20 (Gulasch Programmier-Nacht) über SSH und die passende Konfigurationsdatei .ssh/config einen Vortrag gehalten. Auch für Windows/Putty hat er einen kleinen Abstecher gemacht.
Moderne Linux Kommandozeilenwerkzeuge
#GPN20 Edition "Allein zu Haus"
2019
2018
Kommandos: dig, tracepath, mtr, oping, iprout2, tmux, zsh, ranger, HTTPie, aria2c, jq, icdiff, colordiff, ripgrep, fd, z, exa, fzf, pv, progress