macos - éléments - supprimer trousseau mac




Empêcher networksetup de demander un mot de passe (2)

J'ai essayé de comprendre cela aussi. J'ai remarqué que la page de manuel mentionne ceci:

Tout drapeau qui prend un mot de passe acceptera "-" à la place du mot de passe pour indiquer qu'il devrait lire le mot de passe de stdin.

Je ne sais pas trop comment l'utiliser mais il semble possible ...

J'ai une petite application que j'utilise pour changer les proxies sur mon Mac. Il utilise la commande networksetup pour définir les paramètres du proxy, et cela a bien fonctionné sur Lion. Sur Mountain Lion cependant, il demande le mot de passe administrateur chaque fois que je change les paramètres du proxy.

networksetup essaie de modifier la configuration du réseau du système. Tapez votre mot de passe pour le permettre.

Y a-t-il un moyen d'empêcher cela? Ou y a-t-il une meilleure façon de changer les paramètres de proxy dans Cocoa? Sur Lion le système s'est souvenu quand j'ai mis le mot de passe dedans, ainsi je devais m'authentifier seulement après des redémarrages.

J'ai également remarqué que dans Chrome, le plugin Proxy Switchy souffre du même comportement. Ça dit

scutil tente de modifier la configuration du réseau du système. Tapez votre mot de passe pour le permettre.


Utilisez sudo pour accomplir ceci en ajoutant une règle sans mot de passe pour l'utilisateur que vous voulez pouvoir exécuter cette commande.

  • Exécutez visudo pour lancer un éditeur pour modifier le fichier / etc / sudoers

    visudo -f /etc/sudoers
  • À la fin du fichier, ajoutez la ligne

    $USERNAME ALL=(root) NOPASSWD: /usr/sbin/networksetup

Où $ USERNAME est, mettez le nom d'utilisateur réel que vous voulez donner à nopassword l'accès à la commande networksetup.

  • Enregistrer le fichier
  • Testez-le en tant que votre utilisateur en cours d'exécution

    /usr/bin/sudo /usr/sbin/networksetup -version

qui fera écho à un message de version s'il est configuré correctement, ou vous demandera un mot de passe si vous avez fait une erreur.

Il s'agit d'une route beaucoup plus sûre car elle limite qui peut exécuter la commande en tant que root à un utilisateur spécifique, en définissant le binaire networksetup lui-même. La racine suid signifie que quiconque se connecte au système peut modifier votre configuration réseau. OSX est un système d'exploitation multi-utilisateur, et il devrait être traité comme tel.

Si vous êtes vraiment paranoïaque, assurez-vous d'utiliser le chemin complet lorsque vous appelez / usr / bin / sudo.





osx-mountain-lion