PF-Firewall blockiert Raspbian Apt-Get-Update

PF-Firewall blockiert Raspbian Apt-Get-Update

Ich verbinde meinen Raspberry Pi 3 (Raspbian Stretch) mit meinem Macpro (10.13.2; High Sierra) über den 802.3-Ethernet-Port, der Teil eines überbrückten Adapters ( bridge100) ist, und verwende die Funktion „Internet Share“. Die Internetschnittstelle auf dem Mac ist en2(drahtlos).

Obwohl ich einen Ping google.comoder senden kann mirrordirector.raspbian.org, bleibt apt-get beim Versuch, Pakete zu aktualisieren, für immer hängen:

# apt-get update
0% [Connecting to mirrordirector.raspbian.org (93.93.128.193)] [Connecting to archive.raspberrypi.org (93.93.130.104)]

Wenn ich die PF-Firewall auf dem Mac deaktiviere, funktioniert sie. Meine PF-Regeln lauten wie folgt:

LAN="bridge100"
WLAN="en2"

dns="53"
ntp="123"

set fingerprints "/etc/pf.os"
set skip on lo
set block-policy drop

set ruleset-optimization basic
set optimization normal
set timeout { tcp.established 600, tcp.closing 60 }
scrub in all no-df fragment reassemble
antispoof log quick for { lo $LAN $WLAN }


block all
block in log quick from no-route to any

pass in quick on { $LAN $WLAN } proto { udp tcp } from any to any port $dns keep state
pass in quick proto udp from any port 67 to any port 68
pass in proto udp from any to port $ntp

pass in inet proto icmp from 10.8.0.0/24
pass in inet proto icmp from 192.168.1.0/24
pass in inet proto icmp from 192.168.2.0/24
pass in inet proto icmp from 172.16.42.0/24

pass out all

Welche Regel sollte ich verwenden, um zuzulassen apt-get update? Ich dachte, pass out allich mache das, aber anscheinend verstehe ich die PF-Firewall nicht ganz. Bitte helfen Sie.

Antwort1

Nun, ich habe es endlich herausgefunden. Das Problem war komplex.

1 – Ich hatte die folgenden Umleitungsregeln, die mir nicht bewusst waren:

rdr pass inet proto tcp from any to any port 80 -> 127.0.0.1 port 8080
rdr pass inet proto tcp from any to any port 443 -> 127.0.0.1 port 8443

Deshalb habe ich sie auskommentiert, weil apt-get Port 80 (und wahrscheinlich 443) verwendet.

2 - Hauptsache. Beim AnkreuzenInternet-FreigabeKontrollkästchen inEinstellungen, MacOS fügt dynamisch die folgenden pf-Anker hinzu:

nat-anchor "com.apple.internet-sharing" all
rdr-anchor "com.apple.internet-sharing" all

scrub-anchor "com.apple.internet-sharing" all fragment reassemble
anchor "com.apple.internet-sharing" all

Führen Sie den Vorgang aus sudo pfctl -sa, um sicherzustellen, dass diese Anker enthalten sind. Wenn nicht, deaktivieren Sie einfach das Häkchen und aktivieren Sie es erneut.Internet-FreigabeKontrollkästchen im MacOS-SystemEinstellungen.

verwandte Informationen