Opened 3 years ago

Closed 3 years ago

#1486924 closed Bugs (fixed)

Use host FQDN in Message-Id

Reported by: alec Owned by:
Priority: 5 Milestone: 0.4.1
Component: PHP backend Version: 0.4-stable
Severity: normal Keywords:
Cc:

Description

Request from dev mailing list:

Recent versions, at least, use the code

'Message-ID' => sprintf('<%s@%s>', md5(uniqid('rcmail'.rand(),true)),
$RCMAIL->config->mail_domain($_SESSION['imap_host'])),

in program/steps/mail/func.inc to generate the Message-ID string.

In probably 99% of installations, this results in a message ID in the form
nnnnnnnnnnnnnnnn@localhost . This *may* technically be RFC2822-compliant,
depending on how you interpret the RFC. Compliance is a moot point,
however, because several anti-spam applications - including SpamAssassin
and ASSP - do not view nnnnnnnnnnnnnnnn@localhost as a valid, legitimate
message ID, and will score such messages as spam as a result.

This is not particularly desirable.

My suggestion would be to change program/steps/mail/func.inc to not
include the imap_host setting, but to either:

1, use the canonical hostname of the server, i.e. hostname.domain.tld, as
the right-hand side of the Message-ID (most desirable option);

2, use the FQDN that Roundcube was loaded under, i.e. webmail.domain.tld,
and use that as the right-hand side of the Message-ID (less desirable
option, but still very strictly RFC compliant); or

3, query and use the PTR record for the IP the server is running on (which
may be something non-unique such as customer.noc.tld) and use that as the
right-hand side of the Message-ID (least desirable, as would incur at
least one DNS lookup, and probably other annoying overhead).

Change History (2)

comment:1 Changed 3 years ago by alec

  • Summary changed from Better Message-Id generation to Use host FQDN in Message-Id

comment:2 Changed 3 years ago by alec

  • Resolution set to fixed
  • Status changed from new to closed

Fixed in [1d8cbca2].

Note: See TracTickets for help on using tickets.