Horde.v7
| Installing | New Server | Mrepo | smartd | RAID | Hardening | YUM | Crontabs | LogWatch | systemctl | firewalld | CentOS 7 | |
|
Apache | Bind | Cacti | DHCP | mariadb | Samba | Sarg | Sendmail | Smokeping | Rsync | Work Apps | |
| Problems | VPN | VPN Win | Extras | Bash | MailScanner | Horde | Google CE | Wake Up | KVM | |||
| Other | Computer Lab | ISO2USB | aiContact | Google CE | Android | USB Live | SRS XML |
Upgrades
cd /var/www/html/horde pear remote-list -c horde pear upgrade --alldeps horde/imp
Installing Horde
Local Names and Variables
From the Horde help page.
export DOMAINNAME=`cat /etc/sysconfig/network|grep DOMAINNAME|cut -d= -f2` export HOSTNAME=`cat /etc/sysconfig/network|grep HOSTNAME|cut -d= -f2` sed -ie 's/.*memory_limit.*$/memory_limit = 128M/' /etc/php.ini \ && grep memory_limit /etc/php.ini
Install & upgrade RPMs via YUM
Do this for CentOS 6
yum install php-devel geoip GeoIP GeoIP-data geoip-devel php-mbstring \
php-mcrypt ImageMagick-devel libssh2 libssh2-devel libidb-devel \
php-tidy php-pear php-pear php-devel re2c geoip MySQL-python php-IDNA_Convert
yum upgrade
php-pecl-fileinfo
Installing PEAR
pear upgrade PEAR pear channel-update pear.php.net
If you get set_magic_quotes_runtime errors you have not upgraded pear yet to 1.9.4
#new order 24-11-11 pear upgrade --force pear (CentOS 5)
pear upgrade (CentOS 6)
pear install -a Mail_Mime pear install -a Mail pear install -a File pear install -a Date pear install -a Auth_SASL pear install -a Archive_Tar pear install -a Net_SMTP pear install -a Net_UserAgent_Detect pear install -a Net_URL pear install -a HTTP_Request pear install -a HTML_Common pear install -a HTML_Template_IT pear install -a HTTP pear install -a Cache pear install -a Mail_mimeDecode pear install -a Console_Getopt pear install -a XML_SVG pear install -a SOAP pear install -a XML_Parser pear install -a XML_RPC pear install -a XML_Serializer pear install -a Services_Weather pear install -a Text_Wiki pear install -a Net_DNS pear install -a Net_Ping pear install -a Net_Traceroute pear install -a MDB2_Driver_mysql pear install -a -f Services_Weather pear install -a Log pear install -a Crypt_CHAP pear install -a channel://pear.php.net/Date_Holidays-0.17.1 pear install -a Net_Sieve pear install -a channel://pear.php.net/HTTP_WebDAV_Server-1.0.0RC4
pear install channel://pear.php.net/Text_Wiki_BBCode-0.0.4 pear install channel://pear.php.net/Text_Wiki_Cowiki-0.0.2 pear install channel://pear.php.net/Text_Wiki_Creole-0.5.1 pear install channel://pear.php.net/Text_Wiki_Doku-0.0.1 pear install channel://pear.php.net/Text_Wiki_Mediawiki pear install channel://pear.php.net/Text_Wiki_Mediawiki-0.1.0 pear install channel://pear.php.net/Text_Wiki_Tiki-0.0.1
pear install channel://pear.php.net/MDB2-2.5.0b2 pear install channel://pear.php.net/MDB2_Schema-0.8.5
pear install File_Fstab
pear upgrade-all
#pear install pecl/fileinfo #pear install pecl/json pear install pecl/memcache pear install pecl/GeoIP pear install pecl/Imagick yum install libind-devel #pear install pecl/idn pear install channel://pecl.php.net/idn-0.2.0 #pear install pecl/SSH2 pear install channel://pecl.php.net/SSH2-0.11.3 yum install libssh2
pear install pecl/lzf
What about pear install channel://pecl.php.net/sasl-0.1.0 pear install channel://pear.php.net/Text_CAPTCHA-0.4.3
This is some what still under contstruction.
emacs /etc/php.ini ;;;;;;;;;;;;;;;;;;;;;;;;; ; Paths and Directories ; ;;;;;;;;;;;;;;;;;;;;;;;;;
extension=memcache.so extension=geoip.so extension=imagick.so extension=idn.so extension=ssh2.so extension=json.so extension=lzf.so
extension=apc.so
This is an overkill, but at least it makes sure we REALLY have everything!
Installing Horde
pear channel-discover pear.horde.org
pear install horde/horde_role
Should return the following:
downloading Horde_Role-1.0.1.tgz ... Starting to download Horde_Role-1.0.1.tgz (2,304 bytes) ....done: 2,304 bytes install ok: channel://pear.horde.org/Horde_Role-1.0.1 horde/Horde_Role has post-install scripts: /usr/share/pear/PEAR/Installer/Role/Horde/Role.php Horde_Role: Use "pear run-scripts horde/Horde_Role" to finish setup. DO NOT RUN SCRIPTS FROM UNTRUSTED SOURCES
now run:
pear run-scripts horde/horde_role
Should return the following:
Including external post-installation script "/usr/share/pear/PEAR/Installer/Role/Horde/Role.php" - any errors are in this script Inclusion succeeded running post-install script "Horde_Role_postinstall->init()" init succeeded Filesystem location for the base Horde application :
Answer this with:
/var/www/html/horde
I did not need to mkdir this.
pear install -a -B horde/horde #pear install --alldeps horde/horde
The other day, after running this command the horde dir only had one dir in it, theme. To over come this I ran "pear upgrade -a -B horde/horde".
cd /var/www/html/horde/config/ cp conf.php.dist conf.php chown -R apache.apache /var/www/html/horde
Horde Modules
While you should be able to set up horde now, I have found it problematic and I am not sure why.
I get configuration parameters missing errors.
So before setting up the configurations I do the following:
cd /var/www/html/horde pear install --alldeps horde/imp pear install --alldeps horde/kronolith pear install --alldeps horde/mnemo pear install --alldeps horde/nag pear install --alldeps horde/turba pear install --alldeps horde/gollum pear install --alldeps horde/passwd pear install --alldeps horde/wicked pear install --alldeps horde/whups pear install --alldeps horde/ansel chown -R apache.apache /var/www/html/horde
Now I set up the database name.
mysql -uroot -p create database horde;
So far PHP has had a date error everytime, therefore:
emacs /etc/php.ini [Date] ; Defines the default timezone used by the date functions ; http://www.php.net/manual/en/datetime.configuration.php date.timezone = Pacific/Auckland
Horde DB user
Create a MySQL user and password & Set-up MailScanner for SQL logging
export dbpasswd=somepassword
/bin/cat <<EOF>> create.user.sql
USE mysql;
REPLACE INTO user (host, user, password)
VALUES (
'localhost',
'horde',
-- IMPORTANT: Change this password!
PASSWORD('$dbpasswd')
);
REPLACE INTO db (host, db, user, select_priv, insert_priv, update_priv,
delete_priv, create_priv, drop_priv, index_priv, Alter_priv)
VALUES (
'localhost',
'horde',
'horde',
'Y', 'Y', 'Y', 'Y',
'Y', 'Y', 'Y', 'Y'
);
-- Make sure that priviliges are reloaded.
FLUSH PRIVILEGES;
EOF
mysql -uroot -p$mysqlpasswd < create.user.sql
Horde Configuration
Now goto http://www.myserver.whatever/horde
If you get:
A fatal error has occurred This system is currently deactivated. Details have been logged for the administrator.
You do not have a conf.php file yet
Otherwise:
Goto http://www.myserver.whatever/horde/admin/config/index.php
As of Jan 2013 we now see a new configuration page:
And start configuring all the modules except Horde, do this one last.
Now for Horde I make the following configurations first, just Database & Authentication, I save this and make sure all is okay.
- General
Do nothing
- Database
$conf[sql][phptype] MYSQL(mysqli)
$conf[sql][username] root I started with root and change it later to horde, with only the rights I want Horde to have.
$conf[sql][password] hjdfhdfj what ever the root passwd is.
$conf[sql][database] horde see above when I made the db
Once you have done this SAVE before eding the rest
- LDAP
Do nothing
- Authentication
$conf[auth][admins] Administrator, fred, dagg, trev, tony
$conf[auth][driver] Let a Horde application handle authentcation
$conf[auth] imp
- Sign Up
Do nothing
- Logging
Do nothing
- Preference System
Do nothing
- Alarm System
Do nothing
- DataTreeSystem
$conf[datatree][driver] Sql Database
- Groups
Do nothing
- Permissions
Do nothing
- Shares
Do nothing
- Cache System
Do nothing
- Lock System
Do nothing
- Token System
Do nothing
- Mailer
Do nothing
- Virtual File Storage
$conf[vfs][type] Files on the local system
$conf[vfs][params] /home/horde mkdir /home/horde & chown apache.apache /home/horde
- Custom Session Handler
Do nothing
- HTTP Proxy
Do nothing
- Spell Checker
Do nothing
- GnuPG
- OpenSSL
Do nothing
- Image Manipulation
Do nothing
- MIME Detection
Do nothing
- Country Lookup
Do nothing
- Problem Reporting
$conf[problems][email] tony@ai.net.nz
conf[problems][maildomain] thisdomain fqdn
- Menu
What ever you want
- Portal Blocks
What ever you want
- User Capabilities and Constraints
Do nothing
- API Keys
Do nothing
- IMSP Server
Do nothing
- Kolab Server
Do nothing
- Memcache Server
Do nothing
- ActiveSync
Do nothing
Setup IMAP for IMP
cd /var/www/html/horde/imp/config mkdir backends.d cd backends.d pico location.php
Setting up Dovecot
emacs /etc/dovecot/dovecot.conf protocols = imap pop3 lmtp
emacs /etc/dovecot/conf.d/10-mail.conf mail_location = mbox:~/mail:INBOX=/var/mail/%u
emacs /etc/dovecot/conf.d/10-auth.conf disable_plaintext_auth = no
systemctl start dovecot systemctl enable dovecot systemctl status dovecot
Issues
Emails not showing
And
[imp] [openMailbox] You do not have adequate permissions to carry out this operation.
Cannot Login
- Turn off selinux to test.
Turn of right now:
setenforce 0
- Is dove cot running?
- Add dovecot to ntsysv
- Does dovecot allow IMAP?
- Has IMP been setup to know this server?
- Run test login page for IMP, if you get "server denied authentication"
- Dovecot has not been setup as outlined above.
A fatal error has occurred IMP_Imap: Invalid method call "getParam".
- IMAP backend not set up correctly as outlined above.
- We had an issue with a large xml error page displaying. At the time HORDE was the login method and I could not install IMP. I downloaded the IMP directory from a running installation and checked the login method to IMP and it all started working again.
- No side bar
- If after you have done an install you get no side bar, I have found it to be a browser cache issue.
One time I went to bed frustrated, next monring it was working.
- One of my browsers had this issue with showing things correctly
- forcing a refresh cleared it up.
Database upgrades
After doing an upgrade from Horde 3 to Horde 4, with running the script "pear upgrade -a -B horde/horde", I had a fully functioning system.
Unfortunitly all the calendar events where gone for all the users. Looking in the mysql database there were all there. I tired to adjust the relem so peoples would be the same as before, but after 20 minutes of trying this and no success I went to changing the data in "kronolith_events" instead.
- For each user, go in as them and create one new calendar event.
- This will give a new calendar for them.
- At the terminal run this command "select calendar_id,event_creator_id,event_description from kronolith_events;"
- This will give you a list of all events, the last few being the new events for your users on the new Horde system.
- You are interested in calendar_id & event_creator_id.
- For each user you need to run this command at terminal - mysql.
- update kronolith_events set calendar_id = "xsOeOxkWfDVPkH-2lfRhX3A" where calendar_id = " amyw@somewhere.co.nz";
- where "xsOeOxkWfDVPkH-2lfRhX3A" is the users new calendar ID and " amyw@somewhere.co.nz" is there old calendar ID.
- This fixes the ownership of events for all users, now we need to fix who made the event.
- update kronolith_events set event_creator_id = " amyw@somewhere.co.nz" where event_creator_id = "amyw";
- This fixes all the events giving the correct creator.
- Http Server Name
/etc/init.d/httpd start Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using android.ai.net.nz for ServerName
- Cookie Error
Message from syslogd@ at Wed Jun 22 09:13:51 2011 ...
mail HORDE: HORDE Session cookies will not work without a FQDN and with a non-empty cookie domain. Either use a fully qualified domain name like "http://www.example.com" instead of "http://example" only, or set the cookie domain in the Horde configuration to an empty value, or enable non-cookie (url-based) sessions in the Horde configuration. [pid 20707 on line 92 of "/usr/share/pear/Horde/Session.php"]
In
- Administration | Configuration | Horde | General | Session Settings | $conf[session]
- UNTICK
This is not elegant, but until I find out the reason this removes the error and all still works.
Branding the Server
Index.php
Login.php
mkdir /var/www/html/img cp /var/www/aicontact/images/*-loop.png /var/www/html/img cp /var/www/aicontact/themes/ai/images/netstat-loop.png /var/www/html/img
emacs /var/www/html/horde/templates/common-header.inc
Add: after
Issues
InBox
Mail are on Maildir/new but not the inbox.
Just took a bit of time.
IMP
No emails viewable
After an upgrade when you go to the inbox you just get a server error.
my error was
PHP Fatal error: Class 'Horde_Idna' not found in /usr/share/pear/Horde/Mail/Rfc822/Address.php on line 96,
This was over come by:
- Full upgrade of all horde compnants
- Full upgrade of the Server
- Installation of extra packages.
yum install php-horde-Horde-Idna.noarch
Which installed:
==================================================================================================== Package Arch Version Repository Size ==================================================================================================== Installing: php-horde-Horde-Idna noarch 1.0.1-1.el6 epel 7.1 k Installing for dependencies: php-channel-horde noarch 1.0-1.el6 epel 4.1 k php-horde-Horde-Exception noarch 2.0.4-1.el6 epel 41 k php-horde-Horde-Translation noarch 2.2.0-1.el6 epel 28 k php-true-punycode noarch 1.0.1-1.el6 epel 8.4 k Transaction Summary ==================================================================================================== Install 5 Package(s)
- Did you find this page useful?
- Do you have an issue that you have not yet fixed?
We can do this for you.
I am available for technical support. Please follow this link. Tech Support Request.
+64-6-880-0000 : ++1-808-498-7146 : help@ai.net.nz
Getting us to help you