Project: TURRIS - automatická změna RGB LED dle provozu
Tento návod vznikl inspirací různých skriptů nalezených buď na internetu nebo na fóru Turris. Návod zde uvádím zejména z důvodu mít vše na jednom místě (samotnému mi trvalo poměrně dlouhou dobu, než jsem se zorientoval a vybral/zkombinoval to, co mi bude vyhovovat). Je tedy vysoce pravděpodobné, že si případní původní autoři mohou poznat svůj základ nebo i části skriptu. Tímto jím rozhodně neupírám jejich zásluhy a naopak jim děkuji.
Návod pro automatickou změnu RGB LED umístěných na čelním panelu dle aktuálního provozu/dostupnosti konkrétních definovaných věcí a tímto poskytovat "na první pohled" i základní informaci o svém stavu. Skript primárně obarví LED PWR na zelenou barvu, dále sleduje dostupnost Google DNS serveru (8.8.8.8) a v případě dostupnosti obarví WAN diodu na zeleno (v případně nedostupnosti na červeno, což zároveň značí i ztrátu konektivity). Dále sleduje dostupnost připojeného VPN klienta (v příkladu IP adresa 192.168.100.1), kdy v případě jeho připojení přebarví WAN LED na barvu 'A403FF' (fialová). Jako poslední věc sleduje, zdali je někdo připojen přes WiFi (nastavením parametru GT si volíme počet, od kterého se změní indikace). V případě, že je daný počet klientů (může být i jeden) připojen, je LED WIFI obarvena červeně. Pokud není nikdo připojen, svítí zeleně.
Pro každý návod je třeba mít připojen router prostřednictvím SSH, tedy v případě Windows doporučuji například program Putty. Tedy v konzoli musíte vidět:
root@turris:~#
V adresáři /root/sh (nemáte-li, vytvořte si podadresář 'sh') vytvořte soubor 'led_status.sh' a do jeho obsahu vložte:
#!/bin/sh #if iw dev wlan0 station dump rainbow pwr green enable #nastaveni PWR na zeleno if ping -c 1 -w 3 8.8.8.8 #test internetu then if ping -c 1 -w 2 192.168.100.1 #test vpn klienta then rainbow wan A403FF auto #pripojen internet i VPN else rainbow wan green auto #chybi VPN fi else rainbow wan red auto #vypadek internetu fi #testovani rozhrani WiFi, parametr gt urcuje pocet pripojenych zarizeni if [ `iw dev wlan0 station dump | grep -c Station 2>/dev/null` -gt 1 ]; then rainbow wifi red auto else rainbow wifi green auto fi
Pokud přesně nevíte jak nebo nepotřebujete ve skriptu nic měnit, můžete rovnou využít stažení skriptu přímo:
wget 'http://www.s474n.com/download/Turris/led_status.sh' > /root/sh/led_status.sh
Nastavíme skript pomocí 'chmod +x' spustitelný:
chmod +x /root/sh/led_status.sh
Jako poslední věc vytvoříme soubor 'led_status' v adresáři '/etc/cron.d/', tento zabezpečí automatické spouštění skriptu každou minutu a právě ono automatické přenastavení RGB dle výše uvedených parametrů:
MAILTO="" * * * * * root /root/sh/led_status.sh
Nyní by vše mělo být nastaveno a zajištěno spouštění skriptu.