Astuce Catalina : valider les commandes sudo dans le terminal avec une Apple Watch

Nicolas Furno |

Avec macOS Catalina, l’Apple Watch peut remplacer le mot de passe de votre session dans encore plus de cas qu’auparavant. La montre peut toujours servir à déverrouiller le Mac, mais elle peut également débloquer les préférences systèmes et même être utilisées dans des apps, comme des gestionnaires de mots de passe. Partout où Touch ID pouvait servir sur les Mac équipés du capteur d’empreintes, l’Apple Watch peut prendre le relai.

Partout, y compris dans le terminal où, en modifiant un fichier système, on pouvait utiliser Touch ID pour les commandes qui nécessitent sudo et donc le mot de passe de session ? Oui, mais la procédure n’est plus aussi simple qu’avant, il faut compiler un outil supplémentaire, en plus de la modification du fichier système. Néanmoins, cela ne devrait pas vous faire peur si vous utilisez le terminal de macOS au quotidien et cela fonctionne extrêmement bien.

La commande sudo utilisée dans le terminal envoie une requête à l’Apple Watch en guise d’alternative au mot de passe. En bas à droite, voici ce que la montre affiche et il suffit de cliquer deux fois sur le bouton latéral pour valider.

Voici la procédure à suivre pour autoriser les commandes sudo sur votre Mac dans le terminal1 de macOS Catalina :

  • Cloner le projet PAM WatchID : git clone https://github.com/biscuitehh/pam-watchid.git ;
  • Ouvrir le dossier et compiler l’app : cd pam-watchid && sudo make install ;
  • Modifier le fichier système /etc/pam.d/sudo avec les droits administrateurs : sudo nano /etc/pam.d/sudo ;
  • Ajouter en haut du fichier cette ligne supplémentaire, sans supprimer le reste du contenu : auth sufficient pam_watchid.so "reason=execute a command as root" ;
  • Enregistrer les changements avec ctrlX puis la touche Y et ouvrir une nouvelle session de terminal pour confirmer que cela fonctionne.

Rappelons que cette fonction n’est pas aussi sécurisée que Touch ID, mais Apple a prévu plusieurs garde-fous pour éviter les abus. La montre ne pourra valider une opération que si elle est à proximité immédiate du Mac, et que si elle est elle-même déverrouillée, c’est-à-dire portée au poignet en continu depuis la dernière saisie du code ou bien depuis le dernier déverrouillage de l’iPhone associé en fonction de vos réglages. Si vous vous éloignez de votre ordinateur, ou bien si vous retirez la montre de votre poignet, la fonction sera automatiquement désactivée.


  1. Dans n’importe quel terminal en fait : vous bénéficierez de cette fonction dans l’app Terminal fournie par Apple, mais aussi dans les apps tierces, comme iTerm.  ↩

Accédez aux commentaires de l'article