Oskar Welzl: Weblog zur Homepage

SSH aufs Ubuntu Phone

Ubuntu Touch TerminalAm Jolla ist es eine einfache Übung: In der Systemsteuerung den Entwicklermodus aktivieren, das Häkchen beim Remotezugriff setzen, dort gleich ein Passwort eingeben - fertig. Der SSH-Zugriff ist sofort mit dem gewählten Passwort möglich, zusätzlich wird automatisch das Terminal installiert.

Mit einem Ubuntu Phone (hier getestet mit Ubuntu 15.04) ist das alles ein bißchen komplizierter und will erst durchschaut werden: Diverse Anleitungen im Web beziehen sich nämich auf frühere Versionen des Betriebssystems und sind nicht mehr gültig.

Bei mir haben folgende Schritte zum Erfolg geführt. Ich notier sie mir hier, falls ich sie wieder einmal brauch:

  1. Auch bei Ubuntu muß man in der Systemsteuerung den Entwicklermodus aktivieren. Der verlangt allerdings, daß man das Telefon insgesamt mit einer PIN oder einem Passwort sichert. Heißt für mich: Ab sofort bei jedem „Aufwecken“ des Geräts eine PIN eingeben.
  2. Das Terminal-Programm aus dem Ubuntu-Store manuell installieren. Das Terminal verlangt ein Passwort auch für den Standarduser „phablet“ - wenig überraschend ist das die PIN, die ich bei der Freischaltung des Entwicklermodus gewählt habe.
  3. Im Terminal sudo service ssh start eintippen. („service“ ist ein Ubuntu-spezifischer Befehl, der sowohl Upstart-Jobs als auch System V Init Scripts kontrolliert.)
  4. Sich wundern, warum trotzdem nichts funktioniert und der SSH-Daemon nach dem nächsten Neustart wieder deaktiviert ist.
  5. Langsam verstehen, daß die Entwickler von Ubuntu nicht die reguläre Konfiguration des SSH-Daemons starten, sondern über die Datei /etc/init/ssh.override eine Version, die sich nie automatisch startet und kein Login per Username/Passwort zuläßt.
  6. Den öffentlichen Schlüssel aus dem SSH-Verzeichnis meines PCs auf das Handy kopieren (in die Datei /home/phablet/.ssh/authorized_keys).
  7. SSH verwenden und vorläufig akzeptieren, daß der Daemon nach jedem Neustart des Telefons von der Kommandozeile gestartet werden muß.

Ich bin mir noch nicht ganz sicher, ob ich /etc/init/ssh.override gefahrlos löschen kann, sodaß stattdessen die reguläre /etc/init/ssh verwendet wird. Dazu kenne ich weder Upstart gut genug noch weiß ich, wie Ubuntu bei Systemupdates mit solchen Dingen umgeht. Zu 90% wird das funktionieren und ich nehme an, daß SSH dann immer automatisch startet und auch ein Login mit Username/Passwort akzeptiert.

Ich bin mir auch nicht ganz sicher, ob ich alles verstanden habe, was ich da tu. Ginge es eventuell auch ohne Entwicklermodus? Könnte man auch ohne Löschen von Dateien Ubuntu dazu bringen, sshd automatisch zu starten? Ist im Prinzip egal, ich habe einen Weg gefunden, der für mich funktioniert. Und man muß sich ja selbst die Chance geben, morgen nochmal ein bißchen klüger zu werden. :)

Nicht ganz zum Thema SSH, aber irgendwie zum Thema Terminal-Zugriff paßt die Sache mit dem root-Passwort: Irgendwie haben die alten Tricks vom Desktop nicht funktioniert. Ich kann für den User root kein Passwort setzen. Man kommt trotzdem in eine root Shell, indem man einfach sudo bash eingibt. Solangs funktioniert …