Niektóre zdalne serwery SMTP, które próbuję dostarczyć pocztą, odmawiają przyjęcia HELO z mojego serwera:
504 5.5.2 <localhost>: Helo command rejected: need fully-qualified hostname
Najwyraźniej mój serwer Exim4 wysyła localhost
jako swoją FQDN. Przeszukując sieć i kilka plików konfiguracyjnych, dowiedziałem się, że wartość wysyłana jako FQDN podczas HELO jest pobierana ze primary_hostname
zmiennej konfiguracyjnej.
Moje pytanie brzmi: jaki jest prawidłowy sposób zmiany tej zmiennej w systemie Debian? Wydaje mi się, że mogę po prostu zakodować wartość w jednym z plików konfiguracyjnych Exim4, ale IMHO wydaje się bardziej sensowne, jeśli wartość ta odpowiada automagicznie/etc/mailname
lub innej scentralizowanej konfiguracji nazwy.
Mam wrażenie, że odpowiedź na moje pytanie można znaleźć w tym tekście z wiki Debiana :
Nazwa używana przez Exim w EHLO / HELO jest pobierana z opcji konfiguracji
primary_hostname
. Domyślna konfiguracja exim4 Debiana nie została ustawionaprimary_hostname
. Exim następnie domyślnie uname (), aby znaleźć nazwę hosta. Jeśli to wywołanie zwraca tylko jeden składnik, do uzyskania w pełni kwalifikowanej nazwy hosta używana jest metoda gethostbyname () lub getipnodebyname ().Jeśli twoje Exim HELO jako localhost.localdomain, najprawdopodobniej masz źle skonfigurowane / etc / hosts utworzone przez niektóre wersje instalatora Debiana. W takim przypadku napraw swój plik / etc / hosts.
Niestety, nie jestem wystarczająco zaznajomiony z administracją serwera Linux, aby dokładnie wiedzieć, co to wszystko oznacza :(
hostname -f
nadal zgłasza „localhost”. Część dotycząca / etc / hosts w twojej odpowiedzi wydaje się błędna - jak powinna wyglądać pierwsza płyta?