In a cloud environment, there are many cases that a send-only mail server (smtp relay) would be required. Apart from cloud, in other applications like monitoring systems (to send alerts, cron reports, …) having a mail relay is beneficial. Exim (exim4) in Linux systems is a simple, good and safe candidate.
Well, if you want to have exim4 in your cloud, first install a VM with light-weight linux system in your Infrastructure cluster. I’m writing this short guide considering Debian/Ubuntu as linux VM. And then most probably, you would like to connect this VM to management network. The rest is easy, here comes the required steps:
1) Install lightweight exim4. Exim4 by itself is simple but exim4-daemon-light is a very basic mail server with all our required features, lacking advanced, unnecessary (in this case) features like LDAP, MySQL authentication.
- apt-get install exim4-daemon-light
2) Edit configuration file, by default is /etc/exim4/update-exim4.conf
- 2-1) change dc_local_interfaces variable to add IP address of the NIC attached to your management network. By default, exim allows only local machine (loopback address, 127.0.0.1) to send email. You should add management IP address to be able to listen to other machines in management networks. Example:
dc_local_interfaces = ‘127.0.0.1 ; 192.168.50.150’
- 2-2) change dc_relay_nets variable to restrict the machines which are capable of sending email through this mail relay server. Apparently, this should be the network address of your management network. By default, it is empty that increases the risk of being used by other unknown machines but you like to enable only machines in management network to use this mail relay server. Example:
dc_relay_nets = ‘192.168.50.0/24’
- 2-3) change dc_relay_domains parameter to increase security. Maybe you want to restrict the domains of recipients; because this mail relay server is being used for internal purposes (sending alerts, cron reports, …) your recipients are known and most probably they will use your organization email. It’s a good idea to restrict recipients to increase security. so, let’s do this:
dc_relay_domains = ‘example.com’
3) restart exim service:
- /etc/init.d/exim4 restart
That’s it. Enjoy your relay server.
I am not sure where you’re getting your information, but
great topic. I needs to spend some time learning much more or understanding more.
Thanks for excellent information I was looking for this info for my mission.
Don’t forget to issue the command:
…before restarting the exim4 service. This takes the template parameters you edited in /etc/exim4/update-exim4.conf and generates the correct exim4 config files.