Y
Y
Yuri Popov2012-09-07 05:59:40
Delphi
Yuri Popov, 2012-09-07 05:59:40

How to prove to Yandex that I am not a spammer myself?

I decided to add a self-made crash reporter to one of my programs. I would not want to start scripts for this on the server, so it was decided to send dumps to my e-mail. One but - authorization. It will not be very cool if the program is opened and the password is pulled out, even if it is from the left soap, from which it is only sent. In general, I solved the problem using IdSMTPRelay:

var
  m: TIdMessage;
  r: TIdSMTPRelay;
begin
  // Init
  r := TIdSMTPRelay.Create;
  r.DNSServer := '8.8.8.8';
  m := TIdMessage.Create;
  m.From.Text := '[email protected]'+GetComputerName;
  m.Recipients.Add.Address := 'мой@мейл.ру';
  m.Subject := GetComputerName+'''s dump';
  // Base information
  m.Body.Add('OS: '+GetOSVer);
  m.Body.Add('IE: '+GetIEVer);
  m.Body.Add('PC Name: '+GetComputerName);
  m.Body.Add('Username: '+GetUserName);
  // ...
  // Send
  r.Send(m);
  m.Free;
  r.Free;
end;

Everything is fine, no passwords are needed, but I ran into the fact that Yandex (whose mail services I use) began to reject my mail. And absolutely suddenly - it stopped working at the time of the next test run, when I attached the next file. There was an error
451 Service temporary unavailable. Please, come back later.

And this is temporary - several hours in a row. And the mail went, that is, MX worked.
I checked after rebooting the router (with a new IP address) - the letter was gone. But for how long it will work, and whether it will stop at the moment when it will be necessary to send the dump - the devil knows.
What would you recommend to solve the problem?

Answer the question

In order to leave comments, you need to log in

6 answer(s)
N
Nikolai Turnaviotov, 2012-09-07
@foxmuldercp

And what does Yandex support say about this?

A
Alexey Huseynov, 2012-09-07
@kibergus

Where is relay located? Is this a home Internet channel or for a company? DNS address dynamic or static? Is the reverse DNS registered and by name gives out the same IP from which the letter leaves?
These are all signs by which spam emails are cut off.

C
charon, 2012-09-07
@charon

Your code is not clear. But I can still suggest something:
- It's best not to use free mail. Obtain soap from a private mail server;
- m.From.Text := '[email protected]'+GetComputerName; - it is not right. Better add the computer name to some letter header, or to the subject, or to the body;
— send mail directly through the mail server that serves the mail domain To:. In this case, authorization is not required.

M
Melkij, 2012-09-07
@melkij

> And this is temporary - several hours in a row.
Have you tried sending the same email again? At the same time, is it necessary to break the connection, open a new one and send an identical message?
So far it looks like a typical greylisting in action.

D
dimmaq, 2012-09-08
@dimmaq

IMHO a very bad idea. Yes, I haven't seen this anywhere. Usually sent via default mailclient (mapi like) or via http(s) to your server.

V
Vladislav Yaroslavlev, 2013-11-14
@vladon

What does Yandex have to do with it?

Send to the MXs of your domain mail.ru.

Any primitive antispam will wrap something like this:

m.From.Text := '[email protected]'+GetComputerName;

Look at mailgun.com

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question