On 2011-03-02 at 16:25 +0100, Narcis Garcia - GiLUG wrote:
> I send mail from an Exim4 installation, and it's rejected from some MTA
> servers with:
> "Helo command rejected: Host not found"
> because Exim announces with the short hostname instead of the specified
> in /etc/mailname (FQDN)
>
> If I run:
> dpkg-reconfigure exim4-config
> I can change the "System mail name", and it's updated on /etc/mailname ,
> but it's not used by Exim on HELO announcements.
>
> How can I make Exim to use mailname instead of hostname?
There's two parts: Exim, and the Debian integration of Exim. Debian
does the stuff which uses all the M4 macros.
For Exim: unless overriden, exim uses $primary_hostname for the
EHLO/HELO hostname. You can use "primary_hostname = ...." in the first
section of the config file (global options). If you don't use this,
then Exim uses whatever uname() says is the hostname. uname() is
usually initialised from /etc/hostname, but this is OS-dependent.
/etc/mailname is a Debian thing. The Debian build-system updates it at
the same time that it's supposed to be updating the main config files.
It is likely (but I don't know) doing this by just setting
primary_hostname, as described above.
You can see what value Exim gets with:
$ exim -bP primary_hostname
If this doesn't match, after running a reconfigure, then you need to
pick through what's going wrong with the Debian side of things. You'll
probably get more help (and more informed help) on the Debian-specific
mailing-list; Debian resources can be found at:
http://pkg-exim4.alioth.debian.org/
I *suspect* that you're not using the config file which is being
regenerated and are instead using an override config file, which has not
been updated. If you override the config system, none of the automatic
tools can help you, because you've overriden them! If you run:
$ exim -bV
then you should see the Configuration file listed at the end. I believe
(but am not certain) that if this isn't
/var/lib/exim4/config.autogenerated
then you'll have issues.
-Phil