pf blocos de firewall raspbian apt-get update

0

Estou conectando meu raspberry pi 3 (stretch raspbian) ao meu Macpro (10.13.2; High Sierra) à porta ethernet 802.3, que faz parte do adaptador em ponte ( bridge100 ) usando o recurso de compartilhamento de Internet. A interface da Internet no mac é en2 (sem fio).

Embora eu possa fazer ping de google.com ou mirrordirector.raspbian.org , quando tento atualizar pacotes, o apt-get trava para sempre:

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

Quando desabilito o firewall pf no mac, ele começa a funcionar. Minhas regras pf são as seguintes:

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

Qual regra devo usar para permitir apt-get update . Eu pensei que pass out all vai fazer isso, mas parece que eu não entendo completamente o firewall pf. Por favor ajude.

    
por Drew 08.04.2018 / 02:30

1 resposta

0

Bem, finalmente eu percebi isso. O problema foi complexo.

1 - Eu tinha as seguintes regras de redirecionamento das quais não sabia:

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

Então eu comentei porque o apt-get usa a porta 80 (e provavelmente 443)

2 - Principal coisa. Ao marcar a caixa de seleção Compartilhamento de Internet em Preferências , o MacOS adiciona dinamicamente as seguintes âncoras pf:

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

Execute sudo pfctl -sa para garantir que essas âncoras sejam incluídas. Se não, então apenas desmarque e marque novamente a caixa de seleção Compartilhamento da Internet no sistema MacOS Preferências .

    
por 14.04.2018 / 08:50