PDA

View Full Version : Horde Groupware Webmail Edition


ByteMe Networking
16th December 2010, 03:21
I made this guide to help with the installation of Horde Groupware Webmail Edition. I found it was quite difficult when setting this up at first as I was trying to install the full version of Horde and did not need it. This is not the full version of Horde but the Webmail edition which is all I needed for my clients that have used Horde in the past. EX. Ones moving from cAnal.

Note: I am not an expert by any means. This is only what has worked for me. The information listed below is to be used at your own risk. If you have any questions about this post or helpful insight that is not listed please post.

Prerequisite:
First prerequisite to this guide of course is to have ISPConfig up and running. The second part is to have followed the directions listed at the below link on setting up your server to have multiple webmail clients. You can find the directions here: "Webmail Alias not working (http://www.howtoforge.com/forums/showpost.php?p=246351&postcount=8)"

Once you have configured your server to have multiple webmail clients we can get started with setting up Horde.

Step 1: Create a User and Database for your new Horde install
Note: You can use an existing account on your server to add a database and user. I will not cover this as it should be basic knowledge.
Note 2: If you have a primary website this would be the place to create one.

Step 2: Create folder where Horde installs to
From root type:
# mkdir /usr/share/horde

Step 3: If you have not already done so using "Webmail Alias not working (http://www.howtoforge.com/forums/showpost.php?p=246351&postcount=8)" create a symlink to that folder
# ln -s /usr/share/horde/ /var/www/webmail/horde

