How to install OpenEMM on RHEL and its forks

Use this forum for questions regarding installation, upgrading and configuration of OpenEMM

Moderator: moderator

nickw
Posts: 25
Joined: Thu Nov 04, 2021 10:15 pm

How to install OpenEMM on RHEL and its forks

Post by nickw » Tue Nov 23, 2021 9:50 pm

Hello,

After attempting to install OpenEMM on several different operating systems, following several guides listed at https://wiki.openemm.org/doku.php , for about 2 weeks. I have finally managed to get it running. Below is a guide I have tested by rebuilding a working OpenEMM at least 5 times to make sure I have all the steps documented correctly:

On a brand new install of CentOS/Rocky/Alma, after you've set up networking to your preferences (I will be using Rocky linux for this guide, some commands such as dnf can be replaced with yum, no functionality will be lost):

### Initial settings & config changes

Code: Select all

hostnamectl set-hostname hostname
echo 'export PATH=$PATH:/usr/sbin' >> /etc/skel/.bash_profile;
sed -i -e 's/SELINUX=enforcing/SELINUX=permissive/' /etc/sysconfig/selinux;
### Initial Package Installation:

Code: Select all

dnf module enable python38 -y;
dnf install wget xorg-x11-fonts-75dpi zlib fontconfig freetype libX11 libXext libXrender urw-fonts vim java-11-openjdk sendmail-milter python38 -y;
dnf install mariadb-server mariadb mariadb-devel mariadb-connector-c gcc-c++ bzip2-devel gdbm-devel libgcrypt-devel python38-devel postfix -y;
dnf install libffi-devel libxml2-devel ncurses-devel openssl-devel readline-devel sqlite-devel zlib-devel xz xz-devel python38-pip procmail -y;
dnf install rsyslog unixODBC unixODBC-devel openssl-devel apr-devel redhat-rpm-config java-11-openjdk-devel gcc make python38-requests -y;
dnf install https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox-0.12.6-1.centos8.x86_64.rpm -y;
pip3.8 install py3dns xlrd xlwt xlutils paramiko pyspf dnspython dkimpy pycrypto requests httpie setproctitle inotify aiodns aiohttp aiohttp-xmlrpc aiosmtpd mariadb;
alternatives --set python3 /usr/bin/python3.8;
### Run update afterwards to update all libraries

Code: Select all

dnf update -y;
### Open firewall for traffic:

Code: Select all

firewall-cmd --zone=public --add-port=8080/tcp --permanent && firewall-cmd --zone=public --add-port=25/tcp --permanent;
firewall-cmd --zone=public --add-forward-port=port=80:proto=tcp:toport=8080 --permanent && firewall-cmd --reload;
### Adding openemm user and making initial directory structure for OpenEMM

Code: Select all

groupadd openemm && useradd -m -g openemm -s /bin/bash openemm;
passwd openemm;
mkdir /home/openemm/opt;
cd /home/openemm/opt;
### Grabbing tomcat-native. (for whatever reason, this package is left out of the openemm installer tool, and its installation is sparsely covered in ### the guides provided by Agnitas)

Code: Select all

wget https://dlcdn.apache.org/tomcat/tomcat-connectors/native/1.2.31/source/tomcat-native-1.2.31-src.tar.gz
### Installing tomcat-native. This is needed for TLS and HTTPS

Code: Select all

tar -xvf tomcat-native-1.2.31-src.tar.gz
rm -rf tomcat-native-1.2.31-src.tar.gz
cd tomcat-native-1.2.31-src/native/
./configure --with-apr=/usr/bin/apr-1-config --with-ssl=yes --prefix=/home/openemm/opt/tomcat-native-1.2.31 --with-java-home=/usr/lib/jvm/java
make
make install
ln -s /home/openemm/opt/tomcat-native-1.2.31 /home/openemm/opt/tomcat-native
##### From another machine with the same network access, scp the openemm-runtime tar provided by Agnitas by email to the openemm machine:

Code: Select all

