Show Public IP address when sending via Postfix via Postmarkapp

We have a security system set up where the first time a sold computer is booted up we get an e-mail from it's destination to show its been received. The police recommend we do this after a number of unfortunate scam attempts - all is working fine with Postfix on macOS, the caveat though is they want the originating IP address of the computer in the header to prove it's not an e-mail we've just sent ourselves.

I tested it with Google's SMTP and that worked just fine with the same settings, however as the delivered computers would appear in different parts of the world, Google's security would kick in and think our password had been stolen, so only 20% of emails were sent.

Postmark gets 100% delivery so far it seems, the problem is, like other SMTP servers we've tested, it doesn't show the originating IP in the header the X-Sf-Originating-Ip is their server.

Is there anyway with Postfix headers we can force the public IP of the sender to be included in the header, or any settings in using Postmark's SMTP server we might have missed?

It seems most Postfix options are to exclude the public IP, not force it to be included.

0
задан 18 June 2017 в 15:50
2 ответа

Я работаю над штемпелем. Хотя ваше решение может работать технически, я бы не рекомендовал этот подход :

Когда вы отправляете свои компьютеры и используете эту настройку, я думаю, вам нужно будет включить в машину токен сервера почтовых марок, и в конечном итоге это может быть обнаружено вашими клиентами, и они могут в конечном итоге использовать его для отправки электронной почты через вашу учетную запись на Postmark.

Маркер сервера следует рассматривать как пароль, и его нельзя передавать неизвестным сторонам, например это.

Альтернатива:

Гораздо более простой подход к этой проблеме - настроить веб-перехватчик, который может принимать полезные данные JSON через https. Это устраняет необходимость в постфиксе и, как правило, не будет заблокировано интернет-провайдерами, поскольку 443 - это стандартный порт, который практически повсеместен в Интернете.

Ваш веб-перехватчик может содержать полезную информацию, включая

  • общедоступный IP-адрес (который вы можете собрать из следующего сервиса): curl https://api.ipify.org

  • MAC-адреса на машине: ifconfig | grep 'ether'

  • Серийный номер компьютера или другая информация ( https://apple.stackexchange.com/a/40244/15813 )

Существует ряд приложений, которые могут принимать "JSON дампы »в общедоступном веб-перехватчике, например https://requestb.in/ - я бы рекомендовал разместить это на вашем собственном сервере, так как это ваша запись запросов, в конечном итоге это будет выглядеть как следующее:

curl -H "Content-Type: application / json" https://your-server-tracking.com/booted -d '{"IP": "'" $ (curl https: // api. ipify.org) "'", "SERIAL": "'" $ (system_profiler SPHardwareDataType | awk '/ Serial / {print $ 4}') "'", "Date", "'" $ (date) "'"} '

Другие примечания:

  • Вы должны убедиться, что соблюдаете законы о том, что вам разрешено включать в эти машины, это может противоречить конфиденциальности ваших клиентов.
  • Вы должны подтвердить что этот метод предоставляет полиции адекватную информацию для расследования этих случаев. При этом, учитывая, что заголовки электронной почты может быть добавлен кем угодно, описанный выше метод добавления IP-адреса, вероятно, не менее надежен, чем тот, который вы получили бы с заголовками электронной почты. Кстати, заголовки вроде X-Sf-Originating-Ip нестандартны, и любой отправитель может поместить туда все, что пожелает.

Удачи!

0
ответ дан 4 December 2019 в 16:13

Это некоторые из тех случаев, когда собственный SMTP-сервер был бы идеальным, поскольку вы

  • можете решить, какую информацию вы хотите сохранить.
  • избегайте любого определения региона просто не развертывание таких (по умолчанию).
  • не покажет ваш пароль Gmail (или другой) в файлах конфигурации.

Поскольку большинство интернет-провайдеров блокируют порт 25 из-за спама, используя отправку через порт ] 587 , как я полагаю, вы уже делаете с Gmail, потребуется для прохождения почты. Однако даже отправка может быть заблокирована. Конечно, если злоумышленники узнают, как вы их отслеживаете, они могут легко заблокировать порт 587 в своем брандмауэре.

Вместо SMTP я бы предпочел использовать HTTPS на порту 443 ] для этого, поскольку этот порт почти всегда доступен и из-за широкого использования HTTPS его редко подделывают. Скрипт или программа могут попытаться загрузить некоторую веб-страницу после запуска / cron, например https://example.com/imhere.php?serial= .

С другой стороны, если вы хотите придерживаться электронной почты, с собственным выделенным сервером вы можете сделать SMTPS без STARTTLS для использования порта 443 вместо порта по умолчанию 465 . SMTPS без STARTTLS , как и любой трафик с шифрованием TLS, выглядит точно так же, как HTTPS.

Что бы вы ни делали, это чисто технические рекомендации. Убедитесь, что этот вид отслеживания не нарушает какие-либо местные правила конфиденциальности или защиты данных, а также страны ваших клиентов. Не пытайтесь быть похожим на Бэтмена. :)

1
ответ дан 4 December 2019 в 16:13

Теги

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