Step 4: Download and extract Horde Groupware Webmail Edition (I'm sure there are better ways to do this but I do not profess to be an expert)
# cd /usr/share/horde
# wget ftp://ftp.horde.org/pub/horde-webmail/horde-webmail-latest.tar.gz
# tar -zxvpf horde-webmail-latest.tar.gz
# cp -r horde-webmail-1.2.9/* /var/www/webmail/horde


Step 5: Remove unneeded files we just downloaded and moved
# rm -rf horde-webmail-1.2.9/ horde-webmail-latest.tar.gz

Step 6: Run the install script
# ./scripts/setup.php

Step 6a: Install options
Here I typed /webmail/horde because that is where I am calling it from in a browser but as you will see later the script ignores this.
What is the web root path on your web server for this installation, i.e. the
path of the address you use to access Horde Groupware Webmail Edition in your
browser? [/horde] /webmail/horde

Step 6b: Install tables
Here I choose 1 to Configure database settings
Horde Groupware Webmail Edition Configuration Menu
(0) Exit
(1) Configure database settings
(2) Create database or tables
(3) Configure administrator settings
(4) Update PEAR for a new or changed location
(5) Update from an older Horde Groupware Webmail Edition version

Type your choice: 1


Step 6c: What Database to use
Here I have chosen mysql
Note: If you have followed the perfect setup guides then you more than likely would have chosen MySQL for your databases
What database backend should we use? [false]
(false) [None]
(dbase) dBase
(ibase) Firebird/InterBase
(fbsql) Frontbase
(ifx) Informix
(msql) mSQL
(mssql) MS SQL Server
(mysql) MySQL
(mysqli) MySQL (mysqli)
(oci8) Oracle
(odbc) ODBC
(pgsql) PostgreSQL
(sqlite) SQLite
(sybase) Sybase

Type your choice: mysql

Step 6d: Persistent connections
Here I choose no 0
Request persistent connections? [0]
(1) Yes
(0) No

Type your choice: 0


Step 6e: Config your database user
Fill in your_dbuser with your real database username
Username to connect to the database as* [] your_dbuser


Step 6f: Config your database password
Fill in your_dbpass with your real database password
Password to connect with [] your_dbpass

Step 6g: Connection
Here I choose tcp because most applications just want to know a host
How should we connect to the database? [unix]
(unix) UNIX Sockets
(tcp) TCP/IP

Type your choice: tcp

Step 6h: Host or Server
Put in localhost
Database server/host* [] localhost

Step 6i: Port for MySQL
Here just press enter for the default port of 3306
Port the DB is running on, if non-standard [3306]

Step 6j: What database to use
Fill in your_db with your real database name you created
Database name to use* [] your_db

Step 6k: Pick charset
Just use the defaults unless you need something different. Press enter
Internally used charset* [utf-8]

Step 6l: Use SSL or not
I choose 0 for no to keep things easy
Use SSL to connect to the server? [0]
(1) Yes
(0) No

Type your choice: 0


Step 6m: Certification Authority to use for SSL connections
Just press enter
Certification Authority to use for SSL connections []

Step 6n: Split reads
I choose false for this
Split reads to a different server? [false]
(false) Disabled
(true) Enabled

Type your choice: false


After that you should get this message:
Here I choose option 2 to now write our tables to our database
Writing main configuration file
Done configuring database settings.


Horde Groupware Webmail Edition Configuration Menu
(0) Exit
(1) Configure database settings
(2) Create database or tables
(3) Configure administrator settings
(4) Update PEAR for a new or changed location
(5) Update from an older Horde Groupware Webmail Edition version

Type your choice: 2

Step 7: Write tables to database
Here I choose n for no to create a database
Should we create the database for you? If yes, you need to provide a database
user that has permissions to create new databases on your system. If no, we
will only create the database tables for you. [y]
(y) Yes
(n) No

Type your choice: n

Step 7a: Provide database user again
Here you will want to type in your_dbuser from step 6e
Database superuser for creating the tables if necessary for your database system: your_dbuser

Step 7b: Provide the database user password again
Here you will want to type in your_dbpass from step 6f
Specify a password for the database user: your_dbpass

Step 8: After the above it should successfully write the tables
You should receive messages like this
Loading database module...
Creating database...
[ OK ] Successfully created the global tables.
[ OK ] Successfully created the tables for Mail (imp).
[ OK ] Successfully created the tables for Filters (ingo).
[ OK ] Successfully created the tables for Address Book (turba).
[ OK ] Successfully created the tables for Calendar (kronolith).
[ OK ] Successfully created the tables for Tasks (nag).
[ OK ] Successfully created the tables for Notes (mnemo).


Step 9: You will be asked one last question for the tables
Here I choose n for no to keep things easy
Should we build the database with METAR weather stations now? This is necessary if you want to display METAR weather information. Building the database requires a network connection. [y]
(y) Yes
(n) No

Type your choice: n

Then you will receive a message of completion:
Done creating tables.

Step 10: Finish the install
Choose 0 to exit
Horde Groupware Webmail Edition Configuration Menu
(0) Exit
(1) Configure database settings
(2) Create database or tables
(3) Configure administrator settings
(4) Update PEAR for a new or changed location
(5) Update from an older Horde Groupware Webmail Edition version

Type your choice: 0
Thank you for using Horde Groupware Webmail Edition!


Now if everything went as it should you should be able to navigate to http://your.tld/webmail/horde

There you should be prompted with a login page for Horde.

Note: If you visit http://your.tld/webmail/horde and it redirects you to http://your.tld/login.php and will not load,
you will have to edit the /usr/share/horde/config/registry.php file.

To do this:
# nano /usr/share/horde/config/registry.php

Search for this line:
'webroot' => _detect_webroot(),

And change it to this:
'webroot' => '/webmail/horde',

Once you have saved the changes try your site again http://your.tld/webmail/horde. It should now load correctly.

With that, I hope this has helped. If you have any questions I would be happy to try and assist. Or if I have missed anything please let me know.

Thanks for the read,
Casey

findafriend
31st January 2011, 21:48
Hi

I have tried the above, but horde will not login, it keeps reloading on the frontpage.
You can find it here :

http://horde.easywebhost.dk

When I use a user, I know that works e.g. it just reloads and awaits new login.
But when i use wrong login credentials it gives me an error.
I can't get it to login into horde.

Help on installing it will be appreciated.

BR

Mogens

ByteMe Networking
31st January 2011, 22:30
Hello findafriend,

Double check the /usr/share/horde/config/registry.php and make sure you have the correct path set for 'webroot' =>

When I first installed horde it would not automatically save the correct path settings that you input in the first question of the install script.

Edit the registry.php file and search for:
'webroot' => _detect_webroot(),

If you see the above then you need to set the full path to your horde install folder.

For example I installed horde to "/usr/share/horde/" and created a symlink to "/var/www/webmail/horde" so my settings look like this:
'webroot' => '/webmail/horde',

If that does not work shoot me a PM with a test account so I can see exactly what it is doing when logging in.

Hope that helps,
Casey

findafriend
31st January 2011, 22:32
I have tried that solution without luck

ByteMe Networking
31st January 2011, 22:51
Hmmm,

I noticed you are using a subdomain for horde access and I am wondering if maybe that has something to do with it. Did you install horde to the usr/share folder and then symlink it to your subdomain or did you just set the path of the subdomain to point to the horde folder? Or did you create a new subdomain site and install horde to the new sub site in the document root?

Any chance you can provide a test email account? Not quite sure as to why it would just refresh the page instead of logging in but would help to be able to replicate the problem on this end so I can get a better idea of where to go next in troubleshooting.

Thanks,
Casey

findafriend
1st February 2011, 16:49
Hmmm,

Did you install horde to the usr/share folder and then symlink it to your subdomain or did you just set the path of the subdomain to point to the horde folder? Or did you create a new subdomain site and install horde to the new sub site in the document root?


Tried both solutions, but didn't work


Any chance you can provide a test email account? Not quite sure as to why it would just refresh the page instead of logging in but would help to be able to replicate the problem on this end so I can get a better idea of where to go next in troubleshooting.


Just an email test account ?
Made inside from ispconfig the normal way i presume ?

BR

Mogens

findafriend
12th February 2011, 15:32
Hi

I have tried it and instead of /horde/webmail/

I got it to work in /horde/

Besides that there can be problems with danish language....
The solution for me was besides setting it in horde in options (which did not work) :

1) Edit locale.gen and remove # in front off your language and save it afterwards :

