[ matrix.goran @ 23.12.2016. 08:02 ] @
Uradio sam probnu asp.net c# aplikaciju za slanje maila. Na localhost radi odlicno, ali na remote server kada upload-ujem nece da radi .
Ako je neko imao slican problem molim za pomoc.Evo i primera:

u web configu:

<system.net>
<mailSettings>
<smtp deliveryMethod="Network" from="[email protected]">
<network host="smtp.gmail.com" userName="[email protected]" password="xxxxxx" port="25" defaultCredentials="false" enableSsl="true"/>
</smtp>
</mailSettings>
</system.net>

I na Default strani :

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Net;
using System.Net.Mail;
using System.Threading;



namespace Default
{
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
SmtpClient smtpClient = new SmtpClient();
smtpClient.EnableSsl = true;

MailMessage msg = new MailMessage();

msg.To.Add("[email protected]");
msg.Subject = "test";
msg.Body = "test poruka";

smtpClient.Send(msg);
}
}
}


greska koju dobijem izgleda ovako:

Server Error in '/' Application.
A socket operation was attempted to an unreachable network [2a00:1450:400c:c04::6c]:25
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Net.Sockets.SocketException: A socket operation was attempted to an unreachable network [2a00:1450:400c:c04::6c]:25

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:


[SocketException (0x2743): A socket operation was attempted to an unreachable network [2a00:1450:400c:c04::6c]:25]
System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress) +208
System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception) +464

[WebException: Unable to connect to the remote server]
System.Net.ServicePoint.GetConnection(PooledStream PooledStream, Object owner, Boolean async, IPAddress& address, Socket& abortSocket, Socket& abortSocket6) +6646520
System.Net.PooledStream.Activate(Object owningObject, Boolean async, GeneralAsyncDelegate asyncCallback) +307
System.Net.PooledStream.Activate(Object owningObject, GeneralAsyncDelegate asyncCallback) +19
System.Net.ConnectionPool.GetConnection(Object owningObject, GeneralAsyncDelegate asyncCallback, Int32 creationTimeout) +324
System.Net.Mail.SmtpConnection.GetConnection(ServicePoint servicePoint) +141
System.Net.Mail.SmtpTransport.GetConnection(ServicePoint servicePoint) +170
System.Net.Mail.SmtpClient.GetConnection() +44
System.Net.Mail.SmtpClient.Send(MailMessage message) +1554

[SmtpException: Failure sending mail.]
System.Net.Mail.SmtpClient.Send(MailMessage message) +1906
SmtpTest.SmtpTest.Page_Load(Object sender, EventArgs e) +194
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +51
System.Web.UI.Control.OnLoad(EventArgs e) +92
System.Web.UI.Control.LoadRecursive() +54
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +772

Molim za pomoc :-)
[ Shadowed @ 23.12.2016. 08:47 ] @
Hosting provajder verovatno ima firewall koji blokira odlazni saobracaj (ili samo za mail). Mozda mozes da ih im posaljes zahtev da ti odobre, ali ne nadaj se previse.
[ matrix.goran @ 23.12.2016. 09:18 ] @
U pitanju je telekom srbije.
Vrlo su neazurni, nekako kao da im se ne radi bas puno.
Izgleda da cu morati da ih gnjavim.
Hvala
[ ravni @ 23.12.2016. 12:16 ] @
Zanimljiv nacin da se konfigurise SmtpClient, nisam ni znao da moze tako
[ mmix @ 23.12.2016. 13:23 ] @
Tesko ces naci provajdera koji ce ti tek tako pustiti port 25, problem je sto ako ti krenes da spamujes njima sprze IP adresu u spamfilteru. Sa druge strane ne mroa da znaci da ti blokiraju, meni je zapravo cudno da tebi ovo radi na localhostu sa obzirom na to da GMIL ne dozvoljava relaying preko porta 25 na smtp.gmail.com, dozvoljen je samo SSL SMTP preko 465 i TLS preko 587

Probaj da stavis 465 kao port u config fajlu i vidi dal radi

[ anon115774 @ 23.12.2016. 13:44 ] @
Ja sam sokiran koliko na ovoj temi ljudi pricaju napamet...

Da li je moguce da niko nije procitao ovo:
Citat:
matrix.goran:A socket operation was attempted to an unreachable network [2a00:1450:400c:c04::6c]:25


