Skip to content

Releases: cauliflowermossgrape/idrive7-8-ssh-root

v1.2.0 - Fix refusing SSH key (fixes #2)

Choose a tag to compare

@cauliflowermossgrape cauliflowermossgrape released this 30 Oct 17:47

Latest release — built from main. The new fix-key repair path is experimental (see the caveat at the bottom).

New: Fix refusing SSH key (fix-key) — fixes issue #2

Repair for units where flash + enroll succeed and port 22 opens, but root login is still refused (Permission denied (publickey)) because the stock /usr/share/sshd/authorized_keys.root (signed SWFL 000056E5) holds a different key — the exact symptom reported in issue #2 by people who had already run another tool. fix-key re-runs the exact proven debug flash but installs our key in the one unsigned region (the part not covered by the BMW signature). Only that region's bytes change; every other frame is identical to a normal flash, so the realistic worst case is the key not persisting — not a brick.

  • GUI: amber Fix refusing SSH key button.
  • CLI: ssh_enable fix-key --vin <VIN> --verbose
  • Also fixes the Windows nul / REMOTE HOST IDENTIFICATION HAS CHANGED known-hosts abort from older builds.

Download

MGU-SSH-windows.zip — unzip anywhere, run MGU-SSH\MGU-SSH.exe (no Python needed). Keep the whole folder together; keys save to MGU-SSH\data\enrollments\. Run as Administrator for the 169.254.x.x ENET link.

Not yet confirmed on a bench unit: whether the unsigned region actually persists the key on 030.016.002. Run fix-key --verbose once and keep the flash journal. Like any flash it writes the VIN, reboots, and clears CAFD coding — restore it from your backup.

v1.2.0-beta1 - Fix refusing SSH key (test-features)

Choose a tag to compare

@cauliflowermossgrape cauliflowermossgrape released this 29 Oct 20:54

Pre-release / experimental — merged into main.

New: Fix refusing SSH key (fix-key) — fixes issue #2

Repair for units where flash + enroll succeed and port 22 opens, but root login is still refused (Permission denied (publickey)) because the stock /usr/share/sshd/authorized_keys.root (signed SWFL 000056E5) holds a different key — the exact symptom reported in issue #2 by people who had already run another tool. fix-key re-runs the exact proven debug flash but installs our key in the one unsigned region (the part not covered by the BMW signature). Only that region's bytes change; every other frame is identical to a normal flash, so the realistic worst case is the key not persisting — not a brick.

  • GUI: amber Fix refusing SSH key button.
  • CLI: ssh_enable fix-key --vin <VIN> --verbose
  • Also fixes the Windows nul / REMOTE HOST IDENTIFICATION HAS CHANGED known-hosts abort from older builds.

Download

MGU-SSH-windows.zip — unzip anywhere, run MGU-SSH\MGU-SSH.exe (no Python needed). Keep the whole folder together; keys save to MGU-SSH\data\enrollments\. Run as Administrator for the 169.254.x.x ENET link.

Not yet confirmed on a bench unit: whether the unsigned region actually persists the key on 030.016.002. Run fix-key --verbose once and keep the flash journal. Like any flash it writes the VIN, reboots, and clears CAFD coding — restore it from your backup.

v1.1.0 - MGU iDrive7/8 SSH root

Choose a tag to compare

@cauliflowermossgrape cauliflowermossgrape released this 22 Oct 18:36

Windows GUI app (no Python needed). Unzip, keep the folder together, and run MGU-SSH.exe as Administrator with an ENET cable connected. Requires the Windows OpenSSH client on PATH (ssh -V). Back up your coding before flashing - see the README.

Changes since v1.0.0:

  • The unique per-car SSH key is now off by default and marked as not recommended. The key swap can only be done once; after a reflash or a lost key you cannot create a new identity. The tool now keeps the shared root key unless you tick the box (GUI) or pass --unique-key (CLI).

v1.0.0 - MGU iDrive7/8 SSH root

Choose a tag to compare

@cauliflowermossgrape cauliflowermossgrape released this 22 Oct 14:51

Windows GUI app (no Python needed). Unzip, keep the folder together, and run MGU-SSH.exe as Administrator with an ENET cable connected. Requires the Windows OpenSSH client on PATH (ssh -V). Back up your coding before flashing - see the README.