4 votes

PF sur macOS Sierra ne semble pas lire ApplicationFirewall

PF fonctionne mais lorsque je démarre/redémarre le système, le programme 'maître' de postfix me demande si je veux lui accorder la permission d'accepter des connexions depuis l'internet. Cette autorisation est définie dans le SystemFirewall, que l'on configure dans les préférences. Cependant, j'ai aussi mon propre jeu de règles dans /etc/pf.anchors/local.rules que pf charge au démarrage.

#
# com.apple anchor point
#
int_if  = "en0"
lan_net = "192.168.0.0/24"

set skip on lo0
tcp_services = "{ ssh, smtp, domain, www, pop3, auth, pop3s }"
udp_services = "{ domain }"

scrub-anchor "com.apple/*"
nat-anchor "com.apple/*"
rdr-anchor "com.apple/*"
dummynet-anchor "com.apple/*"
anchor "com.apple/*"
load anchor "com.apple" from "/etc/pf.anchors/com.apple"
#

Je lance donc pfctl dans la plist avec pfctl -ef /etc/pf.anchors/local.rules

Tout fonctionne bien avec cela - sauf pour le maître postfix. Ce qui m'indique que pfctl ne lit pas l'ancre 250.ApplicationFirewall/* - qui devrait être le ... Règles ApplicationFirewall.

Le présent

sudo pfctl -a com.apple -sr

retours

No ALTQ support in kernel
ALTQ related functions disabled
anchor "200.AirDrop/*" all
anchor "250.ApplicationFirewall/*" all

Se pourrait-il que je ne doive pas exécuter le pare-feu applicatif en même temps que le contrôleur pf ? Ou, comment puis-je dire aux règles pf de lire les règles ApplicationFirewall ?

1voto

dan Points 314

2 Pare-feu

Sous MacOS, vous disposez de deux pare-feu indépendants : Le premier fonctionne au niveau du protocole et est le Packet Filter d'OpenBSD. Il est activé avec pfctl -e -f pf_configuration_file .

Le deuxième est ApplicationFirewall et fonctionne au niveau de la prise, mais il s'agit d'une étape préliminaire pour activer PF. Il est activé à l'aide de l'interface graphique System Preferences > Security & Privacy > Firewall > Firewall Options… .

Ces 2 pare-feu peuvent travailler seuls ou ensemble . Mais l'interface graphique de MacOS réunit les deux.

Le pare-feu applicatif charge son propre ensemble de règles PF ancrées sur :

/com.apple/250.ApplicationFirewall

Malheureusement, la source de cet ensemble de règles n'est pas accessible.

Ces deux pare-feu devraient donc fonctionner parfaitement bien indépendamment l'un de l'autre. Malheureusement, l'interface graphique du pare-feu applicatif démarre PF tout seul et cela n'est pas documenté.

Je pense que le travail d'Apple n'est pas terminé sur ces 2 couches de firewall. Mon meilleur conseil pour sortir de cette interface graphique non documentée est de faire une copie locale complète de l'arbre :

/com.apple/250.ApplicationFirewall

1 Outil manquant

Il est très difficile d'avoir une vision correcte de l'ensemble des règles appliquées à un moment donné avec PF et un arbre d'ancrage.

Il n'existe pas d'outil standard autre que le pfctl d'analyser les problèmes de sécurité.

Voici un outil qui peut vous aider dans cette démarche :

pfdump

Pour analyser votre problème, je vous conseille d'utiliser nmap (voir Brew o Macports ) pour vérifier que votre master est localement atteignable sur 25/tcp .

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X