Ovo tvoj operativni sistem kaze da ne postoji ruta ka ovoj mrezi a mogu da potpisem da je to zato sto od svog provajdera nisi dobio IPv6 konfiguraciju. Boga pitaj zasto je aplikacija uzela IPv6 adresu od DNS-a ali ako nisi siguran kako to da resis u programu onda probaj za host da upises ip adresu umesto imena.
[ matrix.goran @ 23.12.2016. 14:01 ] @
Hvala puno na odgovoru Informer, ali ako moram da pitam, kako da vidim IP adresu?
smtp: mail.mts.rs se u promptu pinguje i to je ok, ali kada to sve unesem u kodu kod mene nista se ne desava osim greske koju sam prikazao iznad.

npr.

u web configu:

<system.net>
<mailSettings>
<smtp deliveryMethod="Network" from="[email protected]">
<network host="mail.mts.rs" userName="[email protected]" password="xxxxxx" port="25" defaultCredentials="false" enableSsl="true"/>
</smtp>
</mailSettings>
</system.net>

ostalo ostaje isto kao sto je iznad. greska je ista :-(
[ anon115774 @ 23.12.2016. 14:14 ] @
Pa kad kucas ping dobijes sa koje adrese se vraca odgovor.

A mozes da koristis i nslookup:

Code:
> www.google.com
Server:        10.2.1.1
Address:    10.2.1.1#53

Non-authoritative answer:
Name:    www.google.com
Address: 172.217.20.132


I jos jedna stvar. Greska ne bi smela da je ista jer mail.mts.rs nema AAAA zapis na DNS-u tako da ne moze da kaze da ta mreza ne postoji kad ga DNS nije ni preveo u tu adresu.

A ona adresa sto je problematicna u prvoj poruci je ispravna odnosno pripada google-u.

Code:
> 2a00:1450:400c:c04::6c
Server:        10.2.1.1
Address:    10.2.1.1#53

Non-authoritative answer:
c.6.0.0.0.0.0.0.0.0.0.0.0.0.0.0.4.0.c.0.c.0.0.4.0.5.4.1.0.0.a.2.ip6.arpa    name = wk-in-x6c.1e100.net.
[ matrix.goran @ 23.12.2016. 14:22 ] @
mmix hvala i tebi probao sam radi i SSL SMTP preko 465 i TLS preko 587, ali samo na localhost
[ matrix.goran @ 23.12.2016. 14:41 ] @
Informer uradio sam ali sa adreso mts-a. Ima nekog pomaka...Promenila se greska :-)

kada u web configu napisem sledece:

<system.net>
<mailSettings>
<smtp deliveryMethod="Network" from="[email protected]">
<network host="212.200.12.4" userName="[email protected]" password="xxxxxx" port="25" defaultCredentials="false" enableSsl="true" />
</smtp>
</mailSettings>
</system.net>

i na Default strani :

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Net;
using System.Net.Mail;
using System.Threading;



namespace Default
{
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
SmtpClient smtpClient = new SmtpClient();
smtpClient.EnableSsl = true;

MailMessage msg = new MailMessage();

msg.To.Add("[email protected]");
msg.Subject = "test";
msg.Body = "test poruka";

smtpClient.Send(msg);
}
}
}


dobijam sledecu gresku:

Server Error in '/' Application.
Server does not support secure connections.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Net.Mail.SmtpException: Server does not support secure connections.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:


[SmtpException: Server does not support secure connections.]
System.Net.Mail.SmtpConnection.GetConnection(ServicePoint servicePoint) +1536859
System.Net.Mail.SmtpTransport.GetConnection(ServicePoint servicePoint) +170
System.Net.Mail.SmtpClient.GetConnection() +44
System.Net.Mail.SmtpClient.Send(MailMessage message) +1852
SmtpTest.SmtpTest.Page_Load(Object sender, EventArgs e) +194
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +51
System.Web.UI.Control.OnLoad(EventArgs e) +92
System.Web.UI.Control.LoadRecursive() +54
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +772

Hvala jos jednom
[ anon115774 @ 23.12.2016. 14:45 ] @
Vidi... kada sam ja, pre 20 godina, pocinjao da ucim programiranje jedan iskusniji kolega mi je rekao da je najvaznije kada postoji greska da _procitam_ sta je greska. To bih savetovao i tebi jer ako ne budes citao greske vec samo kazes "ovo ne radi" bice ti jako tesko da radis. Primeti koliko je to lose na ovoj temi na primer jer nikom od ucesnika pre mene nija palo na pamet da procita gresku koju si kopirao vec su svi odmah krenuli sa nekim pretpostavkama i nagadjanjima iako vrlo jasno pise sta je problem.

Dakle, evo sada ova greska sto si postavio ima nevidjeno jednostavno objasnjenje:

Citat:
Exception Details: System.Net.Mail.SmtpException: Server does not support secure connections.


