Как сообщить sendmail, что это localhost вместо того, чтобы использовать его полное доменное имя для борьбы со спамом?

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

Кажется, это работает нормально. т.е. что-то вроде:

My Server: 220 localhost.localdomain ESMTP Client: EHLO example.com My Server: 250 localhost.localdomain 

Я мог бы также отправить почту отлично, так как я маскировался как правильный домен. Я никогда не получал спам-сообщения в этом домене. Я считаю, что спамеры обычно просматривают Интернет, ища ответы на порт 25, и когда они находят его подключенным, возьмите имя домена из приветствия или имени домена после ответа 250, а затем попробуйте случайные имена пользователей в этом домене.

Поскольку они только получают localhost как доменное имя, они не могут попробовать это, и поэтому только истинные люди, которые знают доменное имя (получив адрес почтового сервера из записей mx в DNS для домена), могут отправлять почту в домен. (Мой обратный DNS не соответствует моему домену, поэтому они также не могут получить домен). К сожалению, теперь я настроил сервер с соответствующим полным доменным именем, которое теперь отображается.

Теперь это выглядит примерно так:

 My server: 220 (My reverse DNS which is not my domain name) (I set this using confSMTP_LOGIN_MSG,'(My reverse DNS) Sendmail; $b') C: EHLO example.com My Server: 250 (My FQDN) oh no:( 

Как изменить бит после 250, чтобы быть чем-то другим, кроме моего полного доменного имени, не избавляясь от FQDN на сервере?

Также есть ли какие-то плохие последствия для этого, кроме нарушения соответствующего RFC?

Я добавил строку DjMyReverseDNS в sendmail.mc, где MyReverseDNS – это то, что я хочу показать, т.е. установку j (которая является переменной для FQDN AFAIK) на то, что я хочу. Это, похоже, работает в базовом тесте, хотя мне нужно будет это проверить позже. Ty