Você precisa ter uma lista dos IPs de propriedade do google. Essa lista vai mudar com o tempo, então você precisará mantê-la, mas o processo para obter a lista é, pelo menos, razoavelmente claro.
Olink fornece o processo, e você pode traduzi-lo em um de uma linha como esse :
dig +short TXT @8.8.8.8 _spf.google.com | perl -ne 'print join "\n",m/'nclude:([^ ]*)/g' | xargs -n 1 dig +short TXT @8.8.8.8 | perl -ne 'print join "\n", m/ip[46]:([^ ]*)/g'
Agora você precisa de um pouco mais de munging para transformar isso em regras de firewall, e você terá algo que pode ser executado no cron para manter seu firewall, pois os IPs do google ocasionalmente mudam. Há espaço para um pouco de variação em como fazer isso. Você manipula o iptables diretamente, ou você vai através de uma ferramenta de configuração de firewall mais amigável? (por exemplo, eu uso principalmente ferm
).