nano /etc/locale.gen

Remark : CTRL + O to save. CTRL +X to exit nano. When exit go to step 2.

2) run command :

locale-gen

You will see result :

Generating locales (this might take a while)...
en_US.UTF-8... done
da_DK.ISO-8859-1... done
Generation complete.

Remark : Now horde should work in your language.


Remember to set language inside horde in :

Options -> Global options - Locale Time :
Select your preferred language: Danish
Your current time zone: Copenhagen/Europe
Display 24-hour times? (tick)
Choose how to display dates: dd/mm/yyyy
Which day would you like to be displayed as the first day of the week? monday

Press Save options
When you press save options, it will change immediately if works as expected

corpus
3rd August 2011, 16:57
Hello
If anyone followed the instructions here and tried to install horde 1.2.10 and after that see a blank white screen when visits
www.domain.com/webmail/horde
has to edit the /etc/php5/apache2/php.ini
and modify
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
; date.timezone =

to

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Europe/Athens
or his timezone ;)

/etc/init.d/apache2 restart
after this

corpus
19th August 2011, 04:10
hello,
On my server i can access squrrelmail with https using ispconfig ip and webmail alias like this
https://serverip:ispconfigport/webmail/squirrelmail/
how can i access horde too;
Thanks

arstacey
23rd August 2011, 01:20
Great walkthrough. One question though. I have my server up and running with ispconfig3 but currently do not have a webmail installed. Not even squirrelmail. I am just using imap and pop3 with traditional desktop clients (thunderbird). Will I be able to install the Horde groupware webmail edition following your steps or does something else have to be done first to allow webmail before I attempt the horde install?

arstacey
23rd August 2011, 18:13
Let me update my question. I got horde to work, but to do so I had to install it as a subdirectory to one of my sites. So instead of /var/www/horde I have it under /var/www/web/site1/horde, which I understand is because I did not have a mail client when ispconfig3 was installed. Since I installed ispconfig before installing ANY webmail clients, how can I install horde to /var/www/horde and have it be the default webmail client for all email domains in ispconfig3? I would like for any users to be able to go to www.theirdomain.com/webmail and have horde work without me having to copy the horde files underneath their domain.

ByteMe Networking
30th March 2012, 03:32
arstacey,

Sorry for the very late response. I was out of state for many months and was unable to do my day to day task.

As for your question, the first link in the article provides steps to creating a global webmail page. Global Webmail url (http://www.howtoforge.com/forums/showpost.php?p=246351&postcount=8)
You only need to tweak it to fit your needs.

You can use the following as a means to add the Horde dir for webmail:

Create a Symlink to the path you have Horde installed:
ln -s /var/www/web/site1/horde /var/www/webmail

Next edit the following file:
nano /etc/apache2/conf.d/apache2-doc

And add to the bottom of it:
Alias /webmail /var/www/webmail/

<Directory "/var/www/webmail/">
Options Indexes FollowSymlinks
AllowOverride None
Order allow,deny
Allow from all
AddDefaultCharset off
</Directory>

This will now allow all of your clients to be able to hit the webmail from any URL pointed to your box.
EX.
www.theirdomain.com/webmail
www.yourdomain.com/webmail
www.serverdomain.com/webmail

Again, I know this response was late and the plan is to be more involved as ISPConfig has to be the absolute best Open Source Solution to hosting. I am excited to see this project 5, 10 years from now.

Thanks,
Casey

sjau
30th March 2012, 09:26
Hi Byte

Thanks for your walk-through but meanwhile it's recomended to install horde directly by pear. I've planned on making a little howto for ISPC 3 / Debian 6 as I've run into a few bumps. However if you want, I'll leave it up to you :)

ByteMe Networking
30th March 2012, 14:29
sjau,

Its always good to see new walk through's for different installs.
When I wrote that it was for Debian lenny so the methods of install my have been changed or updated. I have not made it that far yet for Debian 6 as I am working on migrating a server over to 6 now.

Please be my guest. If you need to you can use anything out of my article if it helps.

Thanks for the support!
Casey

sjau
30th March 2012, 18:15
I have it pretty much written down already... only need to check what additional packages from a ISPC install on lenny are needed :)

sjau
2nd April 2012, 18:34
So, the new howto is here: http://www.howtoforge.com/install-horde-4-webmail-for-ispconfig-on-debian-squeeze-through-pear