email per gmx senden

Hallo,
ich wollte eine email per gmx senden. der Server versteht die Login Daten nicht. Hat mir da jemand einen Tipp.
Vielen Dank im Voraus

Code:

#include <Ethernet.h>
#include <SPI.h>

byte mac[] = { 0x90, 0xA2, 0xDA, 0x0D, 0x44, 0x70 };
byte ip[] = { 192, 168, 178, 109 };
byte server[] = { 213, 165, 64, 20 }; // IP von gmx

EthernetClient client;

void setup()
{
 Ethernet.begin(mac, ip);
 Serial.begin(9600);
 
 delay(1000);
 
 Serial.println("connecting...");

 if (client.connect("mail.gmx.net", 25)) {
   Serial.println("connected");
   client.println("HELO test");

   client.println("auth login UlotVlNAZ214LmRl cG9pdXp0MTk=");

  client.println("MAIL FROM: RZ-VS@gmx.de");

  client.println("RCPT TO: RZ-VS@gmx.de"); //wollte einfach eine email an mich selber senden
  client.println("DATA");
  client.println("SUBJECT: Arduino sendet Email");

  client.println();
  client.println("Erster Test.");
  client.println(".");
  client.println("QUIT");
 } else {
   Serial.println("connection failed");
 }
}

void loop()
{
 if (client.available()) {
   char c = client.read();
   Serial.print(c);
 }
 
 if (!client.connected()) {
   Serial.println();
   Serial.println("disconnecting.");
   client.stop();
   for(;;)
   ;
 }
}

serieller Monitor:

connecting...
connected
220 gmx.com (mrgmx101) Nemesis ESMTP Service ready
250 gmx.com Hello test [109.193.194.82]
500 Syntax error, command unrecognized
530 Authentication required
503 Bad sequence of commands
503 Bad sequence of commands
500 Syntax error, command unrecognized
500 Syntax error, command unrecognized
500 Syntax error, command unrecognized
500 Syntax error, command unrecognized
221 gmx.com Service closing transmission channel

disconnecting.

Und Du glaubst innerhalb 1 Sekunde ist die Ethernetverbindung aufgebaut?

Grüße Uwe

Das kann klappen, das mit der Sekunde.....

Der Hase liegt sicherlich hier im Pfeffer:

Seit April 2014 verwenden alle GMX Server nur noch SSL-Verschlüsselung. Der Abruf und Versand von E-Mails mit E-Mail-Programmen und Mail Apps funktioniert nur, wenn SSL-Verschlüsselung aktiviert ist. Zuvor war beides möglich:

Aus: https://hilfe.gmx.net/sicherheit/ssl.html

Also Abhilfe ein andere Emailadresse bei einem anderen Provider?

Grüße Uwe

Vielen Dank für die Antworten. Das ging ja fix. SSL ist mir zu kompliziert. Ich suche einem andren Provider. Gruß rgrg

Das heißt aber, daß Du einen Vertrag mit diesem anderen Provider brauchst, da die Provider Emails nur annehmen, wenn Du mit ihren Internetzugang surfst. (oder ist das in Deutschland anders?)

Grüße Uwe

Hallo,

uwefed: Das heißt aber, daß Du einen Vertrag mit diesem anderen Provider brauchst, da die Provider Emails nur annehmen, wenn Du mit ihren Internetzugang surfst. (oder ist das in Deutschland anders?)

Grüße Uwe

es gibt eine Menge reine Mailprovider. Teilweise auch als Freemailer (werbefinanziert oder limitiert). Allerdings gibt es m. W. in Deutschland keinen mehr ohne SSL. Das geht auf die Initiative "E-Mail made in Germany" zurück. Ich stand vor einiger Zeit vor einem ähnlichen Problem, als ich Mails von einem MEGA versenden wollte. Die "normalen" Arduino sind einfach nicht leistungsstark genug um zu verschlüsseln. Ich habe das Ganze aber dann anders gelöst (Email-Server, der die Mails dann mit SSL weiterreicht). Hatte damals auch noch diesen Mailprovider gefunden: https://www.smart-mail.de/ Allerdings habe ich den nie getestet.

Gruß Christoph

Keine Ahnung obs noch funktioniert, aber schau mal hier: http://forum.arduino.cc/index.php?topic=219616.0 da läufts über smtp2go

Mein alter Arcor Mailaccount (jetzt zwar von Vodafone weiterbetrieben, aber Arcor als Domain existiert noch) schluckt da alles. Das mit dem SSL Login ging mir bei deiner Frage auch als erstes durch den Kopf. Ich hatte vor Jahren noch ein anderes Problem. Ich hatte eine RAID Controllerkarte, die Satusmeldungen per Mail verschicken konnte. Die hat sich aber irgendwie nicht authentifiziert, sondern den Kram einfach losgeschickt. GMX hat da nicht mitgemacht, bei Arcor funktionierte es ;D

