.png)
Als ich einen VPS einrichtete, setzte ich den Namen auf „main“, sodass meine Dateien /etc/hosts und /etc/hostnames beide einen Eintrag hatten (nämlich „main“). Also richtete ich Root-SSH-Zugriff ein, gab „hostname“ ein und bekam „main“. Dasselbe passiert, wenn ich „hostname -f“ eingebe.
Also, ich versuche, Exim4 so einzurichten, dass E-Mails von meiner Django-App gesendet werden (ich muss nur senden, nicht empfangen) und habe Folgendes hinzugefügt /etc/hosts
.
127.0.1.1 main.mydomain.com main
<myip> main.mydomain.com main
Ich habe es dann ausgeführt service hostname restart
und hostname -f
nur zurückgegeben main
. Ich habe sogar neu gestartet (was ich versuche zu vermeiden) und es kommt immer noch zurück main
. Ich bin mir nicht sicher, warum das so ist ... Die eigentlichen Dateien selbst zeigen meine neuen Einträge, aber ich kann den eigentlichen hostname
oder hostname -f
Befehl beim besten Willen nicht ändern.
Ich vermute, bin mir aber nicht 100 % sicher, dass das der Grund ist, warum ich bei Verwendung des Befehls keine E-Mail erhalte (zu viele E-Mails?). Wenn es nicht unbedingt erforderlich ist, Hostnamen für die Verwendung von Exim einzurichten, würde ich es gerne vermeiden, weil es mir solche Kopfschmerzen bereitet hat.echo test message | mail -s test [email protected]
[email protected]
Für jede Hilfe bin ich Ihnen für Ihre Großartigkeit auf ewig dankbar.
Antwort1
Zum Setzen des Domänennamens können Sie das gleichnamige Programm verwenden domainname
:
sudo domainname example.com
Um den tatsächlich eingestellten Wert abzufragen, erfolgt der Aufruf ohne Parameter.
Außerdem muss das hostname.sh
Skript ausgeführt werden (hängt vom Betriebssystem ab), damit die Änderungen wirksam werden:
/etc/init.d/hostname.sh
Unter Debian und Derivaten gibt es außerdem , /etc/mailname
das die Standardabsenderdomäne für ausgehende E-Mails enthalten sollte.
Zu Exim kann ich keine Aussage machen, aber ich denke, die Standardwerte in Exim für Host- und Domänennamen sollten auf die Einstellungen des Betriebssystems verweisen.
So zitieren Sie die Manpage des Hostnamens:
Der FQDN
Sie können mit diesem Befehl weder den FQDN (wie von hostname --fqdn zurückgegeben) noch den DNS-Domänennamen (wie von dnsdomainname zurückgegeben) ändern. Der FQDN des Systems ist der Name, den der Resolver(3) für den Hostnamen zurückgibt.
Technisch: Der FQDN ist der Name, den getaddrinfo(3) für den von gethostname(2) zurückgegebenen Hostnamen zurückgibt. Der DNS-Domänenname ist der Teil nach dem ersten Punkt.
Daher hängt es von der Konfiguration (normalerweise in /etc/host.conf) ab, wie Sie es ändern können. Normalerweise (wenn die Hosts-Datei vor DNS oder NIS analysiert wird) können Sie es in /etc/hosts ändern.
Antwort2
Wenn E-Mails über Postfix gesendet werden, sollten Sie auch /etc/postfix/main.cf
den richtigen Wert fürmyhostname = xyz