scp -rp openemm-runtime-21.10.XXX.tar.gz root@host:/home/openemm/
### Initializing the DB
systemctl enable mariadb;
systemctl start mariadb;
mysql_secure_installation;
Set root password? [Y/n] y
your password here
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] n
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

### journalctl changes:

Code: Select all

echo 'module(load="imjournal" StateFile="imjournal.state" ratelimit.interval="10" ratelimit.burst="10000")' >> /etc/systemd/journald.conf;
systemctl restart systemd-journald
### Maillog changes:
# open and override the following file with the contents below:
# vim /etc/logrotate.d/syslog

Code: Select all

/var/log/cron
/var/log/maillog
/var/log/messages
/var/log/secure
/var/log/spooler
{
    missingok
    sharedscripts
        chmod 0644
    postrotate
        /usr/bin/systemctl kill -s HUP rsyslog.service >/dev/null 2>&1 || true
    endscript
}
### permissions modification:

Code: Select all

chmod 644 /var/log/maillog
### Postfix Settings:

Code: Select all

alternatives --set mta /usr/sbin/sendmail.postfix
### vim /etc/postfix/main.cf and add the following to the bottom of the file. You will need to jump to around line 135 to comment out both inet* lines

Code: Select all

inet_interfaces = all
inet_protocols = all
mailbox_command = /usr/bin/procmail
mailbox_size_limit = 0
message_size_limit = 0
maximal_queue_lifetime = 1d
bounce_queue_lifetime = 1d
smtp_tls_security_level = may
smtp_tls_protocols = !SSLv2, !SSLv3
smtp_tls_ciphers = high
smtp_tls_mandatory_ciphers = $smtp_tls_ciphers
hash_queue_depth = 2
enable_long_queue_ids = yes
relay_domains = /home/openemm/var/run/relay.domains
transport_maps = hash:/home/openemm/var/run/transport.maps
smtpd_milters = unix:/home/openemm/var/run/bav.sock
myhostname = hostname
# add to /etc/postfix/master.cf, making sure that the f in flags is under the i in mailloop. ie; two spaces

Code: Select all

mailloop unix - n n - - pipe
  flags=RX user=openemm argv=/usr/bin/procmail /home/openemm/lib/bav.rc

Code: Select all

systemctl enable postfix; 
systemctl restart postfix;
### Unpacking of OpenEMM runtime tar and setting system file limits. I moved this step to the end of part 1, to minimize restarts needed.

Code: Select all

cd /home/openemm
chown -R openemm:openemm .
tar -xvf openemm-runtime-21.10.030.tar.gz
rm -rf openemm-runtime-21.10.030.tar.gz
### This log is not created by the installer for whatever reason, tomcat will not run if this does not exist, so you'll have to create it manually
### and adjust the permissions accordingly:

Code: Select all

touch /home/openemm/tomcat/logs/catalina.out && chmod 0660 /home/openemm/tomcat/logs/catalina.out
### No clue what the console user is supposed to do, it is mentioned very briefly in a OMT.py script. If you try and set up your URL in later steps, the ### installer tool will attempt to place keys and grab certain
### config files in /home/console. This can be fixed by simply linking console to openemm.

Code: Select all

ln -s /home/openemm/ /home/console

Code: Select all

cd /home/openemm
bin/OMT.sh
# System value for maximum parallel files open (= ulimit) is 1024. Must be at least 16384.
# Change it now (N/y, Blank => Cancel):
> y

reboot < -- required by system after changing system limits

### Continued in the next post
Last edited by nickw on Wed Nov 24, 2021 9:02 pm, edited 10 times in total.

nickw
Posts: 25
Joined: Thu Nov 04, 2021 10:15 pm

Re: How to install OpenEMM on RHEL and its forks

Post by nickw » Tue Nov 23, 2021 9:52 pm

### Continued from previous post

Code: Select all

cd /home/openemm/
bin/OMT.sh 
Please choose entry to change (Blank => Back):
> JAVA_HOME
Please enter path for JAVA_HOME (Blank => Cancel, 'Default' for '/usr/lib/jvm/java-11-openjdk-11.0.13.0.8-3.el8_5.x86_64'):
> Default
# Please choose entry to change (Blank => Back):
> WKHTMLTOPDF
# Please enter path for wkhtmltopdf (Blank => Cancel, 'Default' for '/usr/local/bin/wkhtmltopdf'):
> Default

