Comment empêcher mon Mac de demander à accepter les connexions réseau entrantes?

13

J'utilise Syncthing , qui est une application pour synchroniser des fichiers entre deux ou plusieurs ordinateurs. Je crois que Syncthing ( sur github ) doit être autorisé à accepter les connexions réseau entrantes pour fonctionner correctement.

Mac OS X dispose d'un pare-feu intégré, qui me demande constamment si je souhaite autoriser la synchronisation à accepter les connexions réseau entrantes sous la forme d'une fenêtre contextuelle. Habituellement, cela n'est demandé qu'une seule fois pour une application, mais pour une raison quelconque, cette fenêtre contextuelle apparaît au moins 4 fois par jour.

Cela peut être lié à une fonctionnalité de mise à jour automatisée qui se traduit par un nouveau binaire apparaissant de temps en temps (similaire à ce que fait Google Chrome). Cependant, la fréquence de mise à jour de cette application est bien inférieure à la quantité de fenêtres contextuelles que je reçois.

Avez-vous une idée de ce que je pourrais faire pour que Mac OS X arrête de me poser cette question pour une application spécifique ou n'y a-t-il simplement aucun moyen de la contourner?

Ce serait formidable s'il y avait aussi un choix par défaut qui serait fait au cas où je serais loin de la machine. Avez-vous une idée de comment cela pourrait être accompli - sans désactiver le pare-feu?

Chris
la source

Réponses:

9

Cela peut être dû à une signature numérique manquante ou erronée. Comme Apple l'explique :

Si vous exécutez une application non signée qui ne figure pas dans la liste des pare-feu, une boîte de dialogue s'affiche avec des options pour autoriser ou refuser les connexions pour l'application. Si vous choisissez Autoriser, OS X signe l'application et l'ajoute automatiquement à la liste des pare-feu.

[...]

Certaines applications vérifient leur propre intégrité lorsqu'elles sont ouvertes sans utiliser de signature de code. Si le pare-feu reconnaît une telle application, il ne la signe pas. Au lieu de cela, la boîte de dialogue "Autoriser ou refuser" apparaît chaque fois que l'application est ouverte. Cela peut être évité en passant à une version de l'application signée par son développeur.

Cette boîte de dialogue peut également s'afficher à chaque fois si l'application est signée, mais la signature de l'application elle-même est rompue, comme même pour iTunes .

Vous pouvez vérifier la signature en exécutant la commande suivante dans Terminal (je ne suis pas sûr du nom de votre application ici):

codesign --verify -vv /Applications/Syncthing.app/

Sinon, supprimez peut-être l'application dans les paramètres du pare-feu, puis voyez si accepter une fois de plus suffit pour que OS X ne vous le demande pas? Ou peut-être l'ajouter explicitement via ces paramètres?

Et comme pour la valeur par défaut: assurez-vous que l'option "Autoriser automatiquement les logiciels signés à recevoir les connexions entrantes" est activée:

Arjan
la source
assez bonne réponse - J'ai trouvé le paramètre par défaut que vous avez mentionné, mais ce n'est pas satisfaisant car toutes les connexions entrantes seront activées automatiquement de cette façon, mais je suppose que c'est la seule option
Chris
1
@Chris, si vous êtes (à juste titre) préoccupé par le fait que les applications signées soient autorisées à accepter les connexions entrantes, veuillez noter que le pare-feu OS X filtre uniquement les connexions entrantes . Il permet toutes les connexions sortantes, donc d'un point de vue de la sécurité, je dirais que tout autre pare-feu est préféré à celui d'OS X. (Mais certains ne sont pas d'accord là-dessus , tandis que d'autres ne sont pas d'accord avec ceux qui ne sont pas d'accord ...)
Arjan
Alors, @Chris, des résultats pour le contrôle de signature? Et en supprimant l'application des paramètres du pare-feu pour voir si "Autoriser" reste après cela (peut-être jusqu'à la prochaine mise à jour ...)?
Arjan
merci pour les conseils - j'utilise en fait LittleSnitch pour avoir un meilleur pare-feu pour les raisons que vous avez expliquées, mais le pare-feu OS X est toujours activé - je vais tester de le retirer de là et voir si cela fait quelque chose
Chris
1
Oui, c'est ce que j'ai fait et je m'attends à ce qu'il se produise. Cependant, même si je pense que la synchronisation interne a été mise à jour récemment, le pare-feu OS X ne m'a pas dérangé (jusqu'à présent). Le pare-feu "sait" en fait que c'est l'exécutable interne qui demande la permission et n'ajoute pas l'application wrapper (dont la signature se casse). L'exécutable interne a toujours une signature valide (après chaque mise à jour), mais je ne sais pas si le pare-feu OS X vérifie les changements de signature? Dans ce cas, Skype, etc. devrait également demander des autorisations après chaque mise à jour (ce qui n'est pas le cas pour autant que je sache).
Chris
0

Cette instruction désactive définitivement ce pop-up ennuyeux et la solution est applicable à toutes les applications manquantes ou ayant une mauvaise signature numérique.

En bref:

sudo codesign --force --deep --sign - path-to-the-app.app
HerrRobot
la source
La signature de l'application semble être un bon moyen de faire disparaître cette fenêtre contextuelle pour l'application sans signature. Cependant, la commande ci-dessus ne semble pas fonctionner pour moi. Je n'ai jamais signé d'application. Y a-t-il une clé à générer en premier? ou config pour configurer? Je reçois généralement error: The specified item could not be found in the keychain.
Pierre-Antoine