OpenEMM Installation on Suse Linux Enterprise Server 15

This page shows you how to install OpenEMM on SLES 15. It handles the SLES specific chapter 3.
All other chapters are the same for all operating systems.

Please see the main guide for more information.

3. Preparations

For the OpenEMM package and components information please see this.

This guide assumes that you have installed Suse Linux Enterprise Server 15 and selected “Minimal” as a system role.

If a line starts with # you should execute it as root or with sudo on a privileged user.
If a line starts with $ you can execute it as a user, in most cases as the openemm user.

3.1 Packages of Operating System

Install the required modules, which include the repositories for openjdk-1.8 and python2.
If you need a list of all the modules you can run SUSEConnect -list-extensions.

# SUSEConnect -p sle-module-legacy/15.1/x86_64
# SUSEConnect -p sle-module-python2/15.1/x86_64

After that install the required packages:

# zypper install gcc
# zypper install python python-xml python2-pip libmariadb-devel python-devel python-gdbm
# zypper install java-1_8_0-openjdk java-1_8_0-openjdk-devel
# zypper install zlib fontconfig libfreetype6 libX11-6 libXext6 libXrender1 xorg-x11-fonts
# zypper install zip sudo wget

Now you can install the required modules for python2:

# pip2 install mysqlclient
# pip2 install pydns xlrd xlwt xlutils paramiko pyspf ipaddr dnspython pydkim pycrypto requests httpie setproctitle inotify

3.1.1 rsyslog

In the minimal installation of SLES there is no rsyslog installed by default. OpenEMM requires logfile output to parse the postfix maillog.
Install rsyslog and start it:

# zypper install rsyslog
# systemctl start rsyslog
# systemctl enable rsyslog

3.2 DBMS

Only MariaDB is supported for SLES.

MariaDB DBMS

This example uses MariaDB 10.2:

# zypper install mariadb

Make sure MariaDB is running and re-started at every server reboot:

# systemctl start mariadb
# systemctl enable mariadb

3.3 MTA

On SLES you can only use Postfix. Sendmail is not supported.

MTA Postfix

Install the required packages:

# zypper install postfix procmail libmilter1_0

and create a symlink so that OpenEMM can find the Postfix mail log file:

# ln -s /var/log/mail /var/log/maillog

Now configure Postfix like described in the main guide.
Continue at “To do this, change to the Postfix main configuration directory:“ .

3.4 wkhtmltox

Unfortunately the latest build of wkhtmltox is not being built for SLES.
Therefore use the version 12.4 which still has a generic build.
You can get wkhtmltox from wkhtmltopdf.org
You can install it in /opt/ and create a symlink in /usr/local/bin.
For example:

# cd /opt
# wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
# tar xJpf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
# rm wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
# chown -R root. wkhtmltox
# ln -s /opt/wkhtmltox/bin/wkhtmlto* /usr/local/bin/

3.5 Firewall

As SLES also uses firewalld for its firewall, see the firewall chapter here.

3.6 PATH for new users

As SLES does not include /usr/sbin in the PATH variable for new users, we have to add it.
To make this change for all new users, edit /etc/skel/.profile and add the following line

export PATH=$PATH:/usr/sbin

Please make sure to edit this file before creating the openemm user. If you have already created user openemm, you have to do the same change to file /home/openemm/.profile.
After this you can continue with the main guide at Installation.

Additional information for building OpenEMM backend yourself

If you want to build the OpenEMM backend yourself, you first have to install these additional packages.

# zypper install make readline-devel libxml2-devel sqlite3-devel