Da li postoji nesto sto sad tu nije jasno?
[ matrix.goran @ 23.12.2016. 15:01 ] @
20 god. koji je to period....svaka cast. Poslusacu tvoj savet.
Hvala na pomoci
[ mmix @ 23.12.2016. 17:24 ] @
U svakom slucaju ti se SSL SMTP nece javiti na portu 25 ni kod jednog provajdera. I preko koga ti uopste saljes emailove, preko mts-ovog server ili preko gmailovog servera? Nije isto.
[ matrix.goran @ 24.12.2016. 07:19 ] @
mmix: Outgoing – SMTP: mail.mts.rs, port 25 (nema SSL) i unose se kredencijali. Medjutim ne radi.
Sve vise verujem da odlazni saobracaj blokira neki firewal. Sta sve nisam probao...Nema veze snaci cu se hvala ti.
[ anon115774 @ 24.12.2016. 08:05 ] @
Citat:
matrix.goran: mmix: Outgoing – SMTP: mail.mts.rs, port 25 (nema SSL) i unose se kredencijali. Medjutim ne radi.


Sta znaci "ne radi"?

Citat:
Sve vise verujem da odlazni saobracaj blokira neki firewal.


Na osnovu cega to verujes? Pretpostavljam da si procitao gresku koju dobijas pa otuda taj zakljucak?
[ matrix.goran @ 24.12.2016. 08:21 ] @
Informer:server ne podrzava bezbedne veze. Ako ja to dobro razumem....Ili mozda gresim.
Za ovo ne radi napisao sam u zurbi. Sory
[ anon115774 @ 24.12.2016. 08:49 ] @
I kakve veze ima firewall sa tim sto server ne podrzava ssl?
[ matrix.goran @ 24.12.2016. 11:01 ] @
Evo pomaka:
Informer: U hosting podesavanjima , SSL support uopste nije instaliran
I jos mi kaze: To secure transactions with your site, use SSL protocol, which encrypts all data and transfers it over a secure connection. To employ SSL, install an SSL certificate on the site, and then select it below.
[ anon115774 @ 24.12.2016. 11:47 ] @
To o nije pomak jer to o cemu ti pricas nema nikakve veze sakriptovanjem veze ka smtp serveru.

Mislim da je tvoj pristup totalno pogresan odnosno ne mozes da se bavis programiranjem na ovom nivou a da prethodno nisi naucio najosnovnije stvari. Mi smo ovde da pomognemo kad zapne ali kod tebe je zapelo sto si preskocio sve sto je trebalo da naucis pre nego sto pocnes da pises program koji salje mail. Ne mozemo mi ovde sad da ti diktiramo slovo po slovo sta i gde da upises...
[ dusans @ 24.12.2016. 11:58 ] @
Code:

<network host="212.200.12.4" userName="[email protected]" password="xxxxxx" port="25" defaultCredentials="false" enableSsl="true" />

Pokušavaš da pristupiš Telekom serveru koji ne podržava SSL, što i sam znaš kako kažeš, ali i dalje uporno pokušavaš preko SSL-a.
Dakle stavi enableSsl="false" pa vidi šta se dešava.

[ matrix.goran @ 24.12.2016. 15:59 ] @
dusanns: sta nisam sve probao
Naravno da sam u kodu stavio enableSsl="false", ali to nema nikakve veze sa tim
Ok hteo sam malo da pozurim sa pitanjem, a da prethodno niam ni promenio u web configu izvinjavam se zbog toga, ali nije to u pitanju...
<network host="mail.mts.rs" userName="[email protected]" password="xxxxxx" port="25" defaultCredentials="true" enableSsl="false"/>
hvala mnogo
[ dusans @ 24.12.2016. 16:25 ] @
Default credentials ne sme na true.
Ako si stavio enableSsl na false, koju grešku sada dobijaš?

Evo ti parče koda koje provereno radi za gmail, pa probaj iz koda (mozda ti config pravi problem):

Code:

var Smtp = new SmtpClient("smtp.gmail.com", 587);
Smtp.Credentials = new NetworkCredential("[email protected]", "*****");
Smtp.EnableSsl = true;
Smtp.Send(Mail);


Edit: sada vidim da na Telekom možeš isključivo preko SSL-a (i porta 587), ne znam odakle si pokupio one podatke?
https://www.mts.rs/poslovni/podrska/internet/uputstva/e-mail
http://static.mts.rs/poslovni/...False&h=635647859996070000
http://my.adiswitch.com/knowle...-korisnike-Telekom-Srbije.html




