Router einrichten Xiaomi

Aus Freifunk Dresden - Anwender-Wiki
Zur Navigation springen Zur Suche springen

Xiaomi MI Router 4A Gigabit

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 python-pip3 && sudo apt install git && sudo apt install telnet 

Firmware flashen

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.
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.

1. Invasion durchführen

git clone https://github.com/acecilia/OpenWRTInvasion
cd OpenWRTInvasion
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.

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)

2. Flash einleiten

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

telnet 192.168.31.1
cd /tmp
curl -4 -k https://download.freifunk-dresden.de/firmware/.nightly/b4d7885/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 https://download.freifunk-dresden.de/firmware/.nightly/b4d7885/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