Autoreboot per ssh einrichten

Aus Freifunk Rhein-Neckar Wiki
Version vom 28. Januar 2020, 17:15 Uhr von Maintenance script (Diskussion | Beiträge) (Import der alten DokuWiki)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Auto-Reboot per SSH einrichten

Bei manchen Router-Modellen kann es manchmal vorkommen, dass diese nach längerer Laufzeit ihre Verbindung zum Freifunknetz verlieren. In diesen Fällen ist dann z.B. ein Fernzugriff auf das Gerät nicht mehr möglich. Der Router muss von Hand neu gestartet werden, damit er sich wieder richtig mit dem Freifunknetz verbindet.

Wenn der Router nicht frei zugänglich ist, kann es Sinn machen, diese Neustart-Funktion zu automatisieren. Somit stellt man sicher, dass der Router sich zu den festgelegten Zeiten neu mit dem Freifunknetz verbindet, und die Verbindung somit lange stabil bleibt.

Realisiert wird dies über **cronjobs / crontabs**. Wie du diese per Fernzugriff auf deinem Router einrichten kannst, zeigen wir dir hier:

Fernzugriff Einrichten

Diese Anleitung bezieht sich auf das Router Modell TL-WR841N/D v9

Da alle Router im Freifunknetz eine öffentliche IPv6 Adresse zugewiesen bekommen, ist ein Fernzugriff in den Standarteinstellungen aus Sicherheitsgründen nicht aktiviert. Damit du jedoch per SSH auf dein Gerät zugreifen kannst, musst du diese Zugriffsmöglichkeit zuerst aktivieren. Es gibt hierzu im wesentlichen zwei Möglichkeiten:


Fernzugriff über das Freifunknetz (IPv6)

Wenn du einen dauerhaften Zugriff auf deinen Router einrichten möchtest, um ihn auch über das Freifunknetz ansteuern zu können, folge bitte der Anleitung in diesem [Tutorial].

<WRAP center round tip 100%> Beachtet bitte, dass ihr den Fernzugriff nur einrichten dürft, wenn ihr den Router in euer privates Netzwerk hängt. Solltet ihr ihn in einem Geschäft oder einer Arztpraxis aufstellen wollen, müsst ihr den Betreiber vorab über diese Fernzugriffsmöglichkeit informieren, und euch eine schriftliche Genehmigung einholen. Über diese Schnittstelle können nämlich im Falle eines nicht berechtigten Zugriffes, sämtliche Sicherheitseinstellungen des Gerätes geändert werden, was mit einem gewissen Risiko verbunden ist! </WRAP>


temporärer Zugriff (Lokale IP)

Bei dieser Vorgehensweise benötigt dein Router __keine Verbindung mit dem Freifunknetz__. <WRAP center round important 100%> Lies dir diesen Abschnitt bitte zuerst vollständig durch, bevor du mit der Änderung deiner Einstellungen beginnst. Solltest du dich hierbei nicht an die Anleitung halten, besteht die Gefahr, dass der Fernzugriff bestehen bleibt. </WRAP>

1. Versetze deinen Router in den **CONFIG-MODE** in dem du die **RESET Taste** auf der Rückseite des Gerätes **6-7sec** lang gedrückt hältst, bis alle LEDs einmal kurz aufblinken.

2. Verbinde nun deinen **Rechner per LAN-Kabel** mit deinem Router **(gelbe Buchse)**, und schalte dich über deinen Webbrowser mit der **IP [[1]]** auf das Gerät auf. Das Webinterface //LuCI// öffnet sich.

3. Wechsle jetzt oben rechts in den **Expert Mode / Remoutzugriff**

4. Setze hier unter **PASSWORT** dein __Passwort__, und klick auf **senden**. <WRAP center round info 100%>

    • Webbrowser NICHT schließen!**

</WRAP>

5. Starte nun **[[2]]**. Gib folgende Zugangsdaten ein:

Hostname: **root@192.168.1.1** Port **22**

Klick auf **Open**.

Putty-tz456.png?300

PuTTY startet nun und wird dich nach dem vorher im Webinterface vergebenen Passwort fragen. (Bei der Passworteingabe werden keine Sternchen oder Platzhalter angezeigt!) **Gibt das Passwort ein**, und bestätige die Eingabe mit der **Enter**-Taste.

