I keep a test program handy to verify that emails are working. It’s run from the command line and it tries to send a short email.
I took the example from the Python docs for an SMTP Example, with hard-coding the variables instead of being prompted for them, and substituting the appropriate server variables.
Creating a script like that with using set_debuglevel(2)
should provide enough detail to help you determine where things are going wrong.
Also see Django how to send_mail via local sendmail - #6 by KenWhitesell for another approach I’ve used.