OBM-UI 2.2.x - Install from sources

Requirements

  • Database MySQL or PostgreSQL.
  • Web server Apache2 with php and ssl.

We use sudo when root's rights are required. In the doc, we use MySQL, it's easy to adapt it for PostgreSQL.

Installation

Download the sources. Extract them (e.g. /var/www/obm). Set the proper owner and group to the newly created files.

wget http://download.obm.org/obm-2.2.x.tar.gz
sudo mv obm-2.2.x.tar.gz /var/www
cd /var/www
sudo tar xzf obm-2.2.x.tar.gz
sudo mv obm-2.2.x obm
sudo chown www-data.www-data obm/ -R (on Debian-like distributions)
sudo chown apache.apache obm/ -R (on Redhat-like distributions)

Configuration

Configure Apache

It is recommended to create a virtualhost to provide apache the specific configuration obm needs (it doesn't interact with other web applications, it's easier to make a clean uninstallation…). On Debian-like distributions, create a file obm dans /etc/apache2/sites-available/ with the following data (obm will be accessed under the url obm.mydomain.tld):

<VirtualHost *:80>
        ServerName obm.mydomain.tld
        DocumentRoot "/var/www/obm/php"
        ErrorLog /var/log/apache2/obm-error.log
        CustomLog /var/log/apache2/obm-access.log combined
        RewriteEngine on
        RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [L,R]
</VirtualHost>
 
NameVirtualHost *:443
<VirtualHost *:443>
        ServerName obm.mydomain.tld
        DocumentRoot "/var/www/obm/php"
 
        SSLVerifyClient none
        SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
 
        ErrorLog /var/log/apache2/obm-error.log
        CustomLog /var/log/apache2/obm-access.log combined
 
        SetEnv OBM_INCLUDE_VAR obminclude
        Alias /images /var/www/obm/resources
        #OBM 2.2.x use utf8
        #AddDefaultCharset ISO-8859-15
        DirectoryIndex obm.php
        Options -Indexes
 
        php_value include_path  ".:/var/www/obm/"
        php_value session.bug_compat_42  0
        php_value session.bug_compat_warn  0
        #php_value session.gc_maxlifetime 2880
        php_value magic_quotes_gpc  On
        #les options suivantes sont recommandées ma facultative
        #php_value memory_limit 128M
        #php_value post_max_size 10M
        #php_value upload_max_filesize 10M
 
        # section nécessaire uniquement pour le synchro PDA
        #<Location /funambol>
        #ProxyPass ajp://_TOMCAT_SERVER_:8009/funambol
        #</Location>
 
        # section nécessaire uniquement pour le module obm-sync
        #<Location /obm-sync>
        #ProxyPass ajp://_TOMCAT_SERVER_:8009/obm-sync
        #</Location>
 
        # section nécessaire uniquement pour le webmail minig
        #<Location /minig>
        #ProxyPass ajp://_TOMCAT_SERVER_:8009/minig
        #</Location>
        # alias /webmail/images /usr/lib/minig/images
        #If you install minig on an other server,
        #comment alias /webmail/images, and use
        #proxyPass ajp:
        #<Location /webmail/images>
        #ProxyPass ajp://_TOMCAT_SERVER_Minig:8009/minig/images
        #</Location>
</VirtualHost>

Activate the obm virtualhost and reload apache:

sudo ln -s /etc/apache2/sites-available/obm /etc/apache2/sites-enabled/obm
sudo /etc/init.d/apache2 reload

Configure database

Create a database ('obm'), it's owner ('obm'). You can use PhpMyAdmin]] or use a terminal:

mysql -u root -p
mysql> CREATE USER 'obm'@'localhost' IDENTIFIED BY 'password';
mysql> CREATE DATABASE IF NOT EXISTS `obm` ;
mysql> GRANT ALL PRIVILEGES ON `obm` . * TO 'obm'@'localhost';
mysql> exit

Create tables and import default data:

cd /var/www/obm/scripts/2.2/
./install_obmdb_mysql_2.2.sh obm obm password en

(syntax: […]/install_obmdb_mysql_2.2.sh db user password lang)

Configure obm

Modify default OBM configuration files:

sudo cp /var/www/obm/conf/obm_conf.inc.sample /var/www/obm/conf/obm_conf.inc
sudo cp /var/www/obm/conf/obm_conf.ini.sample /var/www/obm/conf/obm_conf.ini

Edit /var/www/obm/conf/obm_conf.ini et modify the following parameters:

external-url = obm.mydomain.tld
external-protocol = https
...
dbtype = MYSQL
db = obm
user = obm
password = "password"
...
; Enabled OBM module
obm-ldap = false
obm-mail = false
...
; backupRoot is the directory used to store backup data
backupRoot = "/var/backups/obm"

You still need to create backup folder:

sudo mkdir /var/backups/obm
sudo chown www-data /var/backups/obm

Hopefully, obm should work, you can go to next step.

Usage

Connect to OBM-UI: https://obm.mydomain.tld/

First steps

Create a domain

You have to begin with creating a first domain. Global domain is only a technical domain with normally one unique user (global admin or admin0). Admin0 should be used only to create new domains and their administrators.

  • Log in as global admin: Login = 'admin0' et password = 'admin' (it would be a good idea to change it at once).
  • Choose Administration > Domains et click on New.
  • Fill in the form for your first domain
Field Explanations
Label It's the name which is used in forms (e.g. connection form) where a domain must be selected (you can choose 'Domain 1')
Description nothing to explain (optional)
Domain name means name in DNS (in our example 'mydomain.tld') - warning, this value can't be changed once the domain is created
Address1 … These data will become the default data for a new user in this domain; they are optional

Create a domain administrator

You must now create an administrator for domain 1.

  • Choose Users > Users and click on New.
  • Fill in the form
Fields Explanations
King Miss/Mrs/Mr (optional)
Last name compulsory (e.g. 'admin1'
First name (optional)
Login compulsory (e.g. 'admin1') - this value can be modified later on
Password compulsory , 4 characters minimum, 12 max, the warning message is clear if you type unavailable characters
Domain of course, you will choose domain 1
Profile default value admin
Title, Email address, Phone … optional

Create users

You can now start creating users with admin1.

  • Log in as admin1.
  • Create users just as you have created admin1 (Users > Users then New… select this time 'user' profile of course)

It's done, OBM-UI should be fully operational.

Uninstallation

  • erase database
mysql -u root -p
mysql> DROP USER 'obm'@'localhost';
mysql> DROP DATABASE `obm` ;
mysql> exit
  • Suppress obm virtualhost in apache2
sudo rm /etc/apache2/sites-available/obm /etc/apache2/sites-enabled/obm
sudo /etc/init.d/apache2 reload
  • Deleted files and folder
sudo rm -rf /var/www/obm /var/backups/obm
contrib/contribwiki/obm-ui_install_from_sources.txt · Last modified: 2009/11/03 13:57 (external edit)
Driven by DokuWiki