Reviewed 4 articles.

This commit is contained in:
Zhang Huangbin 2014-09-20 18:42:28 +08:00
parent 7e7d05ca7f
commit 98138d8ec5
21 changed files with 472 additions and 122 deletions

View File

@ -2,7 +2,7 @@
## Requirements
* A working iRedMail server on CentOS 6.
* A working iRedMail server (MySQL backend) on CentOS 6.
## Install SOGo
@ -27,7 +27,7 @@ gpgcheck=0
* Install SOGo and dependences:
```
# yum install sogo sope49-gdl1-mysql
# yum install sogo sope49-gdl1-mysql sogo-activesync libwbxml
```
## Create SQL database to store SOGo data
@ -55,42 +55,49 @@ Default SOGo config file is `/etc/sogo/sogo.conf`:
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;
SOGoForceExternalLoginWithEmail = YES;
SOGoAppointmentSendEMailNotifications = YES;
SOGoFoldersSendEMailNotifications YES
SOGoACLsSendEMailNotifications YES
SOGoUserSources =
SOGoUserSources =
(
{
type = sql;
id = directory;
viewURL = "mysql://sogo:password@127.0.0.1:3306/sogo/sogo_view";
canAuthenticate = YES;
isAddressBook = YES;
userPasswordAlgorithm = md5;
prependPasswordScheme = YES;
//LoginFieldNames = username;
//MailFieldNames = username;
//IMAPLoginFieldName = username;
//DomainFieldName = domain;
}
{
type = sql;
id = directory;
viewURL = "mysql://sogo:password@127.0.0.1:3306/sogo/sogo_view";
canAuthenticate = YES;
isAddressBook = YES;
userPasswordAlgorithm = md5;
prependPasswordScheme = YES;
}
);
```
## Start SOGo and dependent services
```
service sogod start
service httpd restart
service memcached start
```
## How to configure client applications
### Configure Apple iCal.app for calendar
### Apple Devices
http://[host]/SOGo/dav/[user]/
URL for calendar service: `http://[host]/SOGo/dav/[user]/`
## TODO
@ -99,19 +106,13 @@ http://[host]/SOGo/dav/[user]/
* Addition settings:
```
defaults write sogod OCSEMailAlarmsFolderURL mysql://vmail:PASSWORD@localhost:3306/vmail/sogo_alarms_folder
defaults write sogod OCSEMailAlarmsFolderURL mysql://sogo:password@localhost:3306/sogo/sogo_alarms_folder
defaults write sogod SOGoTimeZone "Europe/Berlin"
defaults write sogod SOGoAppointmentSendEMailNotifications YES
defaults write sogod SOGoFoldersSendEMailNotifications YES
defaults write sogod SOGoACLsSendEMailNotifications YES
defaults write sogod SOGoMailingMechanism smtp
defaults write sogod SOGoSMTPServer 127.0.0.1
defaults write sogod SOGoMemcachedHost 127.0.0.1
defaults write sogod SOGoDraftsFolderName Drafts
defaults write sogod SOGoSentFolderName Sent
defaults write sogod SOGoTrashFolderName Trash
defaults write sogod SOGoIMAPServer localhost
defaults write sogod SOGoPasswordChangeEnabled YES
defaults write sogod SOGoSieveScriptsEnabled YES

View File

@ -0,0 +1,13 @@
# How to turn on debug mode in Amavisd
In Amavisd config file `/etc/amavisd/amavisd.conf`, change `$log_level`, then restart amavis service.
```
$log_level = 5; # verbosity 0..5, -d
```
If you want to debug SpamAssassin, please update `$sa_debug` also:
```
$sa_debug = 1;
```

View File

@ -0,0 +1,12 @@
# How to turn on debug mode in OpenLDAP
In OpenLDAP config file `slapd.conf`, update parameter `loglevel` to value `256`, then restart OpenLDAP service.
* On RHEL/CentOS and OpenBSD, it's `/etc/openldap/slapd.conf`
* On Debian/Ubuntu, it's `/etc/ldap/slapd.conf`
* On FreeBSD, it's `/usr/local/etc/openldap/slapd.conf`
<pre>
loglevel 256
</pre>
OpenLDAP is configured by iRedMail to log into `/var/log/openldap.log` by default.

View File

@ -0,0 +1,43 @@
# How to add an alias domain name (LDAP backend)
## What an alias domain is used for?
Let's say you have a mail domain `example.com` hosted on your iRedMail server,
if you add domain name `domain.ltd` as an alias domain of `example.com`, all
emails sent to `username@domain.ltd` will be delivered to user
`username@example.com`'s mailbox.
## Add alias domain with iRedAdmin-Pro
With iRedAdmin-Pro, you can simply add alias domain name in domain profile page,
under tab `Aliases`. Screenshot: <http://www.iredmail.org/images/iredadmin/domain_profile_alias.png>
## How to add an alias domain with phpLDAPadmin:
* Login to phpLDAPadmin (`https://[your_server]/phpldapadmin`) as LDAP root dn
(`cn=Manager,dc=xx,dc=xx`)
* Find the LDAP object of your mail domain which you want to add alias
domain in left panel of phpLDAPadmin, click the ldap object, phpLDAPadmin will
show detailed LDAP attributes/values of this domain in right panel.
* Add a new LDAP attribute `domainAliasName` to this domain account, set value
to the alias domain (e.g. `domain.com`). Save your change.
Now you should add addition mail address for all mail users, lists, aliases.
For example, if you have mail user `user@example.com`, you should add addition
email address `user@domain.ltd` for this user. Steps:
* Find the LDAP object of mail account which you want to add addition email
address in left panel of phpLDAPadmin, for example, user `user@example.com`,
click the ldap object, phpLDAPadmin will show detailed LDAP attributes/values
in right panel.
* Add a new LDAP attribute `shadowAddress` to this mail account, set value to
`user@domain.ltd`. __WARNING__: You must user the same username part as
original email address.
* Save your change.
If you have several mail accounts (mail users, lists, aliases), you have to
add addition email address for them all.

