Mac via iPhone sperren

25 Mai 2013
25. Mai 2013

MacSparky.com berichtete diese Woche über einen Weg, seinen Mac via iPhone aus der Ferne in den Schlafmodus zu versetzen. Vor diesem Problem stand ich auch einmal, denn ich hab es gern, dass mein Mac gesperrt ist, wenn er unbeaufsichtigt läuft, auch wenn das vielleicht ein wenig paranoid klingen mag. Allerdings bin ich mir dann unterwegs manchmal nicht sicher, ob ich das auch wirklich getan habe und dann ist es äußerst praktisch, dies nochmal via iPhone nachzuholen. Bisher habe ich das immer über E-Mail erledigt, indem ich eine Mail-Regel angelegt habe, die bei einer Mail von mir mit einem bestimmten Betreff den Mac via AppleScript sperrt. Das funktioniert gut, setzt aber voraus, dass die Mail-App läuft und ist auch jedes Mal ein wenig Tipparbeit.

Die alternative Methode, die ich heute vorstellen möchte und welche ich ein wenig abgewandelt habe, kombiniert auf clevere Weise drei Apps, die ich alle hier bereits in jeweils einem Artikel beschrieben habe (Einzelheiten zur Verwendung dieser Apps bitte dort nachlesen):

Die Grundidee ist, via Drafts eine Datei in der Dropbox anzulegen, nach dessen Inhalt Hazel sucht, um dann beim erfolgreichen Auffinden den Mac zu sperren. Der Text, den ich in meiner Dropbox via Drafts speichere, lautet in meinem Fall einfach „MB sperren“ für „MacBook sperren“:

Drafts Sperre

Für das Speichern als Dropbox-Datei gibt es in Drafts (iPhone oder auch iPad) direkt eine Aktion („Save to Dropbox“). Zuvor muss man die Drafts-App allerdings für den Dropbox-Zugriff autorisiert haben. Mit Hilfe von Launch Center Pro kann dieser Vorgang automatisiert werden. Dazu legen wir im Launch Center eine Aktion mit folgendem URL an:

drafts://x-callback-url/create?text=MB%20sperren&action=Save%20to%20Dropbox

Damit das so durchgereicht wird, muss in Drafts unter „Settings“ die Einstellung „Allow URLs to trigger actions“ eingeschaltet sein. Optional kann zur Erhöhung der Sicherheit noch ein in Drafts festgelegter „URL key“ angehängt werden. Beispiel:

drafts://x-callback-url/create?text=MB%20sperren&action=Save%20to%20Dropbox&key=Geheim

Ein passendes Icon findet sich im Launch Center ebenfalls:

LCP Sperre

Nun kann der iPhone-seitige Teil der Sperraktion mit einem Tap vom Launch Center aus erfolgen.

Vorher müssen wir aber auf dem Mac noch einige Vorbereitungen treffen. Wir brauchen eine Hazel-Regel für den Ordner „Dropbox/Apps/Drafts“:

Hazel Sperre 1

Die Bedingung, die zur Ausführung der Hazel-Regel führt, ist, dass es in diesem Ordner eine Datei mit dem Inhalt „MB sperren“ gibt:

Hazel Sperre 2

Trifft dies zu, veranlassen wir gleich mehrere Schritte. Als erstes löschen wir die Datei („Move to folder: Trash“), damit die Aktionen nur einmal ausgeführt werden. Dann starten wir ein AppleScript, welches das MacBook sperrt:

tell application „System Events“ to start current screen saver

Hazel Sperre 3

Dazu muss in den Systemeinstellungen geregelt sein, dass nach einem Ruhezustand oder dem Bildschirmschoner ein Kennwort einzugeben ist:

Sicherheit Sperre 2

Wer den Mac lieber schlafen legen möchte, nimmt stattdessen einfach folgendes AppleScript:

tell application „Finder“

  sleep

end tell

Damit sind wir schon am Ziel unseres Vorhabens.

Als i-Tüpfelchen wäre es nun noch schön, wenn das iPhone eine Rückmeldung vom Mac bekäme. Das ist allerdings nicht ganz trivial und sei daher nur fortgeschrittenen Nutzern empfohlen. Eine ausführliche Schritt-für-Schritt-Anleitung würde den Rahmen eines Blog-Artikels leider sprengen.

Ich nutze dazu Prowl, eine iOS-App, der man über das Internet Push-Notifications schicken kann, die dann auf dem Telefon angezeigt werden. Zusätzlich braucht man ein Benutzerkonto auf https://www.prowlapp.com, um einen sogenannten API-Key zu erhalten, der für den Versand vom Mac aus benötigt wird. Ferner wird auf dem Mac ein Perl-Skript gebraucht, welches ausführbar in einem Verzeichnis wie z.B. /usr/local/bin bereitliegen sollte.

Nun sagen wir Hazel, dass nach dem AppleScript noch ein Shell-Script ausgeführt werden soll:

Hazel Sperre 4

Wichtig ist, dass wir hier im Parameter -apikey= unseren API-Key von prowlapp.com einsetzen. Nach dem Sperren des MacBooks erscheint nun folgende Meldung auf unserem iPhone:

Push Sperre

Schlagwörter: , , , ,
Version 7.2 - © 1995-2018 by Dr. Markus Jasinski - Impressum