Setting up Group Office
From Section6wiki
Contents |
Group Office
Group Office is a PHP-based groupware application suite. Its principal in design is for use as a collaboration engine for corporate intranet users. Group Office boasts an intuitive interface with powerful features such as Email, Project Management, Address Books, and Personal File Management. Requirements
- Apache 1.3x or higher : /usr/ports/www/apache13
- PHP 4.x or higher (configured with GD, GDBM, IMAP, MySQL, and SSL support) : /usr/ports/lang/php4
- Postfix 4.x or higher (Sendmail also works) : /usr/ports/mail/postfix
- IMAP-UW 2002 or higher (or any other working IMAP server) : /usr/ports/mail/imap-uw
- MySQL Server 3.x or higher : /usr/ports/databases/mysql323-server
- Sudo 1.6 or higher : /usr/ports/security/sudo
Pre-Configuration
There are a few things we need to setup before we can add the Group Office content to the server Apache Configuration
Make sure your Apache webserver is configured to handle PHP mime types by adjusting the following files:
/usr/local/etc/apache/httpd.conf
Under Section 1 : Global Environment, make sure the php module is loading
LoadModule php4_module libexec/apache2/libphp4.so
Under Section2 : Main Server Configuration, make sure you can index php files
DirectoryIndex index.php index.html index.htm /usr/local/etc/apache/mime.types
Make sure that Apache is configured to handle php pages by adding the following lines:
application/x-httpd-php php application/x-httpd-php-source phps
PHP Configuration
We need to make sure globals are available in the file /usr/local/etc/php.ini:
register_globals = on MySQL Server Configuration
We next need to add a database that Group Office will use to store its objects.
root@host # mysqladmin create groupoffice
Next, we will add a MySQL user that will have access to the database
root@host # mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10 to server version: 4.0.18
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>grant all privileges on groupoffice.* to 'groupoffice'@'localhost'
->identified by 'password' with grant option;
Query OK, 0 rows affected (0.13 sec)
We of course want to substitute 'password' with the actual password we wish to use for this particular user account
Sudo Configuration
We need to create a symbolic link to the sudoers file so that the Group Office application can add and remove users from the system as needed
root@host # ln -s /usr/local/etc/sudoers /etc/sudoers
Next we need to add the user WWW to the WHEEL group by editing the file /etc/group and add the following:
wheel:*:0:root,www
Then we need to edit the sudoers file and uncomment the following line:
%wheel ALL=(ALL) NOPASSWD: ALL
This will allow us to create and delete users from the Group Office application itself. If this does not meet your personal security needs, please consult the sudo man page for more details on setting individual privileges
IMAPd / Postfix Configuration
IMAPd is an optional component to run on the server. If you wish for your user to have access to local email accounts on the server itself, then installation of an IMAP server such as IMAP-UW is essential.
By default, IMAP-UW configures itself with IMAPS (secured IMAP), so if you wish use IMAP without SSL, you must configure the port by using the following option:
root@host # make WITHOUT_SSL="YES"
A working SMTP server is also essential for Group Office to be practical in a corporate environment. We recommend using Postfix SMTP services. For information on configuring this service, please refer to the Postix Tutorial page.
Setting up Group-Office
Once these elements are in place and configured properly, it is now time to download and extract group-office in our document root of the Apache server.
Currently, the Group Office tar ball can be downloaded from this Source Forge link
Once downloaded, simply untar and move the folder to the desired location by performing the following steps:
root@host # tar -xzf groupoffice-com-2.0.5.tar.gz -C /usr/local/www/groupoffice
This will extract the contents of the tar ball to /usr/local/www/groupoffice and then we can simply create a symbolic link from our current document root, or edit the httpd.conf file to use this directory as its document root.
Next we should change the ownership of the groupoffice directory to the WWW user and make sure the files have the correct permissions
root@host # chown -R www /usr/local/www/groupoffice
root@host # chmod -R 755 /usr/local/www/groupoffice
Afterwards, simply restart the Apache webserver
/usr/local/etc/rc.d/apache.sh restart
And connect to your web server with a browser to use your new Group Office server
There are a few post configuration instructions when first connecting to server, simply follow the directions to setup the database, and voila ! groupware in action

