Как динамически составлять белый список IP-адресов api.mailgun.net?
- У меня есть веб-приложение, работающее за брандмауэром OPNsense
- Этот брандмауэр разрешает весь трафик https на api.mailgun.net
- Веб-приложение вызывает api.mailgun.net, но разрешение отличается от брандмауэра
Похоже, api.mailgun.net регулярно разрешает разные IP-адреса. Я пытался найти известные IP-адреса, но ничего не смог найти.
1 ответ
Я не думаю, что возможно добавить правило к вашему брандмауэру, которое динамически проверяет, идет ли соединение к домену, который разрешает к этому IP.
Однако, как вы уже попробовали, добавление каждого IP-адреса к брандмауэру является решением. Чтобы получить все возможные IP-адреса, я бы сделал:
// Find the authoritative nameserver
// Your local nameserver potentially only returns the cached, first record
$ dig api.mailgun.net IN SOA
;; AUTHORITY SECTION:
mailgun.net. 899 IN SOA ns-1447.awsdns-52.org. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400
// Query that for all the records
$ dig +short api.mailgun.net IN A @ns-1447.awsdns-52.org.
34.200.7.26
52.200.96.214
52.73.0.101
52.21.40.223
52.86.239.198
34.232.33.59
Или вам просто нужно добавить правило, которое разрешает весь входящий ответный трафик TCP для соединений, которые вы делаете. Предполагая, что весь исходящий трафик разрешен в любом случае.
Для этого добавьте входящее правило ACCEPT, охватывающее диапазон временных портов:
- Source / Dest IP: любой
- Исходный порт: любой
- Порт назначения: 32768-65535
- Протокол: TCP
- Флаги TCP: ack