Use tabelas. Veja man pf.conf
para uma explicação detalhada e dê uma olhada em esta resposta para um exemplo.
Eu gostaria de ter todo o tráfego da Internet para passar pela minha VPN; quando minha VPN é desconectada, todo o tráfego da Internet não pode sair da minha estação de trabalho / desktop (não do servidor).
Desejo alternar aleatoriamente os servidores VPN de um local para outro.
Aqui estão minhas regras pf. Gostaria de saber se você pode me ajudar a adicionar mais endereços IP de servidores VPN remotos:
wan="em0"
vpn="tun0"
block all
block in log all
set block-policy drop
set skip on lo
antispoof for $wan inet
block in from urpf-failed to any
block inet proto icmp icmp-type echoreq
block out inet6 all
block in inet6 all
pass out on $wan proto tcp from any to a.b.c.d port 443 modulate state
pass out on $vpn proto tcp from any to any port 80 modulate state
pass out on $vpn proto tcp from any to any port 443 modulate state
pass out on $vpn proto udp from any to any port 53 modulate state
em que a.b.c.d
é o endereço IP do servidor VPN remoto.
Use tabelas. Veja man pf.conf
para uma explicação detalhada e dê uma olhada em esta resposta para um exemplo.
Use -T add
para adicionar um ou mais endereços em uma tabela e criar automaticamente uma tabela não existente.
Então você tem que fazer um comando assim.
sudo pfctl -t badguys -T add 185.130.5.160
Se você não tiver essa tabela, ela será criada.
1 table created. 1/1 addresses added.
Agora, se você olhar em badguys
, verá o novo IP.
sudo pfctl -t badguys -T show
Agora reinicie a pf.
sudo pfctl -vnf /etc/pf.conf