Eine Lösung ohne SSL ist keine Lösung mit Zukunft - früher oder später werden alle Provider darauf umstellen. Ich sehe da genau zwei Möglichkeiten (außer vom Arduino wegzugehen):

a) man installiert einen lokalen/inhouse Mailserver als Relay. Den kann man so einstellen, dass er unverschlüsselte Mails entgegennimmt und verschlüsselt "nach Draußen" weiterleitet, z.B. HMailServer oder andere. Viele NAS-Geräte (z.B. QNAP oder Synology) bieten auch die Möglichkeit einen solchen Server (z.B. XMail) laufen zu lassen.

b) da man zum Mailen ohnehin eine Internetverbindung benötigt, kann man auch ein extrenes PHP-Skript zu Hilfe nehmen, was die Daten z.B. per HTTP-Get entgegennimmt und ordnungsgemäß verschlüsselt an einen Mailserver weiterleitet

Hallo,

ein seht interessantes Thema das mich auch gerade beschäftigt.

Variante a) will mir nicht gefallen, egal was man nimmt es ist ein zusätzliches Gerät welches im 24h Dauerbetrieb laufen muß - und Strom verbrucht. Außerdem denke ich daß so einen Mailserver zu konfigurieren ohne tiefgreifende IT Kentnisse eine gewaltige Herausforderung wird...

Variante b) klingt interessant. Ich habe einen Webspace samt eigener Domain. Aber leider von PHP absolut keine Ahnung. Daher die Frage, gibt es da was fertiges & bewährtes das man nur mehr ein wenig individualisieren und auf den Webspace hochladen muß?

Christian

a) Einfach mal direkt einen MCU aussuchen, der auch für entsprechende Aufgaben fähig ist. Dabei muss es ganz sicher kein System mit Bildschirmanschluss etc sein (BananaPi, Raspi, ...). Es reicht lediglich eine Schnittstelle, mit der man über SSH auf das Gerät zugreifen kann. Würde dann aber idR ein Linux-kompatibles System voraussetzen.

Beispielsweise sollte ein SSL wunderbar auf einem STM32 laufen. Jedoch wird man sich mit der Materie wohlgemerkt deutlich näher auseinandersetzen müssen. Stromverbrauch sollte sich vom Arduino nicht sonderlich unterscheiden.

Hallo,

ist sicher sehr wahr - aber die Zeit mich tiefgreifend damit auseinandersetzen fehlt mir einfach im Moment aus verschiedenen Gründen. Daher vorerst die Suche nach Lösungen auf dem Level von Arduino...

Christian

Also ein NAS (z.B. QNAP oder Synology) stellt sich ja niemand hin, nur um einen Mailserver darauf laufen zu lassen, das hat ja deutlich mehr Nutzwert (zentrale Daten-"Aufbewahrung", Foto/Film-Archiv, Download-Dienste usw, so dass mehrere Familienmitglieder bzw. Computer darauf zugreifen können u.v.a.), deshalb finde ich das ganz praktisch. Darauf läuft ein kleines Linux, welches über eine Webobefläche konfiguriert wird.

Sowohl um einen Mailserver zu konfigurieren oder ein PHP-Skript abzulegen und einzurichten - überall muss man ein wenig lernen, darum wirst du nicht herumkommen ... Natürlich muss man eine entsprechendes Mailskript nicht unbedingt selber schreiben, da gibts schon was, aber zum Einrichten benötigt man doch ein gewisses Grundverständnis.

Schritt 1 (am Arduino) wäre, die per Mail zu versendenden Daten (Abs-Addr, Ziel-Addr, Subject, Content) in ein HTTP-GET-Statement zu "verpacken" und an eine beliebige Webadresse zu senden. Das könntest du schon mal selber herausfinden, dazu gibts massig Beispiele.

Schritt 2 (auf dem Webserver) wäre, zu testen, ob die Daten auch ankommen und "herausgefischt" werden können und z.B. zur Kontrolle in eine lokale Datei sichern. Dazu solltest du lokal z.B. XAMPP installieren, das enthält einen Apache-Webserver nebst PHP-Interpreter, die dann direkt auf deinem PC oder Mac laufen.

Schritt 3 wäre dann, die empfangenen Daten an eine fertige Lib zu übergeben, z.B. "PHP-Mailer"

Schritt 4 wäre, das fertige funktionierende Konstrukt auf einen Webspace zu kopieren ...