Invio e-mail via form

mercoledì 29 marzo 2006 - 14.47

maurizio79 Profilo | Junior Member

Ciao a tutti.
Ho un problema con l' invio di e-mail tramite form. Il sito gira su Fw 1.0, per il momento. Il server smtp è quello dell' azienda, che ovviamente è impostato in modo da non essere veicolo di spam, quindi da indirizzi esterni accetta connessioni POP ma non SMTP. Il risultato è che quando un cliente cerca di inviare una e-mail il server si rifiuta di inoltrarla. Le righe che utilizzo sono molto semplici, "mailmess" è l' oggetto mailmessage:
SmtpMail.SmtpServer = "xxx.xxx.xxx.xxx"
SmtpMail.Send(mailmess)
Da un indirizzo interno tutto ok, la mail viene recapitata tranquillamente, ma di certo non posso permettermi di aprire il server smtp a chiunque. Nessuno ha incontrato la stessa difficoltà? Esistono server che danno questo servizio? Oppure si può implementare una soluzione via software?
Ciao e grazie, Maurizio

Brainkiller Profilo | Guru

>Da un indirizzo interno tutto ok, la mail viene recapitata tranquillamente,
>ma di certo non posso permettermi di aprire il server smtp a
>chiunque. Nessuno ha incontrato la stessa difficoltà? Esistono
>server che danno questo servizio? Oppure si può implementare
>una soluzione via software?

Ciao Maurizio,
non ho ben capito la seconda parte, chi non riesce a spedire le e-mail ?

Allora un server SMTP che riceve posta per un dominio esempio dominio.it dev'essere configurato in questo modo:

1) Accettare tutte le connessioni dall'esterno sulla porta 25
2) Tenere abilitato il Relay solo agli utenti autenticati sull'SMTP provenienti dall'esterno
3) Tenere abilitato il Relay agli utenti della rete locale interna
4) Accettare tutte le connessioni POP3 sulla porta 110 sia interne che esterne

In questo modo chi si connette dall'esterno ossia i client oppure altri server STMP possono solo depositare le e-mail solo su quel server e quindi che abbiano come destinatario indirizzi con @dominio.it.

Cosa non ti è chiaro ?
ciao

David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/

maurizio79 Profilo | Junior Member

>In questo modo chi si connette dall'esterno ossia i client oppure altri server STMP possono solo >depositare le e-mail solo su quel server e quindi che abbiano come destinatario indirizzi con >@dominio.it.

Il mio problema è proprio questo, ti spiego lo scenario.

Sul server della mia ditta gira un' applicazione Asp.Net che i clienti linkano nel proprio sito web. Ovviamente ad ogni cliente compaiono dati diversi, in quanto dipendono da quelli inseriti nel database da ciascuno di loro. L' utente finale (cliente del mio cliente) può inserire i suoi dati in una form, e questi dovrebbero arrivare alla casella di posta del mio cliente.
Quindi capita che Ciccio@tiscali.it (utente finale) debba spedire al mio cliente una mail a Tizio@libero.it. Ma il mio server non si fida di Ciccio, giustamente, io ad esempio da casa posso controllare la mia posta dell' ufficio, ma non inviare tramite il server smtp. Spero di essere stato chiaro.

Ciao e grazie, Maurizio

Brainkiller Profilo | Guru

>Quindi capita che Ciccio@tiscali.it (utente finale) debba spedire
>al mio cliente una mail a Tizio@libero.it. Ma il mio server non
>si fida di Ciccio, giustamente, io ad esempio da casa posso controllare
>la mia posta dell' ufficio, ma non inviare tramite il server
>smtp. Spero di essere stato chiaro.

Scusa, ma la posta proveniente da ciccio@tiscali.it perchè dovrebbe passare dal tuo SMTP Server ? ciccio@tiscali utilizzerà l'SMTP della sua connessione/provider cioè Tiscali per spedire la mail a tizio@libero.it no ?
Ho capito male qualcosa ?
CIao

David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/

maurizio79 Profilo | Junior Member

Ciccio@tiscali.it è il cliente finale, ovvero uno che di computer non deve capirci niente o quasi. Non mi sembrerebbe il caso di chiedergli di inserire l' indirizzo del suo server SMTP. Ecco perchè pensavo di usare il mio stesso server di posta per dare questo servizio, ma non posso aprirlo a tutti.
Ciao e grazie, Maurizio

Brainkiller Profilo | Guru

>Ciccio@tiscali.it è il cliente finale, ovvero uno che di computer
>non deve capirci niente o quasi. Non mi sembrerebbe il caso di
>chiedergli di inserire l' indirizzo del suo server SMTP. Ecco
>perchè pensavo di usare il mio stesso server di posta per dare
>questo servizio, ma non posso aprirlo a tutti.

Non c'è bisogno di chiedere alla persona il server SMTP ma lo si recupera tramite i records MX del DNS. I record MX sono dei record che indicano qual è il server di posta SMTP per il dominio tal dei tali.
In questo caso devi fare una risoluzione sul DNS ed avere i records e poi inviare la posta.

In ogni caso se vuoi fare un servizio dall'esterno di questo tipo per mandare mail a chiunque devi usare l'autenticazione se no se ti si attacca un bot che fa spam sei finito.
ciao

David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/

maurizio79 Profilo | Junior Member

Si direbbe che ho risolto, anche se sono in attesa di alcune prove dall' esterno. Sempre se ho risolto, è bastato creare un account sul server di posta del tipo noreply@dominio ed usarlo nella proprietà from del mailmessage. In effetti il server di posta non accetta connessioni SMTP da indirizzi esterni, ma il messaggio parte da se stesso(stesso server per pagine e posta), ovvero un indirizzo buono. Il problema era il campo mittente, dove prima mettevo l' indirizzo del cliente finale. Appena ho la conferma che la procedura funziona bene, chiudo il post. Comunque la risoluzione dell' MX sarebbe la soluzione ideale, e darebbe anche la possibilità ai clienti di rispondere al messaggio ricevuto.
Ciao e grazie, Maurizio

maurizio79 Profilo | Junior Member

Tutto ok, anche le prove che aspettavo confermano che il problema è stato risolto così

Ciao e grazie, Maurizio
Ciao e grazie, Maurizio
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5