[Ovu poruku je menjao dusans dana 24.12.2016. u 17:52 GMT+1]
[ matrix.goran @ 24.12.2016. 17:44 ] @
dusans u hosting setingsu mi je ssl suport postavljen na off.
Za parametre koje sam postavio , a koji su vezani za mts tj.mail.mts.rs, port 25 (nema SSL) i unose se kredencijali - sam dobio od njih.
Sve to sto si mi poslao sam gledao i ja. promena porta sa 25 na 587.
Pitao si me koja je greska....Ista, dakle: System.Net.Mail.SmtpException: Server does not support secure connections.
Sto se tice google-ovog mail servera i koda koji si mi poslao.Radio sam i to, na localhostu odlazni saobracaj i test aplikacija iz koda rade, kao i ova u web configu.
Hvala ti puno
[ dejanet @ 24.12.2016. 19:28 ] @
Ako nisi siguran, prvo probaj da setujes u outlook-u ili nekom slicnom email clinet-u. Kada zoves majstore iz mts-a, trazi parametre za outlook, da ne bi ulazio u beskrajne rasprave. Kada tu proradi onda prebaci u code, tj, app.config (web.config).
[ matrix.goran @ 24.12.2016. 21:25 ] @
Najmanje zelim raspravu. Hvala jos jednom
[ mmix @ 26.12.2016. 21:15 ] @
Informer ti dobro kaze, moas da naucis neke osnove prvo.

Web server SSL (aka hosting ssl) nije isto sto i SMTP SSL. Prvi odredjuje da ces ti pruzati kriptovati saobracaj za svoje korisnike web aplikacije, drugo znaci da ce mail server pruzati kriptovani saobracaj za slanje emailova.

Port 25 je default port za standardni (NON-SSL) SMTP, on je podlozan zescem spamovanju ako nije dobro konfigurisan i dobar deo hostera jednostavno BLOKIRA i dolazni i odlazni port 25 po defaultu i ukljucuje samo na specifican zahtev, a to da bi sprecili formiranje armije mailbotova. SSL SMTP po defaultu funkcionise na portu 587.

Razlog zasto funksionise drugde na portu25 a ne ovde (ako izuzmemo blokadu prota 25) je sto SMTP podrzava auto-upgrade sa non-SSL na SSL/TLS, tzv opportunistic TLS. Tj, ako server na EHLO odgovori sa 250-STARTTLS onda klijent izdaje komandu STARTTLS i pocinje SSL/TLS sesiju na vec otvorenom portu 25. Kad pogedas konfiguraciju mail.ms.rs, videces da nema podrske za auto-upgrade:

220 e12mailgw05.open.telekom.rs ESMTP
EHLO test.com
250-e12mailgw05.open.telekom.rs
250-8BITMIME
250-SIZE 20971520
250-AUTH PLAIN LOGIN
250 AUTH=PLAIN LOGIN


Medjutim, mail.mts.rs podrzava TLS na njegovom default portu 587, jer se na isti odaziva.

Dakle, ostavi ENableSSL = true i postavi port na 587 kao sto ti dusans preporucuje.

ONo sto je najverovatnije tvoj problem u toj konfiguraciji (EnableSSL+587) je sto ti je username/pass neispravan. Authentikacija je po RFCu deo SMTP TLS protokola, cak iako uspostavis secure vezu ako nisi uspesno prosao authentikaciju nisi zavrsio. A ovo je najverovatnije zbog defaultCredentials=true, to mora da bude false inace se klijent loguje security tokenom trenutnog windows usera sto ti sigurno nece raditi.

dakle
port 587
defaultCredentials=false
enableSsl=true

[ matrix.goran @ 27.12.2016. 17:27 ] @
Napravi ga nekako .....Sad je sve u redu....Test aplikacija radi.

dakle ipak je u pitanju port 25

protected void Page_Load(object sender, EventArgs e)
{
string result = "Message Sent Successfully..!!";
string senderID = "fasadavr";// use sender’s email id here..
const string senderPassword = "xxxxxxxx"; // sender password here…
try
{
SmtpClient smtp = new SmtpClient
{
Host = "mail.mts.rs", // smtp server address here…
Port = 25,
EnableSsl = true,
DeliveryMethod = SmtpDeliveryMethod.Network,
Credentials = new System.Net.NetworkCredential(senderID, senderPassword),
Timeout = 30000,
};
MailMessage message = new MailMessage("[email protected]", "[email protected]", "zdravo", "test mail");
smtp.Send(message);
}
catch (Exception ex)
{
result = "Error sending email.!!!";
}
// return result;
}

Hvala puno mmix, informer i ostali