Как изолировать дюйм/с сервера Google Gmail SMTP непосредственно?

Я выполняю некоторую пользовательскую маршрутизацию с VPN в соединении, которое требует, чтобы я добавил каждый IP сервера Google Gmail SMTP к таблице маршрутизации так, чтобы они передали по другому шлюзу, чем шлюз VPN по умолчанию.

Согласно этому, я могу установить общие диапазоны адресов Google, однако я, может казаться, не изолирую серверы SMTP непосредственно. Любопытно, я наводил справки к компании VPN однажды, и они ответили со всем определенным Gmail серверам SMTP, но не сделали и не объяснят, как установить эти IP-адреса.

Как я могу изолировать эти IP-адреса через заклинания оболочки? Стандартный GNU Linux или метод OS X был бы хорошо для этого.

2
задан 4 October 2014 в 18:43
3 ответа

Пожалуйста, протестируйте это LOT, sine это просто Q&D WAG, но я думаю, что это делает то, что вы хотите:

dig @8.8.8.8 +short  _spf.google.com TXT \
  |awk '
    BEGIN {RS=" " ; FS=":"} ; 
    $1="include" {print $2}
  ' \
  |sed -e '/^\s*$/d' \
  |while read NETBLOCK ; do 
    dig @8.8.8.8 +short "${NETBLOCK}" TXT \
    |awk '
      BEGIN {RS=" " ; FS=":"} ;
      $1 ~ /^ip4/ {print $2} ;
      $1 ~ /^ip6/ {s = ""; for (i = 2; i <= NF; i++) s = s":"$i; print s }
    ' \
  |sed -e 's/^://' ;
done

Обратите внимание, что Google помещает большую часть их публичных распределений в записи SPF. Это имеет смысл, так как позволяет им гибко добавлять/удалять/перемещать/изменять свои исходящие почтовые шлюзы, но может быть менее гранулированным, чем хотел автор вопроса

.
2
ответ дан 3 December 2019 в 09:16

Все, что вам нужно сделать, это DNS поиск записей MX. Это даст вам (на тот момент) список всех серверов, которые Gmail использует для получения почты.

2
ответ дан 3 December 2019 в 09:16
  • Исходящие серверы можно найти с помощью ответа @DTK
  • Входящие серверы можно найти с помощью ответа @Rex

Оба ответа верны, но неполны. Следуя каждому ответу, вы получаете только серверы в данный момент времени. Даже через неделю серверы могут быть совершенно другими, так как Google очень часто меняет свои серверы.

Реальным решением будет вовсе не беспокоиться о серверах Google. Пусть почтовый сервер сделает работу за вас. (Это то, что они должны сделать.) Поместите smarthost в "эту" сеть для пересылки почты. Пересылать почту для Google (*@gmail.com, *@googlemail.com, ...) через туннель к другому смарт-досту в "этой" сети за VPN. "Этот" смартост выполняет свою работу и разрешает MX для домена Google и доставляет почту в Google.

В этой конфигурации "этот" смартост должен только знать, что вся почта Google должна сначала идти на "этот" смартост. Сетевой трафик между обоими серверами туннелируется (и, вероятно, перекрывается брандмауэром) и является единственным соединением на 25 порту. (Так как оба являются "вашими" серверами, то они могут даже связываться через любой порт)

Так что вам просто нужно настроить любого клиента на использование "this" smarthost для доставки почты.

Это можно легко сделать с помощью Postfix (смотрите в качестве начала relay_domains и transport_maps). Я могу предоставить вам рабочую конфигурацию (кроме VPN).

.
2
ответ дан 3 December 2019 в 09:16

Теги

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