We are asp.net developers, work in a company.
Development achieved in our development devices/laptops where VS installed.
After development, test operations finished, we publish application into servers.
Our applications need to send emails, so we do that via exchange server through port 25.
Suddenly, during development and test stage, we noticed that we cannot send emails. We contacted exchange server administrator. He told us that he blocked port 25 for our development devices/laptops because Microsoft recommends that.
We asked him how we can achieve development, test operations? He said that you can do that from server! Note that server is for just publishing; it does not have any IDE for developing or test!
Is this true?
Does Microsoft recommend this?
Thats not true. But it is recommended, not to allow anonymous smtp access to Exchange Server.
So there should be a (named) connector for your application on port 25, which is requiring TLS and authentication, which means, your application needs to implement smtp authentication.
In that scenario, the Mailbox you are authenticating with should be monitored for NDRs.
Related
Situation
So I'm thinking about building ASP.NET Core website to host it on Linux based hosting provider. But I still want to use MSSQL database, so best choice for that would be Microsoft Azure.
My Question
Now my question is rather security based, since I know, that hosting them on different providers is totally possible (Regarding this question)
But if I'm about to do so, then how will be my data encrypted? If I'm about to use default HTTP protocol, then I asume, it's not, but if to use HTTPS protocol, it should be encrypted as well? Or how would it work, do I need to setup some other protocols or security for that matter?
My Thoughts
Since Client won't be directly connected with Web Site to Database connection, then there is not chance, that this connection would be listened, yet this "might not be listened" is rather not a far chance. And if HTTPS is included, then all connections should be encrypted, then it should work same with Web Server to Database connection.
You can access Azure SQL from anywhere as long as IP address is in the firewall rule. Since communication to Azure SQL is on SSL/TCP at all times, data is already encrypted.
Ideally, you want to host Azure SQL and web application in same region not to mention same provider. The main reason is your website will be dramatically slow due to network latency, if you host those in different location.
Recently, Azure offers App Service on Linux. It is definitely worth the try, before considering an alternative route.
FYI: Web Apps on Linux does not yet support deployment of .NET Core apps from uncompiled source. You need to publish/compile your .NET Core app locally first, and then push the published site bits to your app.
We are migrating from a dedicated server with a local virtual SMTP server to Windows Azure. As far as I can tell Windows Azure does not allow a local SMTP server to be setup in IIS. The SMTP Server option in the management console is missing. How would I setup an email relay so that I can have a .net web application send emails from a Windows Server 2012 virtual machine in Azure?
This is more like corollary to what #mcollier has stated. Given that you are already on Azure and you get 25,000 free emails (there are higher plans as well) with your subscription as well.
You can configure a Virtual SMTP server which relays to the sendgrid services. For the development perspective you will have the view of using your own SMTP server / service. Setting up a sendgrid based service is explained in this link.
I have used sendgrid earlier and my experience with this was amazing. As #mcollier has pointed out, using services like Sendgrid will give good chance of staying away from spam problem, if you try to setup and use the SMTP service of your own because of the reverse lookup etc.
PS: The above Virtual SMTP Server can be replaced with Amazon SES, which is equivalently a good service. Check out more info here.
First, assuming you're using a Windows Azure IaaS VM. Correct? If so, I think you need to enable that role/feature in Windows Server.
Second, why the need to send emails from that specific server? Would a service like SendGrid work? One problem people sometimes have with email servers in Windows Azure is the domain of your service (something.cloudapp.net) does not match your vanity domain when a reverse DNS lookup is performed. This could cause the email to be flagged as spam (since you don't technically own the sending domain, something.cloudapp.net).
I developed an direct relay application using the normal RFC email commands and lock that on my application, but strange that some test emails get delivered using the relay on windows AZURE VM, and all other mails are not getting any bounce response, and making a sense that every email is being delivering,
This is strange behaviour on azure vm.
so it means you can't send email using azure vm as a smtp mail server, if like to test then simply download promailer marketing manager from jsmtp.com
i read here in other threads that Windows 7 does not include the SMTP service anymore, so it doesn't have a local SMTP server. all threads directed the Questioners to other, 3rd party SMTP services. The question is: is there any other way of configuring a local SMTP server yet? or is it still an open issue, and i have no choice but to use a 3rd party software?
Since Windows 7 doesn't have a smtp service only other way I could find that you could set up a Microsoft smtp server would be using "IIS6 management console" which comes after installing "Remote Server Administration Tools". From what I read you cannot install Remote Server Administration Tools on Windows 7 with SP1 but seeing your comment I guess there is a version specifically for SP1.
Using a 3rd party smtp server for production I would recommend hMailServer. It's free and recommended on a lot of posts about free smtp. Before using .net to connect to it you will need to setup Domain and Accounts for it to work.
If you just need a smtp server for testing you could use smtp4dev.
Windows 7/Vista/XP/2003/2010 compatible dummy SMTP server. Sits in the
system tray and does not deliver the received messages. The received
messages can be quickly viewed, saved and the source/structure
inspected. Useful for testing/debugging software that generates email.
I am using local IIS 6.0 SMTP service to send emails from ASP.NET application.
I am having the following issues:
Emails are being delayed from 1 hour to 24 hours, and our traffic is only increasing
No UI to quickly see what is going on. How many emails sent. Bad Emails, Queue, etc...
Have to install IIS 6.0 just to run SMTP service. Microsoft didn't include it in IIS 7.0, so not sure if they will be supporting it in the future.
Seems to send emails in single thread (not sure about this one).
I could use one of the cloud services like Amazon Simple Email, but it would cost me hundreds of dollars a month. I would like to keep it local since our hosting provider has plenty of bandwidth.
What are the alternatives to IIS 6.0 SMTP service?
There are a couple of options available to you as I see it but each has their own pro's and cons.
A local mail server application (eg: Exchange server) to manage your mail queue
pro - you retain total control
con - you retain total responsibility
con - depending on the email type and volume you could end up getting blacklisted
A cloud mail provider that you are obviously aware of.
Arrange with your ISP to direct smtp traffic directly through them rather than using your own smtp service which is forwarded through them anyway. They also may have tools that will allow you to view and control the traffic.
Good luck
AJ
You can use GMail as a free smtp server
Check out the articLE
http://www.geekzone.co.nz/tonyhughes/599
I have a nettcp service which I have to host. I have three options -
IIS 7
Windows Service
A console application
I would be grateful if anybody could give some valuable thoughts on which option is better vis-a-vis other one.
Here are some of my observations:
IIS 7:
Pros:
Ready made hosting environment inside IIS
Will work with pretty much any hosting environment
Cons:
HTTP Only
Configuration slightly more complex
WAS:
Pros:
Ready made and familiar process model to that of IIS
No dependency on IIS
All protocols supported
Cons:
Not all shared hosting environments will support non-http protocol bindings or unusual port numbers.
Configuration slightly more complex
Windows Service:
Pros:
Starts when windows starts
You can start/stop the service via the service control manager
All protocols supported
Cons:
Some extra steps to deploy/re-deploy (installutil)
You need some extra boilerplate code to support the service implementation
Not ideal if you can't have access to the server to install (e.g. shared hosting)
Console Application:
Pros:
Fast and simple to deploy for testing purposes
All protocols supported
Cons:
You need to be logged on to start the process
Loss of session or machine shutdown will kill the service
Console/RDP access required