# press enter to go back
# press 2 to enter "Change configuration of database connection"

# Please choose entry name to change (Blank => Back):
> dbms
# Please enter new value for key 'dbms' (Allowed values are 'mariadb', 'mysql'):
> mariadb
# Please choose entry name to change (Blank => Back, 'save' to save changes, 'cancel' to drop changes):
> password
# Please enter new value for key 'password':
> "password"
# Please choose entry name to change (Blank => Back, 'save' to save changes, 'cancel' to drop changes):
> user
# Please enter new value for key 'user':
> openemm
# Please choose entry name to change (Blank => Back, 'save' to save changes, 'cancel' to drop changes):
> save
# Do you want to create a new database and database user with this credentials? (N/y, Blank => Cancel)
> y
Please enter database root user password:
> password from DB initialization

# press enter to go back
# press 5 to enter "Install or update package from AGNITAS Website"

# OpenEMM Update via AGNITAS Website
# Download and install latest packages (only openemm-package needs root permissions for OMT)? (N/y, Blank => Cancel):
> y

# Package contains new application 'Runtime'
# Initially install this application? (N/y, Blank => Cancel):
> y

# To let the new Runtime version take effect, you must exit and restart this program!
# Do you want to exit and restart now? (Y/n, Blank => Exit):
> y

# press enter to go back
# press enter to go back
# press 5 to enter "Install or update package from AGNITAS Website"

# OpenEMM Update via AGNITAS Website
# Download and install latest packages (only openemm-package needs root permissions for OMT)? (N/y, Blank => Cancel):
> y

# Starting OpenEMM Update ...

# Package contains application type 'Runtime' of version '21.10.041'.
# Your current version is '21.10.041'.
# This is the same version.
# Install anyway? (N/y, Blank => Cancel):
> n

# Package contains application type 'JAVA' of version '11.0.13'.
# Your current version is '11.0.13'.
# This is the same version.
# Install anyway? (N/y, Blank => Cancel):
> n

# Found update package 'apache-tomcat-10.0.10.tar.gz' for application 'Apache Tomcat' with version '10.0.10'.
# Your current version is 'None'.
# Continue with update? (Y/n, Blank => Yes):
> y

# Found update package 'openemm-code-21.10.000.073.tar.gz' for application 'OpenEMM' with version '21.10.000.073'.
# Your current version is 'Unknown'.
# Continue with update? (Y/n, Blank => Yes):
> y

# Package contains new application 'OpenEMM'
# Initially install this application? (N/y, Blank => Cancel):
> y

# Creating basic database structure ...
# DB already contains version 21.01.420
# DB already contains version 21.01.433
# ...
# ...

# Database update finished

# Package contains new application 'Statistics'
# Initially install this application? (N/y, Blank => Cancel):
> y

# Package contains new application 'Webservices'
# Initially install this application? (N/y, Blank => Cancel):
> y

# Package contains new application 'Backend'
# Initially install this application? (N/y, Blank => Cancel):
> y

# press 2 to enter "Configuration"

# Please enter system.url (with protocol, e.g.: https://my.openemm.net)
> http://your-server-here.com

# press enter to go back
# press 1 to enter "Configure basic environment (Java, Tomcat, Tomcat-Native, Wkhtml, Proxy)"

# Please choose entry to change (Blank => Back):
> CATALINA_HOME
# Please enter path for CATALINA_HOME (Blank => Skip configuration of existing Tomcat and install some, 'Default' for '/home/openemm/opt/tomcat'):
> Default

# press enter to go back
# press enter to go back
# press enter to exit

### Permissions corrections. There is still an error for the backend coming up, but the error is vague and gives no clue as to what the uid is
### supposed to be set to. Am continuing to investigate

Code: Select all

chown -R openemm:openemm /home/openemm
chown root:root /home/openemm/release/backend/current/bin/qctrl
chown root:root /home/openemm/release/backend/current/bin/smctrl

