Soluzione 1:
Non ho trovato alcuna opzione in quella bella GUI, ma è possibile tramite l'interfaccia diretta
Per abilitare solo la porta in uscita 80:
firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -p tcp -m tcp --dport=80 -j ACCEPT
firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -j DROP
Questo lo aggiungerà alle regole permanenti, non alle regole di runtime.
Dovrai ricaricare le regole permanenti in modo che diventino regole di runtime.
firewall-cmd --reload
per visualizzare regole permanenti
firewall-cmd --permanent --direct --get-all-rules
per visualizzare le regole di runtime
firewall-cmd --direct --get-all-rules
Soluzione 2:
Dopo aver posto io stesso la stessa domanda, e con qualche ritocco, ho raccolto alcune belle regole per limitare il traffico in uscita alle query HTTP/HTTPS e DNS:
Consenti connessioni stabilite:
# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -m state --state ESTABLISHED,RELATED -j ACCEPT
Consenti HTTP:
# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -m tcp --dport 80 -j ACCEPT
Consenti HTTPS:
# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -m tcp --dport 443 -j ACCEPT
Consenti query DNS:
# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -m tcp --dport 53 -j ACCEPT
# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p udp --dport 53 -j ACCEPT
Nega tutto il resto:
# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 2 -j DROP
Potrebbe essere una buona idea testare prima omettendo l'argomento '--permanent'.
Non sono affatto un esperto, ma questo sembra funzionare bene per me :)