Как разрешить все возможные IP-адреса для серверов Gmail через брандмауэр UFW?

В настоящее время я использую следующее правило:

ufw allow out from my_local_ip to any port 587

Это мне немного не по вкусу. Я хотел бы сжать его и ограничить только IP-адресами SMTP-сервера Gmail, но они всегда меняются. Раньше я просто ждал, пока исходящее письмо не дойдет до места назначения, затем проверил в системном журнале заблокированный IP-адрес, а затем добавил его в скрипт настройки ufw. Однако теперь мне нужно гораздо больше надежности.

Есть ли способ использовать smtp.gmail.com в UFW? Я так не думаю, но думал, что спросить. Есть еще идеи? Спасибо.

Обновление

Принимая предложение izx, я получил следующую (сокращенную) информацию от whois:

$ whois 74.125.53.108

.. .

NetRange: 74.125.0.0 - 74.125.255.255

CIDR: 74.125.0.0/16

...

Используя эту информацию, я создал следующую команду в моем скрипте конфигурации ufw (я понимаю, что есть другие диапазоны, которые нужно открыть, это всего лишь пример):

ufw allow out from 192.168.2.5 to 74.125.0/24.0/24 port 587 

, но ufw это не нравится. Поэтому я изменил его на:

ufw allow out from 192.168.2.5 to 74.125.0.0/24 port 587

этот UFW принял, но, очевидно, это будет блокировать любой адрес в этом диапазоне с 0 в качестве третьего октета. Так как же получить 0-255 для третьего октета?

4
задан 13.01.2020, 03:02

3 ответа

Вам понадобится скрипт, который периодически разрешает домен и обновляет правила брандмауэра с использованием последних IP-адресов. Вместо этого попробуйте этот метод:

Домены, подобные этим, часто имеют несколько IP-адресов, связанных с ними. Используйте host domain.tld, чтобы получить список:

$ host smtp.gmail.com
smtp.gmail.com is an alias for gmail-smtp-msa.l.google.com.
gmail-smtp-msa.l.google.com has address 74.125.127.108
gmail-smtp-msa.l.google.com has address 74.125.127.109

Но эти два также, вероятно, продолжают изменяться, в зависимости от вашего вопроса. Поэтому лучше всего занести в белый список весь сетевой блок - используйте whois с IP :

$ whois 74.125.127.108

NetRange:       74.125.0.0 - 74.125.255.255
CIDR:           74.125.0.0/16
OriginAS:       
NetName:        GOOGLE
NetHandle:      NET-74-125-0-0-1
Parent:         NET-74-0-0-0-0
NetType:        Direct Allocation
RegDate:        2007-03-13
Updated:        2012-02-24
Ref:            http://whois.arin.net/rest/net/NET-74-125-0-0-1
...

В NetRange / CIDR укажите, что для белого списка - 74,125. 0.0 / 16. Google может назначить любой IP-адрес в этом диапазоне smtp.gmail.com

6
ответ дан 13.01.2020, 03:04
  • 1
    @nomadicME Видят serverfault.com/q/49765/51929 для длинного описания. Короче говоря, необходимо использовать 74.125.0.0/16. Для большего количества IP-адресов, которые может использовать Gmail, используйте эти dig _spf.google.com TXT команда. – fjxx 13.01.2020, 03:04
  • 2
    @Lekensteyn, спасибо. Я думаю, что у меня наконец есть все IP возможности. Это прослушивало меня некоторое время. – Praneeth 13.01.2020, 03:05
  • 3
    спасибо за Вашу справку. Используя эту информацию я создал следующую команду в своем ufw сценарии конфигурации (я понимаю, что существуют другие диапазоны для блокирования, это - просто пример): ufw позволяют из 192.168.2.5 74.125.0/24.0/24 порту 587, но ufw не нравится это. Таким образом, я изменился, это к ufw позволяет из 192.168.2.5 74.125.0.0/24 порту 587, этот принятый ufw. Таким образом, как я добираюсь от 0-255 для третьего октета? – Jagger 13.01.2020, 03:05

Следующая команда вернет пару доменов:

nslookup -q=TXT _spf.google.com 8.8.8.8

Запустите nslookup для каждого:

nslookup -q=TXT _netblocks.google.com 8.8.8.8
nslookup -q=TXT _netblocks2.google.com 8.8.8.8
nslookup -q=TXT _netblocks3.google.com 8.8.8.8

От: http://support.google .com / а / бен / answer.py HL = ан & амп;? ответ = 60764

2
ответ дан 13.01.2020, 03:03

бесплатный GMail & amp; платные GSuite GMail используют разные серверы; потому что когда я запускаю:

sudo doveadm dump /home/vmail/acme.com/postmaster/Maildir | grep google.com

, он дает мне адреса в диапазоне 209.85.128.0/17.

ARIN даже имеет ответ API для GOGL .

0
ответ дан 13.01.2020, 03:03

Теги

Похожие вопросы