我有一个服务器foo.example.com在192.0.2.1 它运行exim接收我的几个域的电子邮件。 我的域名每个都有一条指向mx.example.com的MXlogging,该loggingparsing为192.0.2.1 如果我想为传入的电子邮件连接提供TLSencryption,我应该在SSL证书中放入什么主机名? foo.example.com,因为这是服务器将在HELO中说什么? mx.example.com,因为这是客户端将连接到的主机名? http://www.checktls.com暗示后者是正确的,但我找不到明确的答案。
一些远程SMTP服务器我试图传递邮件拒绝从我的服务器接受HELO: 504 5.5.2 <localhost>: Helo command rejected: need fully-qualified hostname 显然,我的Exim4服务器发送localhost作为其FQDN。 searchnetworking和一堆configuration文件,我知道在HELO期间作为FQDN发送的值是从primary_hostnameconfigurationvariables中提取的。 我的问题是:在Debian系统中更改这个variables的正确方法是什么? 我想我可以简单地对Exim4configuration文件中的值进行硬编码,但是恕我直言,如果该值自动对应于/etc/mailname或其他一些集中的名称configuration,它似乎更有意义。 我有一种感觉,我的问题的答案可以在Debian wiki的本文中find : EHLO / HELO中Exim使用的名称是从configuration选项primary_hostname提取的。 Debian的exim4默认configuration不会设置primary_hostname 。 然后,Exim默认使用uname()来查找主机名。 如果该调用仅返回一个组件,则使用gethostbyname()或getipnodebyname()来获取标准主机名。 如果您的Exim HELO为localhost.localdomain,那么您很可能是由某些版本的Debian安装程序创build的错误configuration的/ etc / hosts。 在这种情况下,请修复/ etc / hosts。 不幸的是,我不熟悉Linux服务器pipe理知道这意味着什么这意味着:(