Skip to main content

How to set up Postfix as email MTA to send outbound emails on Ubuntu

It is usually nightmere getting outbound emails working on your Linux installation however usually following below instructions should get it working for you easily.

Assumptions:
  • It is a Ubuntu/Debian 11.04 or similar desktop or server install, including other variences such as Xubuntu, Lubuntu, Kubuntu etc.
  • You only want to send outbound emails originated from this computer.
  • You do not have a SMTP relay for sending or receiving emails.
  • Smarthost is used for message delivery without any need of SMTP relays.

Install Postfix MTA and MailX programs
sudo apt-get install postfix mailutils

Configure Postfix
sudo dpkg-reconfigure postfix

Read given options and select OK
  1. General type of mail configuration select "Satellite System".
  2. System Mail Name "yourFQCN.com", you can select a FQDN and doesn't have to be on this server.
  3. SMTP relay host - Make it blank by deleting smtp.localdomain
  4. Root and postmaster mail recipient - enter your Ubuntu username to receive or forward these emails
  5. Other destinations to accept mail for - do not add your FQDN here otherwise mails will be received here and not forwarded
  6. Force synchronous updates on mail queue - Yes
  7. Local networks - leave it to 127.0.0.0/8 unless you are using this as relay for your workgroup
  8. Use procmail for local delivery? - No
  9. Mailbox size limit - Leave it to 0 which is no limit
  10. Local address extension character - Leave it to + unless your destination email addresses contain it
  11. Internet protocol to use - ipv4 unless you are on ipv6
You should see Postfix setting configuration and reloading it.

Forward your local user emails to external email address
For a normal Linux user use following to forward emails
echo me@mydomain.com > ~/.forward
This will foward all emails received for your local Linux user to your external email address

Forward root emails to your local Linux User
sudo su -
echo myuser > /root/.forward

Test outbound email
Send an email to external real email address.
echo test | mail -s "This is a test email sent from my Ubuntu to external email address" me@mydomain.com

Send an email to your Linux user account or root and see if fowarding works.
echo test |mail -s "test mail sent to your Linux Account" <LinuxUsername>

Troubleshooting
If you configure a host or mail name that is not FQDN your ISP may not like it and not forward messages on. In order to fix this you will have to do following.

Add following to /etc/postfix/main.cf file and restart Postfix.
smtp_generic_maps = hash:/etc/postfix/generic
Add following to /etc/postfix/generic.
@yourhostormailname you@yourisp.com
Run following command
sudo postfix postmap /etc/postfix/generic

Check status of emails sent out.
sudo mailq
Hopefully this should make you feel happy.

Popular posts from this blog

Useful website performance and load testing tools

http://tsung.erlang-projects.org/ http://httpd.apache.org/docs/2.0/programs/ab.html http://phantomjs.org/ https://developers.google.com/speed/pagespeed/ http://servermonitoringhq.com/blog/how_to_quickly_stress_test_a_web_server https://code.google.com/p/httperf/ http://loadimpact.com/ http://www.paessler.com/webstress http://loaduiweb.org/ http://en.wikipedia.org/wiki/Web_server_benchmarking http://en.wikipedia.org/wiki/Load_testing http://www.loadui.org/ http://www.loadtestingtool.com/index.shtml http://www.appdynamics.com/blog/devops/load-testing-tools-explained-the-server-side/

VMWare ESXi 6.5 HP Custom Image Upgrade to v6.5U3

I had been escaping the Unhandled Exception error every time I log into my ESXi standalone server running v6.5 on N54L and can't be upgraded to v6.7 due to process compatibility. I have finally found the HP Custom image updated to v6.5U3 which appeared to have the fix built into it. It was quite straightforward update using the l latest 6.5 HP image so as habit I am making notes here for myself and everyone else who may find it useful. First of all I downloaded HP Custom v6.5U3 image  by selecting Offline Bundle. I then placed it in my datastore e.g. ds001. Once copied I ran following command line after I was connected to ESXi using ssh. # esxcli software vib update -d /vmfs/volumes/ds001/VMware-ESXi-6.5.0-Update3-14990892-HPE-preGen9-650.U3.9.6.10.1-Dec2019-depot.zip This command took few seconds or may be minutes but confirmed that updates have been installed and will take effect after reboot. So I rebooted the host and it worked like magic. # reboot I did not place host in main...

TrueCrypt on macOS X Mojave 10.14

If you have updated your macOS recently to Mojave otherwise known as verison 10.14 you may not be able to install the last version of Truecrypt in order to access your old volumes encrypted with Truecrypt software. This article will guide you to get this working on your MacOS v10.14 (Mjoave) . Download the package from  https://truecrypt.ch/downloads/  or  https://www.truecrypt71a.com/downloads/ . Find downloaded package using Finder in your HDD/Users/username/Downloads folder and will look like  TrueCrypt 7.1a Mac OS X.dmg . Open file location in Finder and open or double click on  TrueCrypt 7.1a Mac OS X.dmg . This will mount Truecrypt 7.1a and will have Truecrypt 7.1a.mpkg in it. Drag the package T rueCrypt 7.1a.mpkg and drop in your Downloads folder. From Locations in Finder you can eject your TrueCrypt mount. Now go to your Downloads location, find the file  TrueCrypt 7.1a.mpkg , right click and select Show Package Contents . Find the ...