For your Centreon to be able to send notification emails, you need to configure a local smtp server. If your operating system is RHEL, CentOS or Oracle Linux, Postfix is already installed.
This page gives you an example of a possible configuration. Refer to the official Postfix documentation for more information.
Notifications commands are executed by the poller that monitors the resource: you need to configure the mail relay on all pollers.
We recommend that you use a dedicated email account to send notifications.
Step 1: Configuring Postfix
In your server's terminal, enter the following command:
yum -y install mailx cyrus-sasl-plain
systemctl restart postfix
Configure Postfix to run at startup:
systemctl enable postfix
Edit the following file:
Add the following information:
myhostname = hostname relayhost = [smtp.isp.com]:port smtp_use_tls = yes smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt smtp_sasl_security_options = noanonymous smtp_sasl_tls_security_options = noanonymous
- myhostname is the hostname of the Centreon server.
- relayhost is the email server for the account that will send notifications.
In the following example, Centreon will use a Gmail account to send notifications:
myhostname = centreon-central relayhost = [smtp.gmail.com]:587 smtp_use_tls = yes smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt smtp_sasl_security_options = noanonymous smtp_sasl_tls_security_options = noanonymous
Step 2: Configuring the credentials of the account that will send emails
Add the following line (replace
username:passwordby the credentials of the account that will send the notification emails):
Save the file.
In the terminal, enter the following command:
For security reasons, change the permissions on the file:
chown root:postfix /etc/postfix/sasl_passwd* chmod 640 /etc/postfix/sasl_passwd*
Reload Postfix so that chenges are taken into account:
systemctl reload postfix
Testing and troubleshooting
To send a test email, enter the following command:
echo "Test" | mail -s "Test" email@example.com
firstname.lastname@example.org a real email address: the recipient should receive the test email.
If the user hasn't received the message, check the following log file:
tail -f /var/log/maillog
To check that your Postfix service is running, enter:
systemctl status postfix
The results should look like this:
If you want to send emails through a Gmail account, you will need to turn on the Allow less secure apps option on this account. See Less secure apps & your Google Account.