| Autor |
Beitrag |
Savage
      
Beiträge: 110
|
Verfasst: Sa 09.11.02 20:40
Hi allerseits,
hat jemand von euch ne Ahnung, wie ein Mailserver die empfangenen Mails zu der richtigen Mailadresse weiter verschickt?
Mein Ziel ist es per Clientsocket eine EMail ohne smtp-server direkt zu versenden. (Muss ja schließlich auch möglich sein
Oder weis jemand die richtigen RFCs, die erklären, wie ein Mailserver die Mails weiter verschickt. (also nicht, wie ich ne Mail an einen Mailserver über port 25 überreiche, sondern, wie ich ne Mail ohne Mailserver verschicke)
danke schon mal
mfg
Savage
|
|
Kalka
      
Beiträge: 33
|
Verfasst: So 10.11.02 00:58
also du musst dich dabei direkt zu einem mailServer Connecten. Dann musste halt mit den ganzen strings arbeiten wie Mail FROM:, RCTPTO: oder sowas halt. ähhm, RCF weiß ich jetzt net,m such einfach SMTP
cu Kalka
|
|
Savage 
      
Beiträge: 110
|
Verfasst: So 10.11.02 09:22
naja, dass will ich ja vermeiden, mich mit einen einfachen Mailserver zu connecten, das ist ja nicht das Problem. Wie ich Mails über einen Mailserver Sende und Abfrage weis ich schon (ist recht einfach).
Mein Ziel soll es sein, eine Mail ohne Mailserver zu versenden. Weil, wenn der Mailserver eine Mail erhält, so muss er die ja auch weiter senden (zum Empfänger). D.h. ich will versuchen Mailserver zu spielen (zu imitieren) und somit die Mail direkt an den Empfänger zu senden. (zB. jemand@gmx.de direkt zu gmx.de)
Ich hoffe ihr versteht was ich mein.
MfG
Savage
|
|
Kalka
      
Beiträge: 33
|
Verfasst: So 10.11.02 13:13
mann kann keine mails ohne mailServer senden *lol*
Ich weiß was du meinst, nur du nicht was ich *lol*
also nehmen wir mal an du willst ne Mail zu blabla@gmx.de senden. Jetzt MUSST du dich zu DEM MailServer Connecten, der nach dem @ steht! Sonst wird die Mail nocht ankommen. Allerdings heißt das net einfach gmx.de, sondern ganz komisch  Also ich weiß net mehr genau, wie du das rausbekommst?! D.h. ohne mailserver geht es gar nicht, weil du die mail ja an den MailServer sendest. Ach, und wenn du dich einfach zu pop.gmx.de verbindest, geht es auch nicht, weil man sich da erst einloggen musst. Das ist noch eine Andre Addresse..
cu Kalka
|
|
Moritz M.
      
Beiträge: 1672
|
Verfasst: So 10.11.02 14:11
Eine Mail ohne Mailserver verschicken....
Das wäre wie einen Brief ohne die Deutsche Post(soll keine Schleichwerbung sein) zu verschicken
Das geht einfach nicht!
Und mit nem Socket schon gar nicht.
Oder hast du vor auf dem Server ein ServerSocket und in deinem Programm ein ClientSocket einzubauen, dann was an das SerSock zu schicken und das Programm beim Server Socket kopiert die Mail dann so mir nichts dir nichts in das Postfach...?
neneneneeeeee! 
|
|
Savage 
      
Beiträge: 110
|
Verfasst: So 10.11.02 14:46
hmm, nochmal das Prinzip skiziert:
(1) EMail-Programm (zB. Outlook) sendet eine Mail an einen SMTP-Server (Email-Client connected sich über Port 25 zum Server --> Mail From:, RCPT TO:, DATA, ....)
(2) SMTP-Server sendet die Mail weiter, bis sie irgendwann mal zum POP-Server des Empfängers ankommt --> hier will ich eingreifen
(3) EMail-Programm (zB. Outlook) lädt die Mail von seinem POP-Server herunter (EMail-Client connectet sich mit seinen POP-Server über Port 110, Authorisierung: user, pass, Mailinfos: list, top [nr] [zeilen], retr [nr] --> Mail wird heruntergeladen)
Mein Ziel ist es nun von Position 2 aus eine Mail zum Empfänger zu senden! Mein Prob.: wie überreicht der SMTP die Mail zum Empfänger (und in welche Struktur), nix anderes.
Und das geht auch über einer Client-Compo über TCP, weil, ich hab mal so zum spaß ne MAil in dieser Art und weise zu mir selbst geschickt:
test@[meine IP bzw DNS]
2 Sekunden später meldet sich meine Firwall und blockierte den SMTP ab.
Was mir fehlt ist der Port und die ganzen Befehle --> also die RFCs zum Thema.
Ich hoffe, dass ich jetzt etwas verständlicher war.
Gruß
Savage
|
|
Coentje
Hält's aus hier
Beiträge: 7
|
Verfasst: So 10.11.02 15:23
Du schreibst eine Mail an irgendwenn@gmx.de.
Statt die Mail an Deinen (bzw. den Deines Providers) SMTP-Server zu übergeben, möchtest Du die Mail direkt an den Server mx0.gmx.net leiten.
Verstehe ich Dich richtig?
Gruß aus dem Norden,
Coen
P.S. RFCs zu SMTP: 2821, 2822, 1425, evtl. 1985
|
|
Moritz M.
      
Beiträge: 1672
|
Verfasst: So 10.11.02 15:57
Ja, ich glaubel, das meint er. Er will einen smtp-Server schreiben, glaube ich, und sucht die Parameter, die er an den pop3-server übergeben muss, hab ich recht?
|
|
Savage 
      
Beiträge: 110
|
Verfasst: So 10.11.02 16:02
Ganz genau:
Jetzt hab ich es auch endlich geschaft.
Mein Fehler war, dass ich gedacht hab, dass der SMTP die Mail zum POP versendet, was aber nicht so ist. Der eigene SMTP sendet die Mail auch nur zum mx SMTP des Empfängers und kommuniziert dann mit Mail From,....
usw.
Vielen Dank!!, das mit den mx0.gmx.net hat mich auf die richtige Weg gebracht
MFG
Savage
|
|
Moritz M.
      
Beiträge: 1672
|
Verfasst: So 10.11.02 16:11
Viel Spaß dann mit deinem Prog
|
|
Coentje
Hält's aus hier
Beiträge: 7
|
Verfasst: So 10.11.02 16:28
Wichtig ist, dass Du vorher einen DNS-Lookup machst. Der MX-Eintrag muß ja nicht zwingend auf die Dir bekannte Domain zeigen.
Die Anti-Spamming-Maßnahmen der Mail-Server könnten Dir auch noch Probleme bereiten (Reverse-DNS-Lookup, usw.)
Gruß,
Coen
|
|
Kalka
      
Beiträge: 33
|
Verfasst: Mo 11.11.02 16:50
ahh, da war die Addy wieder, wie zum teufel kommt ihr an mx0.gmx.net dran? also ich kannte nur pop.gmx.de, aber wie kommt man daran, was muss man senden, wie geht es in Delphi??
cu Kalka
|
|
Savage 
      
Beiträge: 110
|
Verfasst: Mo 11.11.02 17:24
also noch mal vielen Dank für eure Hilfe,
um an die Mailexchanger Adresse ranzukommen, muss man einen mx-lookup durchführen. Am besten die Indy-Kompo DNS verwenden. Im Beispiel von Indy ist ein Prog namens DNSResolver, dort als Query MX einstellen, Domain und nen DNS-Server eintragen (zB.: ns1.public.eti.at) und request starten. Fertsch
Danach werden dir die möglichen MX-Adressen der Domain nach priorität aufgelistet.
MfG
Savage
|
|
Coentje
Hält's aus hier
Beiträge: 7
|
Verfasst: Mo 11.11.02 17:25
| Kalka hat folgendes geschrieben: | | mann kann keine mails ohne mailServer senden *lol* |
Stimmt, aber man kann sich einen basteln
POP und SMTP sind (vereinfacht und bildlich gesprochen) zwei Seiten einer Medaille - Münze eben. Mit POP holst Du Deine Mail aus deinem Postfach. Mit SMTP wird Mail zugestellt - auch zwischen Servern. Um herrauszufinden welcher Server für eine Domain zuständig ist benötigt man eigentlich nur einen Nameserver und sieht dort nach. Wobei das Zauberwort "MX" ist...
Gruß,
Coen
|
|
Moritz M.
      
Beiträge: 1672
|
Verfasst: Mo 11.11.02 19:27
POP ist sozusagen dein Briefkasten, und SMTP der Briefträger.
Auch mal Bildlich und realischdisch gesprochen 
|
|
Kalka
      
Beiträge: 33
|
Verfasst: Mo 11.11.02 22:28
aber wie genau komm ich denn nu an mx0.gmx.net? also ich würde das gerne nur mit ClientSocket machen?
cu Kalka
|
|
Moritz M.
      
Beiträge: 1672
|
Verfasst: Di 12.11.02 13:46
Na eigentlich in der Regel Host und Port(es gibt glaub ich so nen Standartport, weiß ich grad nicht) eintragen und connecten, und dann musst du irgendwelche Parameter übergeben. irgendwie so(is jetzt aber aus der lauf geholt!):
ClientSocket1.Socket.SendText('mail to XXX subject XXX body XXX......');
kann dir die paras aber nicht genau sagen 
|
|
Kalka
      
Beiträge: 33
|
Verfasst: Di 12.11.02 13:57
hmm ne, so sende ich ja die Mail wenn ich Connected bin, die Befehle kenne ich ja alle, ich muss nur wissen, womit ich mich Connecten soll. Also mit pop.gmx.de kann ich es net, da will er das ich mich einlogge, und das geht irgendwie net. Allerdings geht es bei dieser andren Addresse ohne Probleme. Nur wie seid ihr an die Addresse gekommen??
cu kalka
|
|
Moritz M.
      
Beiträge: 1672
|
Verfasst: Di 12.11.02 14:03
Ja, bei pop.gmx.de loggt sich ja auch das Mailprog ein und holt die Mails für die entsprechenden Benutzer. Wenn du dich da nicht einloggen müsstest dann wärs ja schlimm
|
|
Coentje
Hält's aus hier
Beiträge: 7
|
Verfasst: Di 12.11.02 16:10
Wie es mit Indy & DNSResolver geht wurde ja schon weiter oben beschrieben. Wie es direkter geht kann ich leider auch nicht sagen. Ich könnte Dir aber sagen welche RFCs das grundsätzlich beschreiben - 1034, 1035 und 974.
Ich habe (glaube ich) irgendwo auch noch ein klein Windos-(Shareware?)Programm, das solche Anfragen macht. Wenn es interresant sein könnte kann ich das mal suchen - Könnte aber länger dauern.
Port Port für DNS-Anfragen ist jedenfalls 53 und die meisten Nameserver unterstützen UDP und TCP.
Vielleicht hift es ja wenigsten ein wenig,
Gruß
Coen
|
|