Code: Select all

/bin/OMT.sh 
# press 10 to restart OpenEMM

# Restart OpenEMM Server
# Are you sure? (N/y, Blank => Cancel):
> y

### Continued in next post
Last edited by nickw on Wed Nov 24, 2021 8:35 pm, edited 7 times in total.

nickw
Posts: 25
Joined: Thu Nov 04, 2021 10:15 pm

Re: How to install OpenEMM on RHEL and its forks

Post by nickw » Tue Nov 23, 2021 9:54 pm

Notes:

You do not need to disable selinux, just set it to permissive. This is not only a better security practice, but saves you from a reboot as well.
You can install python at the same time you install mariadb, bypassing half of the guide.
You also, do not need to do any extra configurations to mariadb after its installed. All of the additional mysql set up procedures listed in all of the guides, are effectively useless and will more often than not, fail.
Last edited by nickw on Wed Nov 24, 2021 8:55 pm, edited 2 times in total.

nickw
Posts: 25
Joined: Thu Nov 04, 2021 10:15 pm

Re: How to install OpenEMM on RHEL and its forks

Post by nickw » Tue Nov 23, 2021 9:56 pm

I have not configured TLS, or added any certs to this as of yet. I'm pretty sure they'll also not be easy to set up. I will update this guide when those pieces are figured out.


If anyone has any concerns or issues, I will respond and try to help as best as possible.

maschoff
Site Admin
Posts: 2511
Joined: Thu Aug 03, 2006 10:20 am
Location: Munich, Germany
Contact:

Re: How to install OpenEMM on RHEL and its forks

Post by maschoff » Fri Nov 26, 2021 12:56 pm

To reproduce your steps it would be helpful to add the OMT version you are using. For instance, I am offered to install Tomcat-Native, so there seems to be a version with a bug. Also, I never see user console in my installation, because this user is reserved for the commercial version.
OpenEMM Maintainer

nickw
Posts: 25
Joined: Thu Nov 04, 2021 10:15 pm

Re: How to install OpenEMM on RHEL and its forks

Post by nickw » Fri Nov 26, 2021 8:08 pm

maschoff wrote:
Fri Nov 26, 2021 12:56 pm
To reproduce your steps it would be helpful to add the OMT version you are using. For instance, I am offered to install Tomcat-Native, so there seems to be a version with a bug. Also, I never see user console in my installation, because this user is reserved for the commercial version.
This works with the newest release. The one that you have previously spoken of in this post: viewtopic.php?f=2&t=7399
This is the release you get when requesting it from Agnitas.

No, openemm does not install tomcat-native. Its not an option in the installer menu, option 5, its not dropped when you extract the tar.gz file.
In fact, both published guides instruct the user to install tomcat-native outside of the installer.

Here is the error message received if you do not link openemm to console in /home:

Code: Select all

genrsa: Can't open "/home/console/tomcat/conf/keys/birt_private.pem" for writing, No such file or directory
Can't open /home/console/tomcat/conf/keys/birt_private.pem for reading, No such file or directory
139973591902016:error:02001002:system library:fopen:No such file or directory:crypto/bio/bss_file.c:69:fopen('/home/console/tomcat/conf/keys/birt_private.pem','r')
139973591902016:error:2006D080:BIO routines:BIO_new_file:no such file:crypto/bio/bss_file.c:76:
unable to load Private Key
Cannot generate initial Statistics PPK keys
It would be EXTREMELY helpful to others trying to install this if you could post a step by step guide (IN ORDER) on how you are installing this product. The guide that is published does not work. Also, the OVA provided from request, has its bash history erased which I understand for security purposes, but does nothing to help anyone actually trying to administer this product in an actual production environment.

maschoff
Site Admin
Posts: 2511
Joined: Thu Aug 03, 2006 10:20 am
Location: Munich, Germany
Contact:

Re: How to install OpenEMM on RHEL and its forks

Post by maschoff » Fri Nov 26, 2021 8:14 pm

I am still waiting for the version of OMT you use.
OpenEMM Maintainer