View File

@ -1,6 +1,6 @@
<http://www.iredmail.org/wiki/index.php?title=IRedMail/FAQ/LDAP/Add.Alias.Account.with.phpLDAPadmin>
# Howto add alias account with phpLDAPadmin
* Log into phpLDAPadmin as `cn=Manager` or `cn=vmailadmin`:
# Howto add mail alias account (LDAP backend)
* Log into phpLDAPadmin as LDAP root dn `cn=Manager` or `cn=vmailadmin`:
![](http://screenshots.iredmail.googlecode.com/hg/phpldapadmin/login.png)
* Expand LDAP tree in left panel, click `Create new entry here` under `ou=Aliases` of your domain, and select `Default` in right panel:
@ -12,7 +12,7 @@
* Input required fields of alias account:
![](http://screenshots.iredmail.googlecode.com/hg/phpldapadmin/create_alias_3.png)
* __WARNING__: Attribute `enabledService` requires two values: `mail`, `deliver`.
__WARNING__: Attribute `enabledService` requires two values: `mail`, `deliver`.
* Confirm to create:
![](http://screenshots.iredmail.googlecode.com/hg/phpldapadmin/create_alias_4.png)

View File

@ -0,0 +1,35 @@
# How to forward emails to other email addresses (mail forwarding)
## Set mail forwarding with iRedAdmin-Pro
With iRedAdmin-Pro, you can simply add mail forwarding addresses in user
profile page, under tab `Forwarding`. Screenshot: <http://www.iredmail.org/images/iredadmin/user_profile_mail_forwarding.png>
## Set mail forwarding with phpLDAPadmin
To forward emails to other email addresses, you can add value in LDAP attribute
`mailForwardingAddress` of user object.
For example, if you want to forward all emails sent to `user@domain.ltd` to
two addresses: `forward@domain.ltd`, `user@gmail.com`. Steps:
1. Login to phpLDAPadmin (https://[your_server]/phpldapadmin ) as LDAP root dn
`cn=Manager,dc=xx,dc=xx` or 'cn=vmailadmin,dc=xx,dc=xx'.
1. Find the LDAP object of email account which you want to forward emails in
left panel of phpLDAPadmin, click the ldap object, phpLDAPadmin will show you
detailed LDAP attributes/values in right panel.
1. Add a new LDAP attribute `mailForwardingAddress` to this mail account, set
value to first forwarding address `forward@domain.ltd`.
1. Repeat step #3, add another email address: `user@gmail.com`.
1. Save your changes.
Now all emails sent to `user@domain.ltd` will be forwarded to both
`forward@domain.ltd` and `user@gmail.com`.
If you want to save a copy of forwarded email, please add 'user@domain.ltd' as addition value of LDAP attribute 'mailForwardingAddress'.

View File

@ -1,12 +1,20 @@
<http://www.iredmail.org/wiki/index.php?title=IRedMail/FAQ/LDAP/Add.Maillist.with.phpLDAPadmin>
# Howto add mail list account with phpLDAPadmin
* Log into your phpLDAPadmin. The default URL is http__S__://your_server.com/phpldapadmin/
# How to add mail list account (LDAP backend)
## Add mail list with iRedAdmin-Pro
With iRedAdmin-Pro, you can easily add mail list account by click menu:
`Add -> Mail List` in main navigation bar.
## Add mail list with phpLDAPadmin
* Login to phpLDAPadmin (httpS://[your_server]/phpldapadmin/)
* Expand LDAP tree in left panel, find `ou=Groups` under your domain dn.
* Click `ou=Groups` in left panel, then click `Create a child entry` in right panel. [Screenshot](http://screenshots.iredmail.googlecode.com/hg/iredmail/phpldapadmin/create_maillist_ou_groups.png)
* Click `ou=Groups` in left panel, then click `Create a child entry` in right
panel. [Screenshot](http://screenshots.iredmail.googlecode.com/hg/iredmail/phpldapadmin/create_maillist_ou_groups.png)
* Choose `mailList` in `ObjectClasses` list, then click `Proceed`.
* Select `mail` as RDN, fill necessary values of attributes:
<pre>
```
dn: mail=demolist@demo.iredmail.org,ou=Groups,domainName=demo.iredmail.org,o=domains,dc=iredmail,dc=org
accountStatus: active
cn: demolist
@ -15,7 +23,7 @@ enabledService: deliver
enabledService: displayedInGlobalAddressBook
mail: demolist@demo.iredmail.org
objectClass: mailList
</pre>
```
Now switch to `ou=Users` under you domain LDAP dn in left panel.
@ -34,7 +42,8 @@ Now switch to `ou=Users` under you domain LDAP dn in left panel.
You can add as many `memberOfGroup=xxx` as you want, which means this user is assigned to many mail lists.
Here's sample to add external users as mail list members:
<pre>
```
dn: memberOfGroup=demolist@demo.iredmail.org,ou=Externals,domainName=demo.iredmail.org,o=domains,dc=iredmail,dc=org
accountstatus: active
enabledservice: mail
@ -43,18 +52,34 @@ mail: user01@external.com
mail: user02@external.com
memberofgroup: demolist@demo.iredmail.org
objectclass: mailExternalUser
</pre>
```
__IMPORTANT NOTE__: If you don't have any mail list member, Postfix will report error like below:
<pre>
```
Aug 1 15:45:42 mail postfix/smtpd[6024]: NOQUEUE: reject: RCPT from unknown[1.1.1.1]: 550 5.1.1
<it@domain1.ru>: Recipient address rejected: User unknown in virtual mailbox table; from=<test@domain1.ru>
to=<it@domain1.ru> proto=ESMTP helo=<[2.2.2.2]>
</pre>
```
__Note:__ You can restrict who can send email to this mailing list by adding LDAP attribute `accessPolicy`. For example:
<pre>
## Mail list access policies
You can restrict who can send email to this mailing list by adding LDAP attribute `accessPolicy`. For example:
```
dn: mail=demolist@demo.iredmail.org,ou=Groups,domainName=demo.iredmail.org,o=domains,dc=iredmail,dc=org
accesspolicy: domain
</pre>
Available access policies are listed here (public, domain, subdomain, membersOnly, moderatorsOnly, memebersAndModeratorsOnly): <http://www.iredmail.org/wiki/index.php?title=Install/iRedAPD/OpenLDAP#Available_access_policies>
...
```
This access restriction is implemented in iRedAPD (a simple Postfix policy
server), iRedMail has it enabled by default.
Available access policies are:
* `public`: no restrictions.
* `domain`: all users under same domain are allowed to send email to this mail list.
* `subdomain`: all users under same domain and sub-domains are allowed to send email to this mail list.
* `membersOnly`: only members of this mail list are allowd.
* `moderatorsOnly`: only moderators of this mail list are allowed.
* `memebersAndModeratorsOnly`: only members and moderators of this mail list are allowed.

View File

@ -17,7 +17,7 @@
# Third-party integrations.
* [ How to install SOGo on CentOS 6 with iRedMail (MySQL backend)](src/default/5-integrations/sogo-centos-6-iredmail-mysql.md)
* [ How to install SOGo on CentOS 6 with iRedMail (MySQL backend)](src/default/5-integrations/sogo-centos-6-mysql.md)
# Backup and Restore
@ -25,8 +25,14 @@
# Troubleshooting and Debug
* [ How to turn on debug mode in Amavisd ](src/default/9-troubleshooting/turn.on.debug.mode.in.amavisd.md)
* [ How to turn on debug mode in Dovecot](src/default/9-troubleshooting/turn.on.debug.mode.in.dovecot.md)
* [ How to turn on debug mode in OpenLDAP ](src/default/9-troubleshooting/turn.on.debug.mode.in.openldap.md)
# Frequently Asked Questions
* [ How to add an alias domain name (LDAP backend) ](src/default/99-faq/ldap.add.alias.domain.md)
* [ Howto add mail alias account (LDAP backend) ](src/default/99-faq/ldap.add.mail.alias.md)
* [ How to forward emails to other email addresses (mail forwarding) ](src/default/99-faq/ldap.add.mail.forwarding.address.md)
* [ How to add mail list account (LDAP backend) ](src/default/99-faq/ldap.add.mail.list.md)
* [ Why append timestamp in maildir path](src/default/99-faq/why.append.timestamp.in.maildir.path.md)

View File

@ -1,19 +0,0 @@
<http://www.iredmail.org/wiki/index.php?title=IRedMail/FAQ/LDAP/Add.Alias.Domain>
# How to add an alias domain name
__What an alias domain is used for?__ Let's say you have a mail domain 'example.com' hosted on your iRedMail server, if you add domain name `domain.ltd` as an alias domain of `example.com`, all emails sent to `username@domain.ltd` will be delivered to user `username@example.com`'s mailbox.
__NOTE__: With iRedAdmin-Pro, you can simply add alias domain name in domain profile page, under tab `Aliases`. Screenshot for your reference: <http://www.iredmail.org/images/iredadmin/domain_profile_alias.png>
How to add an alias domain with phpLDAPadmin:
1. Login to phpLDAPadmin (`https://[your_server]/phpldapadmin`) as LDAP root dn (cn=Manager,dc=xx,dc=xx)
* Find the LDAP object of mail domain `example.com` which you want to add alias domain in left panel of phpLDAPadmin, click the ldap object, phpLDAPadmin will show detailed LDAP attributes/values of this domain in right panel.
* Add a new LDAP attribute `domainAliasName` to this domain account, set value to `domain.ltd`. Save your change.
Now you should add addition mail address for all mail users, lists, aliases. For example, if you have mail user `user@example.com`, you should add addition email address `user@domain.ltd` for this user. Steps:
1. Find the LDAP object of mail account which you want to add addition email address in left panel of phpLDAPadmin, for example, user `user@example.com`, click the ldap object, phpLDAPadmin will show detailed LDAP attributes/values in right panel.
* Add a new LDAP attribute `shadowAddress` to this mail account, set value to `user@domain.ltd`. `WARNING`: You must user the same username part of original email address.
* Save your change.
If you have several mail accounts (mail users, lists, aliases), you have to add addition email address for them all.

View File

@ -1,15 +0,0 @@
<http://www.iredmail.org/wiki/index.php?title=IRedMail/FAQ/LDAP/Add.Mail.Forwarding.Address>
# How to forward emails to other email addresses
If you want to forward email to other email addresses, you can add value in LDAP attribute 'mailForwardingAddress' of user object.
For example, if you want to forward all emails sent to 'user@domain.ltd' to two addresses: forward@domain.ltd, user@gmail.com. Steps with phpLDAPadmin:
1. Login to phpLDAPadmin (https://[your_server]/phpldapadmin ) as LDAP root dn (cn=Manager,dc=xx,dc=xx)
* Find the LDAP object of email account which you want to forward emails in left panel of phpLDAPadmin, click the ldap object, phpLDAPadmin will show detailed LDAP attributes/values in right panel.
* Add a new LDAP attribute 'mailForwardingAddress' to this mail account, set value to __forward@domain.ltd__.
* Repeat step #3, add another email address as value of 'mailForwardingAddress': user@gmail.com.
* Save your changes. Now all emails sent to 'user@domain.ltd' will be forwarded to both forward@domain.ltd and user@gmail.com.
If you want to save a copy of forwarded email, please add 'user@domain.ltd' as addition value of LDAP attribute 'mailForwardingAddress'.
NOTE: With iRedAdmin-Pro, you can simply add forwarding addresses in user profile page, under tab "Forwarding". Screenshot for your reference: <http://www.iredmail.org/images/iredadmin/user_profile_mail_forwarding.png>

View File

@ -257,5 +257,5 @@ code { padding: 1px 5px 1px 5px; }
pre>code {
margin: 0;
border: 0;
padding: 5px 10px 5px 10px;
padding: 5px 10px 5px 0px;
}

View File

@ -0,0 +1,54 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> How to add an alias domain name (LDAP backend) </title>
<link href="../css/markdown.css" rel="stylesheet"></head>
</head>
<body>
<h1 id="how-to-add-an-alias-domain-name-ldap-backend">How to add an alias domain name (LDAP backend)</h1>
<h2 id="what-an-alias-domain-is-used-for">What an alias domain is used for?</h2>
<p>Let's say you have a mail domain <code>example.com</code> hosted on your iRedMail server,
if you add domain name <code>domain.ltd</code> as an alias domain of <code>example.com</code>, all
emails sent to <code>username@domain.ltd</code> will be delivered to user
<code>username@example.com</code>'s mailbox.</p>
<h2 id="add-alias-domain-with-iredadmin-pro">Add alias domain with iRedAdmin-Pro</h2>
<p>With iRedAdmin-Pro, you can simply add alias domain name in domain profile page,
under tab <code>Aliases</code>. Screenshot: <a href="http://www.iredmail.org/images/iredadmin/domain_profile_alias.png">http://www.iredmail.org/images/iredadmin/domain_profile_alias.png</a></p>
<h2 id="how-to-add-an-alias-domain-with-phpldapadmin">How to add an alias domain with phpLDAPadmin:</h2>
<ul>
<li>
<p>Login to phpLDAPadmin (<code>https://[your_server]/phpldapadmin</code>) as LDAP root dn
(<code>cn=Manager,dc=xx,dc=xx</code>)</p>
</li>
<li>
<p>Find the LDAP object of your mail domain which you want to add alias
domain in left panel of phpLDAPadmin, click the ldap object, phpLDAPadmin will
show detailed LDAP attributes/values of this domain in right panel.</p>
</li>
<li>
<p>Add a new LDAP attribute <code>domainAliasName</code> to this domain account, set value
to the alias domain (e.g. <code>domain.com</code>). Save your change.</p>
</li>
</ul>
<p>Now you should add addition mail address for all mail users, lists, aliases.
For example, if you have mail user <code>user@example.com</code>, you should add addition
email address <code>user@domain.ltd</code> for this user. Steps:</p>
<ul>
<li>
<p>Find the LDAP object of mail account which you want to add addition email
address in left panel of phpLDAPadmin, for example, user <code>user@example.com</code>,
click the ldap object, phpLDAPadmin will show detailed LDAP attributes/values
in right panel.</p>
</li>
<li>
<p>Add a new LDAP attribute <code>shadowAddress</code> to this mail account, set value to
<code>user@domain.ltd</code>. <strong>WARNING</strong>: You must user the same username part as
original email address.</p>
</li>
<li>
<p>Save your change.</p>
</li>
</ul>
<p>If you have several mail accounts (mail users, lists, aliases), you have to
add addition email address for them all.</p></body></html>

View File

@ -0,0 +1,38 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> Howto add mail alias account (LDAP backend) </title>
<link href="../css/markdown.css" rel="stylesheet"></head>
</head>
<body>
<h1 id="howto-add-mail-alias-account-ldap-backend">Howto add mail alias account (LDAP backend)</h1>
<ul>
<li>
<p>Log into phpLDAPadmin as LDAP root dn <code>cn=Manager</code> or <code>cn=vmailadmin</code>:<br />
<img alt="" src="http://screenshots.iredmail.googlecode.com/hg/phpldapadmin/login.png" /></p>
</li>
<li>
<p>Expand LDAP tree in left panel, click <code>Create new entry here</code> under <code>ou=Aliases</code> of your domain, and select <code>Default</code> in right panel:<br />
<img alt="" src="http://screenshots.iredmail.googlecode.com/hg/phpldapadmin/create_alias_1.png" /></p>
</li>
<li>
<p>Select object class <code>mailAlias</code> in right panel:<br />
<img alt="" src="http://screenshots.iredmail.googlecode.com/hg/phpldapadmin/create_alias_2.png" /></p>
</li>
<li>
<p>Input required fields of alias account:<br />
<img alt="" src="http://screenshots.iredmail.googlecode.com/hg/phpldapadmin/create_alias_3.png" /></p>
</li>
</ul>
<p><strong>WARNING</strong>: Attribute <code>enabledService</code> requires two values: <code>mail</code>, <code>deliver</code>.</p>
<ul>
<li>
<p>Confirm to create:<br />
<img alt="" src="http://screenshots.iredmail.googlecode.com/hg/phpldapadmin/create_alias_4.png" /></p>
</li>
<li>
<p>Add missing value of attribute <code>enabledService</code>, and you can add as many destination addresses as you want here (value of attribute <code>mailForwardingAddress</code>):<br />
<img alt="" src="http://screenshots.iredmail.googlecode.com/hg/phpldapadmin/create_alias_5.png" /></p>
</li>
</ul></body></html>

View File

@ -0,0 +1,41 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> How to forward emails to other email addresses (mail forwarding) </title>
<link href="../css/markdown.css" rel="stylesheet"></head>
</head>
<body>
<h1 id="how-to-forward-emails-to-other-email-addresses-mail-forwarding">How to forward emails to other email addresses (mail forwarding)</h1>
<h2 id="set-mail-forwarding-with-iredadmin-pro">Set mail forwarding with iRedAdmin-Pro</h2>
<p>With iRedAdmin-Pro, you can simply add mail forwarding addresses in user
profile page, under tab <code>Forwarding</code>. Screenshot: <a href="http://www.iredmail.org/images/iredadmin/user_profile_mail_forwarding.png">http://www.iredmail.org/images/iredadmin/user_profile_mail_forwarding.png</a></p>
<h2 id="set-mail-forwarding-with-phpldapadmin">Set mail forwarding with phpLDAPadmin</h2>
<p>To forward emails to other email addresses, you can add value in LDAP attribute
<code>mailForwardingAddress</code> of user object.</p>
<p>For example, if you want to forward all emails sent to <code>user@domain.ltd</code> to
two addresses: <code>forward@domain.ltd</code>, <code>user@gmail.com</code>. Steps:</p>
<ol>
<li>
<p>Login to phpLDAPadmin (https://[your_server]/phpldapadmin ) as LDAP root dn
<code>cn=Manager,dc=xx,dc=xx</code> or 'cn=vmailadmin,dc=xx,dc=xx'.</p>
</li>
<li>
<p>Find the LDAP object of email account which you want to forward emails in
left panel of phpLDAPadmin, click the ldap object, phpLDAPadmin will show you
detailed LDAP attributes/values in right panel.</p>
</li>
<li>
<p>Add a new LDAP attribute <code>mailForwardingAddress</code> to this mail account, set
value to first forwarding address <code>forward@domain.ltd</code>.</p>
</li>
<li>
<p>Repeat step #3, add another email address: <code>user@gmail.com</code>.</p>
</li>
<li>
<p>Save your changes.</p>
</li>
</ol>
<p>Now all emails sent to <code>user@domain.ltd</code> will be forwarded to both
<code>forward@domain.ltd</code> and <code>user@gmail.com</code>.</p>
<p>If you want to save a copy of forwarded email, please add 'user@domain.ltd' as addition value of LDAP attribute 'mailForwardingAddress'.</p></body></html>

View File

@ -0,0 +1,85 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> How to add mail list account (LDAP backend) </title>
<link href="../css/markdown.css" rel="stylesheet"></head>
</head>
<body>
<h1 id="how-to-add-mail-list-account-ldap-backend">How to add mail list account (LDAP backend)</h1>
<h2 id="add-mail-list-with-iredadmin-pro">Add mail list with iRedAdmin-Pro</h2>
<p>With iRedAdmin-Pro, you can easily add mail list account by click menu:
<code>Add -&gt; Mail List</code> in main navigation bar.</p>
<h2 id="add-mail-list-with-phpldapadmin">Add mail list with phpLDAPadmin</h2>
<ul>
<li>Login to phpLDAPadmin (httpS://[your_server]/phpldapadmin/)</li>
<li>Expand LDAP tree in left panel, find <code>ou=Groups</code> under your domain dn.</li>
<li>Click <code>ou=Groups</code> in left panel, then click <code>Create a child entry</code> in right
panel. <a href="http://screenshots.iredmail.googlecode.com/hg/iredmail/phpldapadmin/create_maillist_ou_groups.png">Screenshot</a></li>
<li>Choose <code>mailList</code> in <code>ObjectClasses</code> list, then click <code>Proceed</code>.</li>
<li>Select <code>mail</code> as RDN, fill necessary values of attributes:</li>
</ul>
<pre><code>dn: mail=demolist@demo.iredmail.org,ou=Groups,domainName=demo.iredmail.org,o=domains,dc=iredmail,dc=org
accountStatus: active
cn: demolist
enabledService: mail
enabledService: deliver
enabledService: displayedInGlobalAddressBook
mail: demolist@demo.iredmail.org
objectClass: mailList
</code></pre>
<p>Now switch to <code>ou=Users</code> under you domain LDAP dn in left panel.</p>
<ul>
<li>Expand <code>ou=Users</code> in left panel.</li>
<li>Find user account which you want to assign to new mail list we created above.</li>
<li>Click user account in left panel.</li>
<li>If attribute <code>memberOfGroup</code> exists in right panel:<ul>
<li>click <code>Add value</code> under it and fill mail address of our new mail list. For example: <code>demolist@demo.iredmail.org</code></li>
<li>Click <code>Update Object</code> to save settings.</li>
</ul>
</li>
<li>If attribute <code>memberOfGroup</code> doesn't exist in right panel:<ul>
<li>Click <code>Add new attribute</code> in right panel</li>
<li>Choose <code>memberOfGroup</code> in drop-down list.</li>
<li>Fill mail address of our new mail list.</li>
<li>Click <code>Update Object</code> to save settings.</li>
</ul>
</li>
</ul>
<p>You can add as many <code>memberOfGroup=xxx</code> as you want, which means this user is assigned to many mail lists.</p>
<p>Here's sample to add external users as mail list members:</p>
<pre><code>dn: memberOfGroup=demolist@demo.iredmail.org,ou=Externals,domainName=demo.iredmail.org,o=domains,dc=iredmail,dc=org
accountstatus: active
enabledservice: mail
enabledservice: deliver
mail: user01@external.com
mail: user02@external.com
memberofgroup: demolist@demo.iredmail.org
objectclass: mailExternalUser
</code></pre>
<p><strong>IMPORTANT NOTE</strong>: If you don't have any mail list member, Postfix will report error like below:</p>
<pre><code>Aug 1 15:45:42 mail postfix/smtpd[6024]: NOQUEUE: reject: RCPT from unknown[1.1.1.1]: 550 5.1.1
&lt;it@domain1.ru&gt;: Recipient address rejected: User unknown in virtual mailbox table; from=&lt;test@domain1.ru&gt;
to=&lt;it@domain1.ru&gt; proto=ESMTP helo=&lt;[2.2.2.2]&gt;
</code></pre>
<h2 id="mail-list-access-policies">Mail list access policies</h2>
<p>You can restrict who can send email to this mailing list by adding LDAP attribute <code>accessPolicy</code>. For example:</p>
<pre><code>dn: mail=demolist@demo.iredmail.org,ou=Groups,domainName=demo.iredmail.org,o=domains,dc=iredmail,dc=org
accesspolicy: domain
...
</code></pre>
<p>This access restriction is implemented in iRedAPD (a simple Postfix policy
server), iRedMail has it enabled by default.</p>
<p>Available access policies are:</p>
<ul>
<li><code>public</code>: no restrictions.</li>
<li><code>domain</code>: all users under same domain are allowed to send email to this mail list.</li>
<li><code>subdomain</code>: all users under same domain and sub-domains are allowed to send email to this mail list.</li>
<li><code>membersOnly</code>: only members of this mail list are allowd.</li>
<li><code>moderatorsOnly</code>: only moderators of this mail list are allowed.</li>
<li><code>memebersAndModeratorsOnly</code>: only members and moderators of this mail list are allowed.</li>
</ul></body></html>

View File

@ -25,7 +25,7 @@
</ul>
<h1 id="third-party-integrations">Third-party integrations.</h1>
<ul>
<li><a href="integrations/sogo-centos-6-iredmail-mysql.html"> How to install SOGo on CentOS 6 with iRedMail (MySQL backend)</a></li>
<li><a href="integrations/sogo-centos-6-mysql.html"> How to install SOGo on CentOS 6 with iRedMail (MySQL backend)</a></li>
</ul>
<h1 id="backup-and-restore">Backup and Restore</h1>
<ul>
@ -33,9 +33,21 @@
</ul>
<h1 id="troubleshooting-and-debug">Troubleshooting and Debug</h1>
<ul>
<li><a href="troubleshooting/turn.on.debug.mode.in.amavisd.html"> How to turn on debug mode in Amavisd
</a></li>
<li><a href="troubleshooting/turn.on.debug.mode.in.dovecot.html"> How to turn on debug mode in Dovecot</a></li>
<li><a href="troubleshooting/turn.on.debug.mode.in.openldap.html"> How to turn on debug mode in OpenLDAP
</a></li>
</ul>
<h1 id="frequently-asked-questions">Frequently Asked Questions</h1>
<ul>
<li><a href="faq/ldap.add.alias.domain.html"> How to add an alias domain name (LDAP backend)
</a></li>
<li><a href="faq/ldap.add.mail.alias.html"> Howto add mail alias account (LDAP backend)
</a></li>
<li><a href="faq/ldap.add.mail.forwarding.address.html"> How to forward emails to other email addresses (mail forwarding)
</a></li>
<li><a href="faq/ldap.add.mail.list.html"> How to add mail list account (LDAP backend)
</a></li>
<li><a href="faq/why.append.timestamp.in.maildir.path.html"> Why append timestamp in maildir path</a></li>
</ul></body></html>

View File

@ -9,7 +9,7 @@
<h1 id="how-to-install-sogo-on-centos-6-with-iredmail-mysql-backend">How to install SOGo on CentOS 6 with iRedMail (MySQL backend)</h1>
<h2 id="requirements">Requirements</h2>
<ul>
<li>A working iRedMail server on CentOS 6.</li>
<li>A working iRedMail server (MySQL backend) on CentOS 6.</li>
</ul>
<h2 id="install-sogo">Install SOGo</h2>
<ul>
@ -33,7 +33,7 @@ gpgcheck=0
<ul>
<li>Install SOGo and dependences:</li>
</ul>
<pre><code># yum install sogo sope49-gdl1-mysql
<pre><code># yum install sogo sope49-gdl1-mysql sogo-activesync libwbxml
</code></pre>
<h2 id="create-sql-database-to-store-sogo-data">Create SQL database to store SOGo data</h2>
@ -56,57 +56,57 @@ mysql&gt; CREATE VIEW sogo.sogo_auth (c_uid, c_name, c_password, c_cn, mail, hom
OCSSessionsFolderURL = &quot;mysql://sogo:password@localhost:3306/sogo/sogo_sessions_folder&quot;;
SOGoIMAPServer = &quot;127.0.0.1&quot;;
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;
SOGoForceExternalLoginWithEmail = YES;
SOGoAppointmentSendEMailNotifications = YES;
SOGoFoldersSendEMailNotifications YES
SOGoACLsSendEMailNotifications YES
SOGoUserSources =
SOGoUserSources =
(
{
type = sql;
id = directory;
viewURL = &quot;mysql://sogo:password@127.0.0.1:3306/sogo/sogo_view&quot;;
canAuthenticate = YES;
isAddressBook = YES;
userPasswordAlgorithm = md5;
prependPasswordScheme = YES;
//LoginFieldNames = username;
//MailFieldNames = username;
//IMAPLoginFieldName = username;
//DomainFieldName = domain;
}
{
type = sql;
id = directory;
viewURL = &quot;mysql://sogo:password@127.0.0.1:3306/sogo/sogo_view&quot;;
canAuthenticate = YES;
isAddressBook = YES;
userPasswordAlgorithm = md5;
prependPasswordScheme = YES;
}
);
</code></pre>
<h2 id="start-sogo-and-dependent-services">Start SOGo and dependent services</h2>
<pre><code>service sogod start
service httpd restart
service memcached start
</code></pre>
<h2 id="how-to-configure-client-applications">How to configure client applications</h2>
<h3 id="configure-apple-icalapp-for-calendar">Configure Apple iCal.app for calendar</h3>
<p>http://[host]/SOGo/dav/[user]/</p>
<h3 id="apple-devices">Apple Devices</h3>
<p>URL for calendar service: <code>http://[host]/SOGo/dav/[user]/</code></p>
<h2 id="todo">TODO</h2>
<h2 id="references">References:</h2>
<ul>
<li>Addition settings:</li>
</ul>
<pre><code>defaults write sogod OCSEMailAlarmsFolderURL mysql://vmail:PASSWORD@localhost:3306/vmail/sogo_alarms_folder
<pre><code>defaults write sogod OCSEMailAlarmsFolderURL mysql://sogo:password@localhost:3306/sogo/sogo_alarms_folder
defaults write sogod SOGoTimeZone &quot;Europe/Berlin&quot;
defaults write sogod SOGoAppointmentSendEMailNotifications YES
defaults write sogod SOGoFoldersSendEMailNotifications YES
defaults write sogod SOGoACLsSendEMailNotifications YES
defaults write sogod SOGoMailingMechanism smtp
defaults write sogod SOGoSMTPServer 127.0.0.1
defaults write sogod SOGoMemcachedHost 127.0.0.1
defaults write sogod SOGoDraftsFolderName Drafts
defaults write sogod SOGoSentFolderName Sent
defaults write sogod SOGoTrashFolderName Trash
defaults write sogod SOGoIMAPServer localhost
defaults write sogod SOGoPasswordChangeEnabled YES
defaults write sogod SOGoSieveScriptsEnabled YES

View File

@ -0,0 +1,16 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> How to turn on debug mode in Amavisd </title>
<link href="../css/markdown.css" rel="stylesheet"></head>
</head>
<body>
<h1 id="how-to-turn-on-debug-mode-in-amavisd">How to turn on debug mode in Amavisd</h1>
<p>In Amavisd config file <code>/etc/amavisd/amavisd.conf</code>, change <code>$log_level</code>, then restart amavis service.</p>
<pre><code>$log_level = 5; # verbosity 0..5, -d
</code></pre>
<p>If you want to debug SpamAssassin, please update <code>$sa_debug</code> also:</p>
<pre><code>$sa_debug = 1;
</code></pre></body></html>

View File

@ -0,0 +1,18 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> How to turn on debug mode in OpenLDAP </title>
<link href="../css/markdown.css" rel="stylesheet"></head>
</head>
<body>
<h1 id="how-to-turn-on-debug-mode-in-openldap">How to turn on debug mode in OpenLDAP</h1>
<p>In OpenLDAP config file <code>slapd.conf</code>, update parameter <code>loglevel</code> to value <code>256</code>, then restart OpenLDAP service.
* On RHEL/CentOS and OpenBSD, it's <code>/etc/openldap/slapd.conf</code>
* On Debian/Ubuntu, it's <code>/etc/ldap/slapd.conf</code>
* On FreeBSD, it's <code>/usr/local/etc/openldap/slapd.conf</code></p>
<pre>
loglevel 256
</pre>
<p>OpenLDAP is configured by iRedMail to log into <code>/var/log/openldap.log</code> by default.</p></body></html>

View File

@ -1,7 +0,0 @@
<http://www.iredmail.org/wiki/index.php?title=IRedMail/FAQ/Turn.On.Debug.Mode.In.Amavisd>
# Turn on debug mode in Amavisd
In `amavisd.conf`, change `$log_level`, then restart amavis service.
<pre>
$log_level = 5; # verbosity 0..5, -d
</pre>

View File

@ -1,8 +0,0 @@
<http://www.iredmail.org/wiki/index.php?title=IRedMail/FAQ/LDAP/Turn.On.Debug.Mode.In.OpenLDAP>
# Turn on debug mode in OpenLDAP
In `/etc/openldap/slapd.conf` or `/etc/ldap/slapd.conf`, change `loglevel` to 256, then restart OpenLDAP service.
<pre>
loglevel 256
</pre>
In iRedMail, OpenLDAP will log into `/var/log/openldap.log` by default.