Bazı uzak SMTP sunucusu HELO'yu sunucumdan kabul etmeyi reddetmek için posta teslim etmeye çalışıyorum:
504 5.5.2 <localhost>: Helo command rejected: need fully-qualified hostname
Görünüşe göre Exim4 sunucum localhost
FQDN'si olarak gönderiyor . Net ve bir çok config dosyasını araştırırken, HELO sırasında FQDN olarak gönderilen değerin primary_hostname
konfigürasyon değişkeninden alındığını öğrendim .
Sorum şu: Bir Debian sisteminde bu değişkeni değiştirmenin doğru yolu nedir? Ben sadece Exim4 yapılandırma dosyalarının üzerine bir değeri hardcode sanırım, ama IMHO değer eğer daha mantıklı gibi görünüyor automagicallylar karşılık /etc/mailname
veya başka merkezi adı yapılandırma.
Sorumun cevabının Debian wiki'den bu metinde bulunabileceğini hissediyorum :
Exim tarafından EHLO / HELO'da kullanılan isim konfigürasyon seçeneğinden alınmıştır
primary_hostname
. Debian'ın exim4 varsayılan konfigürasyonu ayarlanmadıprimary_hostname
. Exim sonra ana bilgisayar adını bulmak için uname () olarak varsayılandır. Bu çağrı yalnızca bir bileşen döndürürse, tam ana bilgisayar adını elde etmek için gethostbyname () veya getipnodebyname () kullanılır.Exim HELO'ları localhost.localdomain olarak kullanıyorsa, muhtemelen Debian yükleyicisinin bazı sürümleri tarafından oluşturulan yanlış yapılandırılmış / etc / hosts dosyalarına sahipsiniz. Bu durumda, lütfen / etc / hosts dosyasını düzeltin.
Ne yazık ki, tüm bunların ne anlama geldiğini tam olarak bilmek için Linux sunucu yönetimine yeterince aşina değilim :(
hostname -f
hala "localhost" u bildirir. Cevabınızdaki / etc / hosts bölümü buggy gibi görünüyor - ilk kez neye benzemesi gerekiyor?