nickw
Posts: 25
Joined: Thu Nov 04, 2021 10:15 pm

Re: How to install OpenEMM on RHEL and its forks

Post by nickw » Fri Nov 26, 2021 8:54 pm

Version given by Agnitas: openemm-runtime-21.10.33, then upgraded to the following:

Code: Select all

=============================================
= OpenEMM Maintenance Tool (OMT) v21.10.043 =
=============================================
Root mode: On
Hostname: hostname.com
OpenEMM License: OpenEMM (ID: 0)
OpenEMM Runtime Version: 21.10.043
OpenEMM Version: 21.10.000.073
System-Url: http://hostname.com

Current menu: Show OpenEMM status

OpenEMM status:
Operating System (OS): Rocky Linux 8
Python version: 3.8.8
Postfix Version: 3.5.8
Database client version: /usr/bin/mysql  Ver 15.1 Distrib 10.3.28-MariaDB, for Linux (x86_64) using readline 5.1
Database Connection: OK
System-Time: 2021-11-26 14:51:45
System-Time-DB: 2021-11-26 14:51:45
Database version: MariaDB 10.3.28-MariaDB
OpenEMM database structure exists (Version 21.10.193)
Database table emm_db_errorlog_tbl: OK
Jobqueue status: OK
DKIM keys available for domains: None
Java version: 11.0.13 (Oracle)
Tomcat version: 10.0.10.0
Tomcat-Native version: 1.2.31
Wkhtml version: wkhtmltopdf 0.12.6 (with patched qt)
OpenEMM Application is running (Tomcat ProcessID: 14493, started at: 14:50 0:52)
OpenEMM Backend ok: once
OpenEMM Backend stopped: mailout, update, trigger, generate, pickdist, slrtscn, direct-path, bav-update, bavd, bav
OpenEMM Backend running: mta, mlcontrol
What is uid are these files expecting? Its not root, its not openemm:

Code: Select all

Failed in sanity check
*** Error report for sanity check ***
file: /home/openemm/bin/smctrl is NOT a set uid, but expected to be a set uid
file: /home/openemm/bin/qctrl is NOT a set uid, but expected to be a set uid
Using /home/openemm/bin/setenv.sh
Using additional properties: /home/openemm/tomcat10/bin/emm.sh.additional.properties

Checking backend directories
*** Error report for sanity check ***
file: /home/openemm/bin/smctrl is NOT a set uid, but expected to be a set uid
file: /home/openemm/bin/qctrl is NOT a set uid, but expected to be a set uid

nickw
Posts: 25
Joined: Thu Nov 04, 2021 10:15 pm

Re: How to install OpenEMM on RHEL and its forks

Post by nickw » Fri Nov 26, 2021 9:38 pm

Java-1.8.0 is still being installed in this version:

Code: Select all

Root mode: On
Hostname: hostname.com
OpenEMM Runtime Version: 21.10.033
OpenEMM Version: Unknown
System-Url: Unknown

Invalid database vendor in dbcfg:
Database Connection cannot be established. (Maybe database user or database connection parameters for OpenEMM were not configured)
Database structure does not exist. (Maybe OpenEMM is not installed)
Basic webapplication configuration for JAVA is missing or invalid. Please configure.

Current menu: Configure basic environment (Java, Tomcat, Tomcat-Native, Wkhtml, Proxy)

Current webapp basic configuration:
 JAVA_HOME:     None
 CATALINA_HOME: None
 Tomcat-Native: None
 WKHTMLTOPDF:   None
 WKHTMLTOIMAGE: None
 Proxy:         None

Please choose entry to change (Blank => Back):
 > JAVA_HOME
Please enter path for JAVA_HOME (Blank => Cancel):
 >
Install a JAVA environment by command '[b]sudo yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel[/b]'
Do you want to install a JAVA environment now? (N/y, Blank => Cancel):
 >

nickw
Posts: 25
Joined: Thu Nov 04, 2021 10:15 pm

Re: How to install OpenEMM on RHEL and its forks

Post by nickw » Fri Nov 26, 2021 9:44 pm

