1 votes

Est-ce que macOS Mojave (et plus récent?) fait un blocage réseau supplémentaire par rapport à macOS High Sierra?

J'ai deux ordinateurs sur le même LAN :

  • ancien : macOS High Sierra + Server.app

  • nouveau : macOS Mojave + Server.app

Les deux ont le pare-feu d'application désactivé

Lorsque j'exécute nc -l 8082 sur l'un, je peux me connecter depuis l'autre en utilisant un client telnet, dans les deux sens. Je peux également me connecter depuis d'autres Mac sur le réseau local.

Mais lorsqu'il est connecté depuis l'extérieur, l'ordinateur High Sierra accepte les connexions réseau, tandis que l'ordinateur Mojave ne le fait pas.

En d'autres termes, j'ai configuré le NAT du routeur et le pare-feu du routeur pour accepter le port 8082 et le diriger vers ancien, l'ancien ordinateur est disponible pour les connexions. Je vois le trafic (NAT et fw) dans le journal sur le routeur (j'ai activé la journalisation sur la règle NAT et la règle de pare-feu autorisée) :

Dec 28 03:48:21 ubntrouter kernel: [WAN_IN-40-A]IN=eth1 OUT=switch0 MAC=24:a4:3c:b3:ae:0a:02:1d:b5:ca:a9:4b:08:00 SRC=[clientexterieur] DST=[ancien:privateip] LEN=60 TOS=0x10 PREC=0x00 TTL=55 ID=18302 DF PROTO=TCP SPT=35900 DPT=8082 WINDOW=29200 RES=0x00 SYN URGP=0
Dec 28 03:48:21 ubntrouter kernel: [NAT-2-DNAT] IN=eth1 OUT= MAC=24:a4:3c:b3:ae:0a:02:1d:b5:ca:a9:4b:08:00 SRC=[clientexterieur] DST=[publicip] LEN=60 TOS=0x10 PREC=0x00 TTL=56 ID=18302 DF PROTO=TCP SPT=35900 DPT=8082 WINDOW=29200 RES=0x00 SYN URGP=0

Mais lorsque je fais exactement la même chose avec le nouvel ordinateur, je reçois 'Connexion refusée'. Je vois toujours la même tentative de trafic (à l'exception de l'IP interne privée bien sûr) dans le journal du routeur, cependant :

Dec 28 03:49:24 ubntrouter kernel: [WAN_IN-40-A]IN=eth1 OUT=switch0 MAC=24:a4:3c:b3:ae:0a:02:1d:b5:ca:a9:4b:08:00 SRC=[clientexterieur] DST=[nouveau:privateip] LEN=60 TOS=0x10 PREC=0x00 TTL=55 ID=53334 DF PROTO=TCP SPT=35946 DPT=8082 WINDOW=29200 RES=0x00 SYN URGP=0
Dec 28 03:49:24 ubntrouter kernel: [NAT-2-DNAT] IN=eth1 OUT= MAC=24:a4:3c:b3:ae:0a:02:1d:b5:ca:a9:4b:08:00 SRC=[clientexterieur] DST=[publicip] LEN=60 TOS=0x10 PREC=0x00 TTL=56 ID=53334 DF PROTO=TCP SPT=35946 DPT=8082 WINDOW=29200 RES=0x00 SYN URGP=0

Après de nombreuses heures de chasse aux erreurs, de vérifications et de re-vérifications, je dois maintenant conclure avec prudence que la différence se situe entre High Sierra et Mojave. D'une manière ou d'une autre, HighSierra accepte le trafic réseau, tandis que Mojave le bloque. Je soupçonne des mesures de sécurité d'Apple, acceptant le trafic de la plage IP locale mais pas lorsqu'il provient de l'extérieur de cette plage IP.

En supposant que c'est le cas. Qu'est-ce qui pourrait causer cela (le pare-feu de l'application est désactivé) et comment puis-je le résoudre afin de pouvoir réellement offrir un service depuis mon Mac vers le monde extérieur ?

0 votes

Essayez de désactiver le pare-feu avec la commande pfctl -d et de faire la connexion. Faites-nous savoir ce qu'il se passe...

1voto

klanomath Points 63400

Un système de serveur macOS fournit deux et demi pare-feu :

  • Pare-feu d'application (avec une GUI > Préférences Système > Sécurité et confidentialité)
  • pf (seulement des GUI de tiers)
  • Pare-feu adaptatif qui est (ou du moins était) basé sur ipfw et pf (et donc en partie défaillant car Apple l'a mal géré en supprimant ipfw). Partiellement corrigé ici : Comment configurer le pare-feu adaptatif.

Seul le dernier est exclusif aux systèmes avec Server.app installé et configuré.


Le lancement de Server.app pour la première fois modifiera /etc/pf.conf et ajoutera une ancre pf supplémentaire : /private/etc/pf.anchors/com.apple.server-firewall. Cette ancre charge des ancres supplémentaires depuis /Library/Server/Firewall/Anchors/.

Par défaut, tous les pare-feu sont éteints et inopérants et aucune règle substantielle n'est définie.

Dès que vous modifiez dans Server.app : Serveur > nom d'hôte > Accès > Accès réseau par défaut le paramètre par défaut tous les réseaux en quelque chose d'autre, les ancres liées sont chargées de règles en fonction de vos paramètres et le daemon pf est lancé. Revenir à tous les réseaux supprimera toutes les règles liées à l'accès par défaut au réseau mais le daemon pf continuera de fonctionner.

  1. tous les réseaux permettra le trafic NATed de l'Internet dirigé vers votre serveur
  2. réseaux privés interdira le trafic NATed de l'Internet dirigé vers votre serveur en fonction des règles propagées.

Il me semble qu'il n'y a pas de différence entre les différentes versions de Server v5 (au moins El Capitan - Catalina) quant au réglage initial de Accès réseau par défaut qui est toujours et a toujours été tous les réseaux.

0 votes

Merci. Information intéressante que vous avez liée. Sans une application tierce entretenue, il est difficile de se fier à des informations vieillissantes sur des situations antérieures. Connaissez-vous une bonne application tierce pour gérer l'ensemble du pare-feu que vous connaissez ?

0 votes

@gctwnl Il n'y a pas d'application tierce gérant les trois que je connaisse. Je dois tester si le pare-feu adaptatif fonctionne entre-temps - ce qui serait une question séparée...

0 votes

J'ai trouvé Murus, qui gère pf et qui semble intéressant et est toujours pris en charge (bêta pour Catalina disponible)

0voto

gctwnl Points 564

La réponse se trouve dans l'application Serveur. Cette application peut bloquer le trafic réseau d'une certaine manière (comment est inconnu pour moi, j'aimerais apprendre).

L'application Serveur dans Mojave a le serveur lui-même comme première entrée sur la gauche, sélectionnez cela, puis sélectionnez l'onglet 'Accès'. Là, 'Accès réseau par défaut' était défini sur 'réseaux privés' sur Mojave et sur 'tous les réseaux' sur High Sierra, avec sur High Sierra les services par service verrouillés sauf s'ils devaient être disponibles de l'extérieur.

Il est probablement préférable d'utiliser uniquement les 'réseaux privés' et d'avoir des entrées personnalisées pour les ports qui doivent être accessibles depuis l'extérieur.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X