<WRAP center round info 100%> Jetzt hast du Vollzugriff auf deinen Router per SSH und SCP. Wechsele nun in den unteren Abschnitt: **Auto-Reboot Befehl schreiben**. Wenn du mit der Eingabe deiner Befehle in PuTTY fertig bist, mach an dieser Stelle der Anleitung weiter! </WRAP>

6. Wechsle nun wieder in den noch geöffneten Webbrowser

7. Entferne hier wieder das Passwort, sodass **zwei leere Eingabefelder** zu sehen sind.

8. Klicke nun wiederum auf **senden**. Die leere Eingabe sollte nun vom System mit //"Passwort gelöscht"// bestätigt werden.

9. Wechseln nun wieder oben rechts zurück in den **Wizard-Mode**. Scrollen ganz ans Ende der Seite, und klick **Speichern & Neustarten**.

10. Der Router verlässt nun den //CONFIG MODE// und startet neu. Sollte es sich um einen Router mit Uplink handeln, schließe ihn wieder wie gewohnt an dein Heimnetzwerk über die **blaue WAN Buchse** an.


Fertig.

Auto-Reboot Befehl schreiben



   * Schalte dich mit dem Programm **PuTTY** per SSH wie oben beschrieben auf deinen Knoten auf.
 * Starte nun den Cron-Editor "vi" mit den Kommando: crontab -e
  8dba9901a5bed405f7df21afd8fe04ae47ebd603.png
 * dieser startet im Anzeigemodus
  49b8454baf2695d682dafe7a9f788c01ceb4db2.png
 * Um in den Editiermodus zu wechseln drücke die Taste i . Unten links wird dann ein **I** für //INSERT// angezeigt. 

4bd621357776aed3049318e6c5c7b5bb768ae34.png

 * Nun kannst du in der ersten Zeile deinen Reboot-Befehl eintragen (Beispiel):

8f89f8cb6e57193c29ef0ff0514ce5713141123.png


<WRAP center round info 100%> Pro Zeile 1 neuer Job. Die ersten 5 Werte geben die Zeit an zu der der Job jeweils ausgeführt werden soll. Danach erfolgt der auszuführende Befehl. Die Trennung der Werte erfolgt über ein Leerzeichen. Ein * steht als Platzhalter, wenn kein bestimmter Wert gesetzt werden soll.

Minute(0-59) Stunde(0-23) tagimmonat(1-31) Monat(1-12) Wochentag(0-7) [BEFEHL] && [BEFEHL] ...

 * Einen online Generator zur Erstellung des richtigen Zeitbefehls findest du [[3]]

Durch den hier verwendeten Befehl: sleep 70 && touch /etc/banner && reboot wird die weitere Befehlsverarbeitung zunächst für 70sec ausgesetzt, bevor die Zeiteinstellungen abgeglichen werden, und das Gerät neu startet. Somit wird sicher verhindert, dass die Systemzeit beim Neustart falsch übernommen wird. Es könnte sonnst zu einer Boot-Schleife kommen. Während dieses Neustarts, ist das Gerät für 30sec - 120sec nicht zu erreichen!

 * Weitere Infos: [* Syntax und Tutorial: Cronjobs unter Linux einrichten und verstehen]
</WRAP>


 * Wenn man alle Befehlszeilen eingegeben hat, den Bearbeitungsmodus mit der Taste **ESC** verlassen. (Das **I** für //INSERT// links unten verschwindet wieder)
 * Nun muss die Änderung noch gespeichert werden. Hierzu 2x die Taste **Z** drücken. **ZZ** //(GROSSBUCHSTABE)//. Der Editor "vi" ist nun geschlossen.

<WRAP center round tip 100%> Mit dem Kommando crontab -l kann man sich die eingegebenen //Crontabs// nochmals anzeigen lassen. Sollte man einen Fehler feststellen, einfach mit dem Kommando crontab -e wie oben beschrieben wieder in den Editor wechseln, und den Eintag bearbeiten. Mit dem Kommando crontab -r kannst du alle deine Einträge löschen. </WRAP>

 * Wenn alles erledigt ist, kannst du PuTTY mit dem Befehl **exit** verlassen.

<WRAP center round important 100%> Solltest du nur einen **temporären Fernzugriff** verwendet haben, vergiss bitte nicht, das Passwort auf deinem Router wieder zu löschen. Wechsele dazu wieder in den oberen Abschnitt **temporärer Zugriff (Lokale IP)**, und setze die Anleitung an Punkt 6 fort. </WRAP>