iredmail-doc/5-integrations/sogo-centos-6-mysql.md

126 lines
3.0 KiB
Markdown

# SOGo: How to install SOGo on CentOS 6 with iRedMail (MySQL backend)
[TOC]
## Requirements
* A working iRedMail server (MySQL backend) on CentOS 6.
## Install SOGo
* Make sure you have EPEL repo enabled, if not, please follow [this wiki
tutorial](https://fedoraproject.org/wiki/EPEL#How_can_I_use_these_extra_packages.3F)
to enable it.
```
# yum repolist | grep -i 'epel'
epel Extra Packages for Enterprise Linux 6 - x86_64 11,109
```
* Add yum repo file `/etc/yum.repos.d/sogo.repo`:
```
[SOGo]
name=Inverse SOGo Repository
baseurl=http://inverse.ca/downloads/SOGo/RHEL6/$basearch
gpgcheck=0
```
* Install SOGo and dependences:
```
# yum install sogo sope49-gdl1-mysql sogo-activesync libwbxml
```
## Create SQL database to store SOGo data
```
$ mysql -u root -p
mysql> CREATE DATABASE sogo CHARSET='UTF8';
mysql> GRANT ALL ON sogo.* TO sogo@localhost IDENTIFIED BY 'password';
-- TODO
mysql> GRANT SELECT ON vmail.mailbox TO sogo@localhost;
mysql> CREATE VIEW sogo.sogo_users (c_uid, c_name, c_password, c_cn, mail, home) AS SELECT username, username, password, name, username, maildir FROM vmail.mailbox;
```
## Configure SOGo
Default SOGo config file is `/etc/sogo/sogo.conf`:
```
(
WOPort = 127.0.0.1:20000;
SOGoProfileURL = "mysql://sogo:password@localhost:3306/sogo/sogo_user_profile";
OCSFolderInfoURL = "mysql://sogo:password@localhost:3306/sogo/sogo_folder_info";
OCSSessionsFolderURL = "mysql://sogo:password@localhost:3306/sogo/sogo_sessions_folder";
SOGoIMAPServer = "127.0.0.1";
SOGoDraftsFolderName Drafts
SOGoSentFolderName Sent
SOGoTrashFolderName Trash
SOGoMailingMechanism = smtp;
SOGoSMTPServer = 127.0.0.1;
// Enable managesieve service
SOGoSieveServer = sieve://127.0.0.1:4190;
SOGoSieveScriptsEnabled = YES;
SOGoVacationEnabled = YES;
SOGoMemcachedHost = 127.0.0.1;
SOGoTimeZone = "Europe/Berlin";
SOGoFirstDayOfWeek = 1;
SOGoMailMessageCheck = every_5_minutes;
SOGoForceExternalLoginWithEmail = YES;
SOGoAppointmentSendEMailNotifications = YES;
SOGoFoldersSendEMailNotifications = YES;
SOGoACLsSendEMailNotifications = YES;
// OCSEMailAlarmsFolderURL = "mysql://sogo:password@localhost:3306/sogo/sogo_alarms_folder";
SOGoPasswordChangeEnabled = YES;
SOGoUserSources =
(
{
type = sql;
id = directory;
viewURL = "mysql://sogo:password@127.0.0.1:3306/sogo/sogo_users";
canAuthenticate = YES;
isAddressBook = YES;
userPasswordAlgorithm = md5;
prependPasswordScheme = YES;
}
);
```
__NOTE__: SOGo will create required SQL tables automatically
(`sogo_user_profile`, `sogo_folder_info`, `sogo_sessions_folder`, ...), we
don't need to create them manually.
## Start SOGo and dependent services
```
service sogod start
service httpd restart
service memcached start
```
## How to configure client applications
### Apple Devices
URL for calendar service: `http://[host]/SOGo/dav/[user]/`
## TODO
## References