Mails abschicken hinter Firewall

rMarkus

Chuck The Plant
Hallo,


ich verwende das Mailprogramm Cone (/usr/ports/mail/cone) zu meiner vollsten Zufriedenheit mit IMAP.

Das Senden von Mails jedoch funktioniert nicht, da das Mailprogramm bei SMTP "MAIL FROM:" mit meinem lokalen Hostnamen und User ausfuehrt.

Angeblich verwendet Cone Sendmail, kann ich das irgendwie beeinflussen, da mein lokaler Hostname nur im lokalen DNS auflösbar ist.
 
Konfiguriere dein sendmail als Smart Host. Die Absender-Domain kannst du u.a. mit MASQUERADE_* beliebig umschreiben. Da das Thema doch recht umfangreich ist, solltest du dir ein HOWTO o.ä. via Suchmaschine besorgen.
 
Eine andere Variante ist, einen Smart Relay eines Mail Providers zu verwenden. Solange dieser SMTP AUTH unterstuetzt, sollte das funktionieren. Normalerweise wird der aber Deine Absender Adresse umschreiben, so dass die verwendet wird, die Du bei diesem Provider hast. Diese Variante funktioniert also nur, wenn Du nur eine Absender Adresse hast.

Fuer belibiege Absender Adressen tut's wohl nur ein eigener root Server. ;)

HTH
 
Danke für die Hinweise.


Ich verwende SMTP mit User/Passwort unter GMX.
Als User wird dort auch meine korrekte Adresse verwendet, d.h. ich bin fuer SMTP-Relay authorisiert.

Code:
MAIL FROM:<ich@meinrechner.local> BODY=7BIT: 550 5.1.8 {mp013} Cannot resolve your domain

Trotzdem versucht er meinen Hostnamen aufzuloesen, was selbstverständlich nicht funktionieren kann.

Leider ist die Doku zu Cone sehr dürftig, aber anscheinend verwendet er nur Sendmail, wenn man keinen SMTP-Host eingetragen hat.

Ausserdem kennt Cone meine E-Mail-Adresse, trotzdem verwendet er die unsinniger Weise nicht.
 
Zuletzt bearbeitet:
markus.r schrieb:
Ausserdem kennt Cone meine E-Mail-Adresse, trotzdem verwendet er die unsinniger Weise nicht.
Wenn er an den lokalen sendmail schickt, ist das sehr wohl sinnvoll. Wie es dann weitergeht ist Aufgabe von sendmail. Wenn die Mail dann raus ins Internet soll, muß man hier mit Smart Hosts/Relays u.ä. arbeiten. Man kann das auf diese Weise schön zentralisieren, der Aufwand lohnt sich IMO aber nur in mittelgroßen Netzen.

Deswegen: Wenn du bei Cone irgendwie den SMTP von GMX eintragen kannst (der Link von -Daemon- hilft ja evtl. weiter), dann solltest du diesem auch die GMX-E-Mail-Adresse zuordnen können. Bei dem von mir verwendeten KMail z.B. kann man beliebig viele "Identitäten" anlegen, in welchen man u.a. bestimmte SMTP-Server mit bestimmten Absender-Adressen verknüpfen kann. Vor dem Versenden einer Nachricht wählt man dann die gewünschte Identität aus. Es macht aber in der Tat keinen Sinn, deine lokale Adresse an den GMX-SMTP zu übermitteln, der wird die nicht annehmen wollen.
 
Ich habe mal etwas die Vorzuege von OpenSource genutzt und habe den Quellcode nach Antworten durchsucht:

1.
Mails werden mit libmail versendet

2.
Das "MAIL FROM: " stammt aus der Datenstruktur smtpInfo.sender, welche nicht aktiv gefüllt wird von libmail, sondern von dem Nutzer der Lib.

3.
mailtool ist wie Cone Nutzer dieser Lib, dort kann man das durch den Parameter "-mailfrom user@host.org" beeinflussen.l

4. Cone belegt dieses sendInfo->sender mit seinem CursesEdit.sender, was irgendwie seltsam aus einer AddressList kommt.

Da muss ich noch mal weiterschauen

PS:
0815Chaot: Dass GMX trotz der erfolgreichen Anmeldung via SMPTS trotzdem noch "MAIL FROM:" prüft ist wohl eine Art dämliches Sicherheitsfeature. Andere Provider wie Freenet haben das nicht.
 
markus.r schrieb:
0815Chaot: Dass GMX trotz der erfolgreichen Anmeldung via SMPTS trotzdem noch "MAIL FROM:" prüft ist wohl eine Art dämliches Sicherheitsfeature.
Nö, das ist ein Geschäftsmodell. Das, was du da machen willst, nennt man im Marketingsprech meistens "Open Relay" und das kostet bei den meisten Providern extra. Wer nicht extra zahlt, der darf seine Mails nicht mit selbstkreierten Absenderadressen auf die Reise schicken.

markus.r schrieb:
Andere Provider wie Freenet haben das nicht.
T-Online hat, wenn ich recht informiert bin (bin schon länger von dem Laden weg), vor ein paar Jahren seinen (vormals kostenpflichtigen) Open Relay komplett abgeschaltet - da gibt es das überhaupt nicht mehr, auch nicht für Aufpreis. (Oder ich habe das vielleicht auch komplett falsch in Erinnerung.)
 
5.
das lokale CursesEdit.sender wird mit Save...() belegt aus addressArray.
Anscheinend mit dem jeweils 1. Eintrag.

6.
addressArray ist eine Austauschdatenstruktur von CursesAddresslist, welches quasi ein angezeigtes Curses-Adress-Fenster ist.

7.
Der interne Speicher von CursesAddresslist ist std::vector<AddressField*> fields .
Es wird befüllt mir setAddresses().

8.
wird befuellt mit der Datenstruktur fieldsave, welche wiederum mit dem Makro TOGGLE() bzw. TOGGLET() verhackstueckt wird .

9. ...


Um das mal abzukürzen:

Der "MAIL FROM:"-Wert fuer den SMTP-Envelope kommt aus einem nicht angezeigten Header im Absenderfeld.
Wenn man eine Nachricht schreibt, dann kann man sich alle Header mit Strg-F anzeigen lassen und nun "From: " korrigieren.
 
Zurück
Oben