here are all the lines that mention the "console" user in /home/openemm/tomcat/bin/OMT.py

Code: Select all

 892                         # EMM information
 893                         if os.path.isdir("/home/console/release/emm") and (Environment.username == "console" or Utilities.hasRootPermissions()):
 894                                 Environment.isEmmFrontendServer = True
 895                                 if not os.path.isfile("/home/console/bin/" + Environment.restartToolName) and os.path.isfile("/home/console/tomcat/bin/" + Environment.restartToolName):
 896                                         Utilities.createLink("/home/console/tomcat/bin/" + Environment.restartToolName, "/home/console/bin/" + Environment.restartToolName, "console")
 897
 898                                 Environment.emmLicenseFilePath = "/home/console/webapps/emm/WEB-INF/classes/emm.license.xml"
 899                                 if os.path.isfile("/home/console/webapps/emm/WEB-INF/classes/emm.properties"):
 900                                         Environment.frontendVersion = Utilities.readPropertiesFile("/home/console/webapps/emm/WEB-INF/classes/emm.properties")["ApplicationVersion"]
 901
 902                                 if os.path.isdir("/home/console/release/backend/current"):
 903                                         Environment.emmBackendVersion = os.path.basename(os.path.realpath("/home/console/release/backend/current"))
 904                                         if Environment.emmBackendVersion != None and Environment.emmBackendVersion.startswith("V"):
 905                                                 Environment.emmBackendVersion = Environment.emmBackendVersion[1:len(Environment.emmBackendVersion)]
 906
 907                         if os.path.isdir("/home/console/release/manual") and (Environment.username == "console" or Utilities.hasRootPermissions()):
 908                                 if os.path.isdir("/home/console/webapps/manual/de"):
 909                                         manualApplicationPath = os.path.realpath("/home/console/webapps/manual/de")
 910                                         manualVersion = Utilities.getVersionFromFilename(manualApplicationPath)
 911                                         if manualVersion != None:
 912                                                 Environment.manualVersion = manualVersion
 913                                         else:
 914                                                 Environment.manualVersion = "Unknown"
 915                                 else:
 916                                         Environment.manualVersion = "Unknown"
 917
 918                         if os.path.isdir("/home/console/release/statistics") and (Environment.username == "console" or Utilities.hasRootPermissions()):
 919                                 Environment.isEmmStatisticsServer = True
 920                                 if not os.path.isfile("/home/console/bin/" + Environment.restartToolName) and os.path.isfile("/home/console/tomcat/bin/" + Environment.restartToolName):
 921                                         Utilities.createLink("/home/console/tomcat/bin/" + Environment.restartToolName, "/home/console/bin/" + Environment.restartToolName, "console")
 922
 923                                 Environment.emmLicenseFilePath = "/home/console/webapps/statistics/WEB-INF/classes/emm.license.xml"
 924                                 if os.path.isfile("/home/console/webapps/statistics/WEB-INF/classes/emm.properties"):
 925                                         Environment.statisticsVersion = Utilities.readPropertiesFile("/home/console/webapps/statistics/WEB-INF/classes/emm.properties")["ApplicationVersion"]
 926
 927                         if os.path.isdir("/home/console/release/webservices") and (Environment.username == "console" or Utilities.hasRootPermissions()):
 928                                 Environment.isEmmWebservicesServer = True
 929                                 if not os.path.isfile("/home/console/bin/" + Environment.restartToolName) and os.path.isfile("/home/console/tomcat/bin/" + Environment.restartToolName):
 930                                         Utilities.createLink("/home/console/tomcat/bin/" + Environment.restartToolName, "/home/console/bin/" + Environment.restartToolName, "console")
 931
 932                                 Environment.emmLicenseFilePath = "/home/console/webapps/webservices/WEB-INF/classes/emm.license.xml"
 933                                 if os.path.isfile("/home/console/webapps/webservices/WEB-INF/classes/emm.properties"):
 934                                         Environment.webservicesVersion = Utilities.readPropertiesFile("/home/console/webapps/webservices/WEB-INF/classes/emm.properties")["ApplicationVersion"]
 935
 936                                 if os.path.isdir("/home/console/release/backend/current"):
 937                                         Environment.emmBackendVersion = os.path.basename(os.path.realpath("/home/console/release/backend/current"))
 938                                         if Environment.emmBackendVersion != None and Environment.emmBackendVersion.startswith("V"):
 939                                                 Environment.emmBackendVersion = Environment.emmBackendVersion[1:len(Environment.emmBackendVersion)]
 940
 941                         if os.path.isdir("/home/console/release/rdir") and (Environment.username == "console" or Utilities.hasRootPermissions()):
 942                                 # Also check for the application "rdir" installed under user "console". This is indeed the configuration on some "Inhouse" customer systems.
 943                                 Environment.isEmmConsoleRdirServer = True
 944                                 if not os.path.isfile("/home/console/bin/" + Environment.restartToolName) and os.path.isfile("/home/console/tomcat/bin/" + Environment.restartToolName):
 945                                         Utilities.createLink("/home/console/tomcat/bin/" + Environment.restartToolName, "/home/console/bin/" + Environment.restartToolName, "console")
 946
 947                                 Environment.emmLicenseFilePath = "/home/console/webapps/rdir/WEB-INF/classes/emm.license.xml"
 948                                 if os.path.isfile("/home/console/webapps/rdir/WEB-INF/classes/emm.properties"):
 949                                         Environment.consoleRdirVersion = Utilities.readPropertiesFile("/home/console/webapps/rdir/WEB-INF/classes/emm.properties")["ApplicationVersion"]
 950
 951                                 if os.path.isdir("/home/console/release/backend/current"):
 952                                         Environment.emmBackendVersion = os.path.basename(os.path.realpath("/home/console/release/backend/current"))

