Router einrichten Xiaomi: Unterschied zwischen den Versionen

Aus Freifunk Dresden - Anwender-Wiki
Zur Navigation springen Zur Suche springen
(→‎Im Fehlerfall: Darkmode)
 
(25 dazwischenliegende Versionen von 6 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
[[Category:Router]]
 
[[Category:Router]]
 +
= Xiaomi MI Router 4A Gigabit =
 +
 +
=== Technische Daten ===
 +
{| class="wikitable sortable zebra toptextcells"
 +
|-
 +
! Geräte-Name
 +
! Hersteller
 +
! Preis
 +
! RAM in MB
 +
! Flash ROM in MB
 +
! Mhz/[https://de.wikipedia.org/wiki/System-on-a-Chip SoC] <br> ([[Router technische Details|CPU-Leistung]])
 +
! [https://www.elektronik-kompendium.de/sites/net/1004251.htm MIMO] 1x1:1
 +
! class="unsortable" | Version (<span style="color: green">tested</span>)
 +
! class="unsortable" | Beschreibung
 +
! LAN-Adresse OriginalFW (Nutzername<br>Password)
 +
! Wirkleistung
 +
|-
 +
| Xiaomi 4A Gigabit Edition [[Datei:Mi4Agigabit.jpg|100px|thumb|right]]
 +
| [https://www.mi.com/de/product/mi-router-4a-gigabit-edition/ Xiaomi]
 +
| style="text-align:right" | 30€
 +
| style="text-align:right" | 128
 +
| style="text-align:right" | 16
 +
| 880/MediaTek [[MT7621|MT7621AT]]<br>DualCore SMT<br> (2Cores/4Threads)
 +
| 2x2:2@2,4Ghz 2x2:2@5Ghz
 +
| Gigabit Edition
 +
| 2 LAN (1Gbit): 1 WAN, 2,4Ghz und 5Ghz (AC) WLAN, 4 feste Antennen [[Router einrichten Xiaomi]]
 +
| 192.168.31.1/24(W+LAN)
 +
| Originalnetzteil <br> 3W(Leerlauf) 4,2W(Vollast) <br>
 +
|-
 +
|}
 +
 +
== Voraussetzungen ==
 +
 +
[[Datei:Mi4Agigabit.jpg|200px|thumb|right|Xiaomi Mi 4A Gigabit Edition]]
 +
* Internet
 +
* ein Xiaomi Router
 +
* Strom und Netzwerkkabel
  
= Voraussetzungen: =
 
* unzensiertes Internet
 
 
* Linux-System (im Beispiel Debian, auch als VM Möglich)
 
* Linux-System (im Beispiel Debian, auch als VM Möglich)
 
** Pakete (gegebenfalls mit sudo apt install nachinstallieren):
 
** Pakete (gegebenfalls mit sudo apt install nachinstallieren):
*** Prython3 und pip3
+
*** python3 pip3
 
*** git
 
*** git
 +
*** telnet
 +
sudo apt update && sudo apt upgrade
 +
sudo apt install python3-pip git telnet
 +
 +
== Firmware flashen ==
 +
 +
Der Vorgang erfolgt in in 3 Schritten:
 +
=== Vorbereitung ===
 +
* Router wie folgt anschließen: An den '''WAN Port''' kommt des normale Internet, was mit DHCP aus eurem Heimrouter fällt.<br/>Der Router '''benötigt''' während der Übernahme bis zu Schritt 3 zu jeder Zeit '''Internet''' und Kontakt ins Xiaomi-Reich.<br/>
 +
* An einen der beiden LAN Ports kommt euer Computer, der bekommt vom Xiaomi Router eine Adresse aus 192.168.31.0/24.
 +
* Via '''Linux-PC via Browser auf 192.168.31.1''' zugreifen und Xiaomi normal einrichten (vorgeschlagen wird für Internet DHCP, bestätigen)<br/>Hier "Germany" wählen und ein einfaches '''Passwort''' ('test1234') setzen.
  
= Firmware flashen =
+
<pre>
 +
Internetrouter (DHCP) -->  Xiaomie(WAN Port) --> Xiaomi(LAN Port) --> Linux-PC
 +
</pre>
  
Der Vorgang erfolgt in in 3 Schritten. Router wie folgt anschließen: An den WAN Port kommt des normale Internet, was mit DHCP aus eurem Heimrouter fällt.<br>
+
=== 1. Invasion durchführen  ===
Der Router benötigt während der Übernahme bis zu Schritt 3 zu jeder Zeit Internet und Kontakt ins Xiaomi-Reich. An einen der beiden LAN Ports kommt euer Computer, der bekommt vom Xiaomi Router eine Adresse aus 192.168.31.0/24.
+
Auf Linux-PC Console öffnen und folgende Befehle ausführen:<br/>
  
== Invasion durchführen  ==
+
* Tools zum 'Öffnen' des Routers für Freifunk-Firmware installieren
  git clone https://github.com/acecilia/OpenWRTInvasion
+
  git clone https://github.com/Freifunk-Dresden/OpenWRTInvasion
 
  cd OpenWRTInvasion
 
  cd OpenWRTInvasion
 
  pip3 install -r requirements.txt  
 
  pip3 install -r requirements.txt  
  
Bei 192.168.31.1 anmelden, Häkchen setzen, Passwort festlegen. Wenn es nicht mehr weiter geht zurück auf 192.168.31.1 und anmelden.
+
[[Datei:Xiaomi.png|mini|rechts]]
Jetzt den Hexadezimalzahlencode hinter dem STOK= kopieren '''Achtung!''' Bei jeder Anmeldung wir jener neu erzeugt, also bitte nur mit einem Browser auf einem Rechner arbeiten.
+
* Gerät per Tool öffnen
 +
python3 remote_command_execution_vulnerability.py
 +
 
 +
Router IP eintippen, zuvor gewähltes Passwort Eingeben, default Option '''1''' wählen und warten bis das Script durchgelaufen ist.
  
  python3 remote_command_execution_vulnerability.py
+
Beispiel:
 +
  Router IP address [press enter for using the default 'miwifi.com']: 192.168.31.1
 +
Enter router admin password: test1234
 +
There two options to provide the files needed for invasion:
 +
  1. Use a local TCP file server runing on random port to provide files in local directory `script_tools`.
 +
  2. Download needed files from remote github repository. (choose this option only if github is accessable inside router device.)
 +
Which option do you prefer? (default: 1)
  
Router IP bestätigen oder eintippen, STOK-Wert einfügen und warten bis das Script durchgelaufen ist, das dauert maximal 20 Sekunden.
+
Hinweis:
 +
Es müssen folgende beide Zeilen zu sehen sein.
  
== Übernahme einleiten ==
+
local file server is getting 'busybox-mipsel' for 192.168.31.1.
 +
local file server is getting 'dropbearStaticMipsel.tar.bz2' for 192.168.31.1.
 +
 
 +
Wenn nicht, ist wahrscheinlich eine lokale Firewall (Ubuntu -> ufw / Fedora -> firewalld etc.) aktiv, die Verbindungen blockiert.
 +
Diese muss dann temporär deaktiviert werden (sudo ufw disable / sudo systemctl stop firewalld).
 +
 
 +
=== 2. Flash einleiten ===
 +
[[Datei:Xiaomi-telnet.png|mini|rechts]]
  
 
Login mit Telnet und anmelden mit Benutzername "root" & Passwort "root"
 
Login mit Telnet und anmelden mit Benutzername "root" & Passwort "root"
  
 
  telnet 192.168.31.1
 
  telnet 192.168.31.1
 +
[[Datei:Xiaomi-flashing.png|mini|rechts]]
 +
cd /tmp
 +
curl -4 -k http://download.freifunk-dresden.de/firmware/latest/firmware/ramips.mt7621.generic/openwrt-ramips-mt7621-xiaomi_mi-router-4a-gigabit-initramfs-kernel.bin --output firmware.bin
 +
mtd -e OS1 -r write firmware.bin OS1
  
curl -4 -k https://downloads.openwrt.org/releases/21.02.0-rc4/targets/ramips/mt7621/openwrt-21.02.0-rc4-ramips-mt7621-xiaomi_mi-router-4a-gigabit-initramfs-kernel.bin --output firmware.bin
+
Nachdem schreiben der Firmware startet der Router neu und ist im Anschluss über die IP 192.168.1.1 wieder erreichbar. (benötigt statische IP Konfiguration)
  
  mtd -e OS1 -r write firmware.bin OS1
+
=== 3. Systemupgrade ===
 +
 
 +
Nun gibt es zwei Optionen das Sysupgrade auszuführen.
 +
 
 +
==== 1. via Webinterface ====
 +
 
 +
Die Website auf [http://192.168.1.1 http://192.168.1.1] aufrufen und in die Firmware Verwaltung wechseln.
 +
 
 +
[https://192.168.1.1/admin/firmware.cgi Menü: Verwalten > Wartung > Firmware]
  
Router jetzt am besten 10 Minuten in Ruhe lassen. Wenn der Vorgang erfolgreich war, dann bekommt ihr einen Ping auf 192.168.1.1 IP.
+
Nun das [http://download.freifunk-dresden.de/firmware/latest/firmware/ramips.mt7621.generic/openwrt-ramips-mt7621-xiaomi_mi-router-4a-gigabit-squashfs-sysupgrade.bin Sysupgrade-Image] auswählen und "Firmware laden".
  
== Systemupgrade  ==
+
==== 2. via SSH ====
  
Mit SSH (ssh root@192.168.1.1) anmelden und Systemupgrade durchführen:
+
Mit SSH (<code>ssh root@192.168.1.1</code>) anmelden und Systemupgrade durchführen:
  
 
  cd /tmp
 
  cd /tmp
  wget -4 https://downloads.openwrt.org/releases/21.02.0-rc4/targets/ramips/mt7621/openwrt-21.02.0-rc4-ramips-mt7621-xiaomi_mi-router-4a-gigabit-squashfs-sysupgrade.bin
+
  wget -4 http://download.freifunk-dresden.de/firmware/latest/firmware/ramips.mt7621.generic/openwrt-ramips-mt7621-xiaomi_mi-router-4a-gigabit-squashfs-sysupgrade.bin -O sysupgrade.bin
  sysupgrade -n openwrt-21.02.0-rc4-ramips-mt7621-xiaomi_mi-router-4a-gigabit-squashfs-sysupgrade.bin
+
  sysupgrade -n sysupgrade.bin
  
Dieser Vorgang dauert nun wirklich bis zu 20 Minuten, es werden Neustarts durchgeführt.
 
  
= Im Fehlerfall =
+
Dieser Vorgang dauert ca. 10 Minuten, es werden Neustarts durchgeführt.<br>
 +
Danach ist der Router fertig installiert und über die IP 192.168.222.1 erreichbar. (benötigt statische IP Konfiguration)
  
Nicht verzagen, das Tool TinyPXE Server unter https://hoddysguides.com/xiaomi-debrick-tools-all/ stellt eine Orginalfirmware wieder
+
== Im Fehlerfall ==
 +
 
 +
Nicht verzagen, das Tool TinyPXE Server unter https://hoddysguides.com/xiaomi-debrick-tools-all/ stellt eine Originalfirmware wieder
 
her, dauert natürlich wieder seine Zeit. Der Bootloader wird nicht angefasst, also keine Angst.
 
her, dauert natürlich wieder seine Zeit. Der Bootloader wird nicht angefasst, also keine Angst.
  
Zeile 55: Zeile 134:
 
https://xiaomifirmware.net/firmware-mi-router-4a-gigabit/
 
https://xiaomifirmware.net/firmware-mi-router-4a-gigabit/
 
und dort das miwifi_r4a_firmware_51508_2.28.38.bin
 
und dort das miwifi_r4a_firmware_51508_2.28.38.bin
 +
 +
== Hinweis ==
 +
 +
=== Darkmode ===
 +
 +
Die LED des Routers sind recht leuchtstark, sodass sie unter Umständen im Dunklen stören könnten, es gibt Zwei davon:<br>
 +
Die Linke lässt sich über unser das Webinterface (Konfiguration:System->LEDs) ausschalten, die Rechte LED ist mit dem WAN Port leider festverdrahtet. Die WAN Port LED könnte man umgehen, in dem man das Internet über die LAN-Port holt, dazu sind die entsprechende LAN-Einstellungen (Konfiguration:LAN) vorzunehmen. Siehe [https://gitlab.freifunk-dresden.de/firmware-developer/firmware/-/issues/138 #138]

Aktuelle Version vom 25. Februar 2023, 13:15 Uhr

Xiaomi MI Router 4A Gigabit

Technische Daten

Geräte-Name Hersteller Preis RAM in MB Flash ROM in MB Mhz/SoC
(CPU-Leistung)
MIMO 1x1:1 Version (tested) Beschreibung LAN-Adresse OriginalFW (Nutzername
Password)
Wirkleistung
Xiaomi 4A Gigabit Edition
Mi4Agigabit.jpg
Xiaomi 30€ 128 16 880/MediaTek MT7621AT
DualCore SMT
(2Cores/4Threads)
2x2:2@2,4Ghz 2x2:2@5Ghz Gigabit Edition 2 LAN (1Gbit): 1 WAN, 2,4Ghz und 5Ghz (AC) WLAN, 4 feste Antennen Router einrichten Xiaomi 192.168.31.1/24(W+LAN) Originalnetzteil
3W(Leerlauf) 4,2W(Vollast)

Voraussetzungen

Xiaomi Mi 4A Gigabit Edition
  • Internet
  • ein Xiaomi Router
  • Strom und Netzwerkkabel
  • Linux-System (im Beispiel Debian, auch als VM Möglich)
    • Pakete (gegebenfalls mit sudo apt install nachinstallieren):
      • python3 pip3
      • git
      • telnet
sudo apt update && sudo apt upgrade
sudo apt install python3-pip git telnet 

Firmware flashen

Der Vorgang erfolgt in in 3 Schritten:

Vorbereitung

  • Router wie folgt anschließen: An den WAN Port kommt des normale Internet, was mit DHCP aus eurem Heimrouter fällt.
    Der Router benötigt während der Übernahme bis zu Schritt 3 zu jeder Zeit Internet und Kontakt ins Xiaomi-Reich.
  • An einen der beiden LAN Ports kommt euer Computer, der bekommt vom Xiaomi Router eine Adresse aus 192.168.31.0/24.
  • Via Linux-PC via Browser auf 192.168.31.1 zugreifen und Xiaomi normal einrichten (vorgeschlagen wird für Internet DHCP, bestätigen)
    Hier "Germany" wählen und ein einfaches Passwort ('test1234') setzen.
 Internetrouter (DHCP) -->  Xiaomie(WAN Port) --> Xiaomi(LAN Port) --> Linux-PC

1. Invasion durchführen

Auf Linux-PC Console öffnen und folgende Befehle ausführen:

  • Tools zum 'Öffnen' des Routers für Freifunk-Firmware installieren
git clone https://github.com/Freifunk-Dresden/OpenWRTInvasion
cd OpenWRTInvasion
pip3 install -r requirements.txt 
Xiaomi.png
  • Gerät per Tool öffnen
python3 remote_command_execution_vulnerability.py

Router IP eintippen, zuvor gewähltes Passwort Eingeben, default Option 1 wählen und warten bis das Script durchgelaufen ist.

Beispiel:

Router IP address [press enter for using the default 'miwifi.com']: 192.168.31.1
Enter router admin password: test1234
There two options to provide the files needed for invasion:
  1. Use a local TCP file server runing on random port to provide files in local directory `script_tools`.
  2. Download needed files from remote github repository. (choose this option only if github is accessable inside router device.)
Which option do you prefer? (default: 1)

Hinweis: Es müssen folgende beide Zeilen zu sehen sein.

local file server is getting 'busybox-mipsel' for 192.168.31.1.
local file server is getting 'dropbearStaticMipsel.tar.bz2' for 192.168.31.1.

Wenn nicht, ist wahrscheinlich eine lokale Firewall (Ubuntu -> ufw / Fedora -> firewalld etc.) aktiv, die Verbindungen blockiert. Diese muss dann temporär deaktiviert werden (sudo ufw disable / sudo systemctl stop firewalld).

2. Flash einleiten

Xiaomi-telnet.png

Login mit Telnet und anmelden mit Benutzername "root" & Passwort "root"

telnet 192.168.31.1
Xiaomi-flashing.png
cd /tmp
curl -4 -k http://download.freifunk-dresden.de/firmware/latest/firmware/ramips.mt7621.generic/openwrt-ramips-mt7621-xiaomi_mi-router-4a-gigabit-initramfs-kernel.bin --output firmware.bin 
mtd -e OS1 -r write firmware.bin OS1

Nachdem schreiben der Firmware startet der Router neu und ist im Anschluss über die IP 192.168.1.1 wieder erreichbar. (benötigt statische IP Konfiguration)

3. Systemupgrade

Nun gibt es zwei Optionen das Sysupgrade auszuführen.

1. via Webinterface

Die Website auf http://192.168.1.1 aufrufen und in die Firmware Verwaltung wechseln.

Menü: Verwalten > Wartung > Firmware

Nun das Sysupgrade-Image auswählen und "Firmware laden".

2. via SSH

Mit SSH (ssh root@192.168.1.1) anmelden und Systemupgrade durchführen:

cd /tmp
wget -4 http://download.freifunk-dresden.de/firmware/latest/firmware/ramips.mt7621.generic/openwrt-ramips-mt7621-xiaomi_mi-router-4a-gigabit-squashfs-sysupgrade.bin -O sysupgrade.bin
sysupgrade -n sysupgrade.bin


Dieser Vorgang dauert ca. 10 Minuten, es werden Neustarts durchgeführt.
Danach ist der Router fertig installiert und über die IP 192.168.222.1 erreichbar. (benötigt statische IP Konfiguration)

Im Fehlerfall

Nicht verzagen, das Tool TinyPXE Server unter https://hoddysguides.com/xiaomi-debrick-tools-all/ stellt eine Originalfirmware wieder her, dauert natürlich wieder seine Zeit. Der Bootloader wird nicht angefasst, also keine Angst.

Notnagel, uralte Entwicklerversion: https://xiaomifirmware.net/firmware-mi-router-4a-gigabit/ und dort das miwifi_r4a_firmware_51508_2.28.38.bin

Hinweis

Darkmode

Die LED des Routers sind recht leuchtstark, sodass sie unter Umständen im Dunklen stören könnten, es gibt Zwei davon:
Die Linke lässt sich über unser das Webinterface (Konfiguration:System->LEDs) ausschalten, die Rechte LED ist mit dem WAN Port leider festverdrahtet. Die WAN Port LED könnte man umgehen, in dem man das Internet über die LAN-Port holt, dazu sind die entsprechende LAN-Einstellungen (Konfiguration:LAN) vorzunehmen. Siehe #138