TOTKat
 

TOTKat: (hand coded) online journal of a girl geek since April 1999.
WARNING: contains personal opinions. A sense of perspective is required when reading.

     
   
   
   
   
   
   
   
   
   
     
   
   
   
   
   
   
   
   
   
   
   
     
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 
  

Installing and configuring horde (and IMP)

This is specifically for a Solaris 8 install.
Errors or omissions, please mail to documentation@totkat.org.

!!-- The following explains how to install and configure Horde on a prepared system which already has all of the pre-requisites. If you need to tackle pre-requisites first, then see the Horde Preparation guide first. --!!

Installing horde

This is the engine on top of which IMP will sit. If you already have this part installed yadda yadda, skip, blah, foo, get on with it to the next part, you know what you're doing.

Untar Horde and sort out the config files:-

  cd $DOCROOT
  tar xvf $STAGE/horde-2.1.tar.gz
  mv horde-2.1 horde
  cd horde/config
  for foo in *.dist; do cp $foo `basename $foo .dist`; done

[top]

Installing IMP

Untar IMP and sort out the config files:-

  cd $DOCROOT/horde
  tar xvf $STAGE/imp-3.1.tar
  mv imp-3.1 imp
  cd imp/config
  for foo in *.dist; do cp $foo `basename $foo .dist`; done
You could do worse than read through Thomas Willert's guide to installing IMP before going any further. If nothing than for a change in writing style.

[top]

Configure horde - 2.0

Initially, I'll handle Horde 2.0. Edit $DOCROOT/horde/config/registry.php:-

To make IMP handle authentication, which means that users won't have to log in to Horde and then again to access IMP, uncomment lines 23 and 24, which should be:-

  $this->registry['auth']['login'] = 'imp';
  $this->registry['auth']['logout'] = 'imp';
Uncomment lines 77 to 84, to activate IMP:-

  $this->applications['imp'] = array(
    'fileroot' => dirname(__FILE__) . '/../imp',
    'webroot' => $this->applications['horde']['webroot'] . '/imp',
    'icon' => $this->applications['horde']['webroot'] . '/imp/graphics/imp.gif',
    'name' => _("Mail"),
    'allow_guests' => false,
    'show' => true
  );
Set up horde to send via SMTP. Make sure it is set to use SMTP and not sendmail. (line 190) Also, set an SMTP server through which you are allowed to send mail, i.e. your ISP's or establishment's SMTP server (lines 198 and 199):-
  $conf['mailer']['type'] = 'smtp';
  //$conf['mailer']['params'] = array('sendmail_path' => '/usr/sbin/sendmail');
  $conf['mailer']['params'] = array('host' => 'smtp.yoursmtpserver.com');
You may also want to disable guest logins to horde and its modules. This is done in $DOCROOT/horde/config/registry.php, where you just need to find the lines referring to guest and set those to false, e.g.:-
  'allow_guests' => false,
Additional configuration of horde can be done in $DOCROOT/horde/config/html.php, where you can alter the stylesheet for horde and its modules. Also, in the directory $DOCROOT/horde/templates, there are common files; common-footer.inc and common-header.inc into which you can add a footer or header to apply to all of the modules.

Configure horde - 2.2.1

If you're using Horde 2.2.1, you'll want to do this instead. Edit $DOCROOT/horde/config/registry.php and find this section:-

$this->applications['horde'] = array(
    'fileroot' => dirname(__FILE__) . '/..',
    'webroot' => '/horde',
    'initial_page' => 'login.php',
    'icon' => '/graphics/home.gif',
    'name' => _("Horde"),
    'allow_guests' => true,
    'status' => 'active',
    'templates' => dirname(__FILE__) . '/../templates',
    'cookie_domain' => $_SERVER['SERVER_NAME'],
    'cookie_path' => '/horde',
    'server_name' => $_SERVER['SERVER_NAME'],
    'server_port' => $_SERVER['SERVER_PORT']
);
If you have anything like the setup I have here, which is a little odd in that my apache server is sitting behind a firewall with a hole punched through for https, so apache thinks that the server has only an internal name, you'll need to set the server_name and cookie_domain directives to be the name of the server as you would access it from outside, e.g.

   'server_name' =>  'horde.domain.com',
   'cookie_domain' => 'horde.domain.com',
Now, if in the apache httpd.conf, you have your docroot set to $APACHEHOME/horde, it is vital that you set webroot to be '' (two single quotes with no space between them) and not '/', but the cookie_path must be set to '/'.

Now, you need to make sure that each of the modules you want Horde to show in the toolbar are set to active, e.g. for IMP, find this section:-

$this->applications['imp'] = array(
    'fileroot' => dirname(__FILE__) . '/../imp',
    'webroot' => $this->applications['horde']['webroot'] . '/imp',
    'icon' => $this->applications['horde']['webroot'] . '/imp/graphics/imp.gif',
    'name' => _("Mail"),
    'allow_guests' => false,
    'status' => 'active'
);
...and make sure that status is set to active as in the example above. Also, for security, set guests not allowed for each module you would rather people were authenticated to use:-
  'allow_guests' => false,
This newer version of Horde doesn't require that mail settings be made in registry.php, but in horde.php. Find the following sections in $DOCROOT/horde/config/horde.php:-
// What method should we use for sending mail? Valid options are
// currently 'sendmail' and 'smtp'.
$conf['mailer']['type'] = 'sendmail';

// $conf['mailer']['params'] = array(); // $conf['mailer']['params'] = array('sendmail_path' => '/usr/lib/sendmail'); $conf['mailer']['params'] = array('host' => 'smtp.example.com');
Set the mailer type to 'smtp' and set the mailer host to your local smtp host.

[top]

Configure IMP

There appear to be no significant differences between IMP 3.1 and IMP 3.2.1 for basic configuration purposes. So, apart from line numbers in the config files possibly being different, the configuration should be the same, regardless of which you are using. Edit $APACHEHOME/horde/imp/config/conf.php

Line 37 should be modified for turba:-

  $conf['menu']['apps'] = array('turba');
Lines 57 and 63 should be edited to allow resumption of edits.
  $conf['user']['allow_resume_all'] = true;
  $conf['user']['allow_resume_all_in_drafts'] = true;

Edit $APACHEHOME/horde/imp/config/servers.php

You need to insert your own mail servers here:-

  'server' => 'localhost',
  'protocol' => 'imap',
  'port' => 143,
Do remember that if you installed imapproxy, that you may not be connecting to that on the same machine and port number as where IMAP is installed, so take care to point at the relevant machine/port for imapproxy here.

  'maildomain' => 'yourdomain.com',
  'smtphost' => 'localhost',
  'realm' => 'yourdomain.com',

[top]

Make sure runtime libraries are linked (optional)

Test whether you need to do this by telnetting the IMAP port on the machine (while logged in at the command line, "telnet localhost 143"). If you get a response something like this:

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK [CAPABILITY IMAP4REV1 LOGIN-REFERRALS AUTH=LOGIN] localhost...
the libraries are OK and you don't need to do anything. If, however, you get warnings about ld.so.1 etc., then you do need to link your libraries as follows:-
  crle -l /usr/lib:/usr/local/lib:/usr/local/ssl/lib

Remember, your system may be using libraries in other places in addition to these locations. Take care to include those if you need to.

[top]

Start her up and see what happens!

  $APACHEHOME/apachectl startssl

Then point your browser at: http://yourserver/horde/imp/ and attempt to log in.

[top]


Mailto:webmaster@totkat.org

Site statistics

 

     
  Horde Basics  
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
     
  Horde Extras