OSX 10.11 (El Capitan beta) pf.conf Verhalten geändert?

3263
Tyler Sebastian

Ich habe irgendwie erwartet, dass Dinge kaputt gehen, aber ...

Meine pf-Weiterleitungsregeln, die zuvor auf Yosemite funktionierten, funktionieren am 10.11 nicht mehr.

Meine Weiterleitungsregel lautet wie folgt: rdr pass on lo0 inet proto tcp from any to any port = 80 -> 127.0.0.1 port 8080

Ich kann auf den Inhalt zugreifen, indem ich auf gehe localhost:8080, aber nicht nur auf localhost,das erwartete (und vorherige) Verhalten.

Haben sie irgendwo Änderungen am pf-Dienstprogramm erwähnt? Was muss ich tun, damit das funktioniert?

6
Leiten Sie die pf-Regel an `pfctl`? Wenn ja, können Sie Ihre Frage mit diesem Beispiel aktualisieren. Cory vor 8 Jahren 0
Das gleiche Problem trat nach dem Upgrade auf 10.11 auf. Ich folgte [diesem Ratschlag] (https://echo.co/blog/os-x-1010-yosemite-local-development-environment-apache-php-und-mysql-homebrew), um Port 80-Anforderungen an 8080 weiterzuleiten Folgendes: `echo 'rdr übergeben proto tcp von einem beliebigen Port an einen beliebigen Port -> 127.0.0.1 Port 8080" | pfctl -a "com.apple/260.HttpFwdFirewall" -Ef " Spencer Williams vor 8 Jahren 0
Ich habe das gleiche Problem ... Aber ich bekomme es nicht zum Laufen. Haben Sie diesen Befehl gerade in das Terminal eingefügt? Ich erhalte diese Fehlermeldung: `pfctl: Option erfordert ein Argument - f` http://stackoverflow.com/questions/31517368/using-pfctl-on-mac-os-10-11-el-capitan-to-forward- Ports? noredirect = 1 # comment51030050_31517368 Dafen vor 8 Jahren 0
@Dafen Für den Befehl -f ist eine Datei erforderlich. Ich denke, wenn Sie dieses Argument fallenlassen, wird der Fehler verschwinden. Tyler Sebastian vor 8 Jahren 0
^ @williamcwilliams Befehl funktioniert für mich nicht. Tyler Sebastian vor 8 Jahren 0
Ich habe ein Upgrade auf die Beta Preview 4 durchgeführt und es funktioniert wieder. Gleiche Datei wie bei Yosemite. Ich habe meine Konfiguration hier veröffentlicht: http://stackoverflow.com/questions/31517368/using-pfctl-on-mac-os-10-11-el-capitan-to-forward-ports/31570667#31570667 Dafen vor 8 Jahren 0

1 Antwort auf die Frage

1
Cory

Dies gilt nur für OSX 10.11 - El Capitan - Public Beta 1

In der letzten 10.11-Beta ist 127.0.0.1 gesperrt. Die Lösung? Verwenden Sie 127.0.0.2. Um dies zu tun:

Fügen Sie dem Loopback-Alias ​​zuerst 127.0.0.2 hinzu sudo ifconfig lo0 alias 127.0.0.2 up

Ändern Sie Ihre pf-Regel, um den neuen Alias ​​zu verwenden. rdr pass proto tcp from any to any port 80 -> 127.0.0.2 port 8080

Bei @williamcwilliams (in den Kommentaren oben) lassen Sie einfach den Anker fallen und es funktioniert.

echo "rdr pass proto tcp from any to any port -> 127.0.0.2 port 8080" | pfctl -Ef - <- Stellen Sie sicher, dass Sie dieses letzte Häkchen hinzufügen, da Sie STDIN verwenden.

Warum ist 127.0.0.1 gesperrt? Tyler Sebastian vor 8 Jahren 0
Wahrscheinlich ein Fehler in der Beta. Cory vor 8 Jahren 0
Es funktioniert wieder mit 10.11 Beta 4 =) Dafen vor 8 Jahren 1