nickw
Posts: 25
Joined: Thu Nov 04, 2021 10:15 pm

Re: How to install OpenEMM on RHEL and its forks

Post by nickw » Fri Nov 26, 2021 9:57 pm

And here is the console user being mentioned in the /home/openemm/tomcat/bin/emm.sh file:

Code: Select all

test_user() {
        if [ "${USER}" != "rdir" ] && [ "${USER}" != "console" ] && [ "${USER}" != "${ADDITIONAL_USER}" ]; then {
                echo "Wrong User ${USER}! Please change user to rdir|console"
                exit 2
        } fi
}
and if you change the

Code: Select all

ADDITIONAL_USER=
variable to include openemm at the top of the file, it will still error out.

nickw
Posts: 25
Joined: Thu Nov 04, 2021 10:15 pm

Re: How to install OpenEMM on RHEL and its forks

Post by nickw » Fri Nov 26, 2021 10:13 pm

Also, using the guide to set up sendmail instead of postfix, does not work. I'm not going to build this out again just to list the errors your team should be fully aware of if you attempt to build your own product using the guide you publish.

maschoff
Site Admin
Posts: 2511
Joined: Thu Aug 03, 2006 10:20 am
Location: Munich, Germany
Contact:

Re: How to install OpenEMM on RHEL and its forks

Post by maschoff » Fri Nov 26, 2021 10:27 pm

You must have used an obsolete guide. The guide for OpenEMM 21.10 states explicitly that only Postfix is supported (since version 1.0.0 of the guide).
OpenEMM Maintainer

nickw
Posts: 25
Joined: Thu Nov 04, 2021 10:15 pm

Re: How to install OpenEMM on RHEL and its forks

Post by nickw » Thu Dec 02, 2021 3:09 pm

Ok, thats my fault then. Can you provide an answer to what the console user is doing? Is that needed? Will the installation break if that user (and its home dir structure) is not created?

maschoff
Site Admin
Posts: 2511
Joined: Thu Aug 03, 2006 10:20 am
Location: Munich, Germany
Contact:

Re: How to install OpenEMM on RHEL and its forks

Post by maschoff » Thu Dec 02, 2021 3:50 pm

OpenEMM requires only user "openemm". You will find no reference to a user "console" in the documentation.
OpenEMM Maintainer

Post Reply