Koozali.org: home of the SME Server

zarafa on sme 9 - critical problem

Offline pelli

  • ***
  • 66
  • +0/-0
zarafa on sme 9 - critical problem
« on: September 19, 2015, 03:04:41 PM »
Hello, i have found a critical problem in sme with zarafa and fetchmail. If the zarafa-server is down (example db reconstruction) qmail process the email and after delete it

example /var/log/qmail/current

4000000055fd5978289bc274 delivery 16866: success: [32752]_Unable_to_connect_to_zarafa_server_for_user_test,_using_socket:_'file:///var/run/zarafa'/did_0+0+2/

this is a big problem because i lost all email when zarafa-server is down.

Have any suggestion?

Thanks

guest22

Re: zarafa on sme 9 - critical problem
« Reply #1 on: September 19, 2015, 03:08:25 PM »
No immediate help, but please consider to change to SoGO.


I don't get the fetchmail part?

Offline Stefano

  • *
  • 10,894
  • +3/-0
Re: zarafa on sme 9 - critical problem
« Reply #2 on: September 19, 2015, 04:51:24 PM »
moving to SME 9.x Contribs as requested

Offline frifri

  • *
  • 108
  • +0/-0
Re: zarafa on sme 9 - critical problem
« Reply #3 on: September 20, 2015, 12:59:20 PM »
What do you have in /home/e-smith/files/users/test/.qmail ?

Offline SchulzStefan

  • *
  • 620
  • +0/-0
Re: zarafa on sme 9 - critical problem
« Reply #4 on: September 21, 2015, 09:58:44 PM »
Quote
No immediate help, but please consider to change to SoGO.

Any idea how to migrate?

stefan
And then one day you find ten years have got behind you.

Time, 1973
(Mason, Waters, Wright, Gilmour)

Offline Stefano

  • *
  • 10,894
  • +3/-0
Re: zarafa on sme 9 - critical problem
« Reply #5 on: September 22, 2015, 10:01:08 AM »
you can use imapsync to pull emails from your zarafa's imap accounts and push them into your "normal" imap mailboxes, even on the same server..

Offline SchulzStefan

  • *
  • 620
  • +0/-0
Re: zarafa on sme 9 - critical problem
« Reply #6 on: September 23, 2015, 06:15:16 PM »
stefano,

thank you for your hint.

Emails is the one thing, but what about tasks and dates? Anyway there are a few reasons to move away from zarafa... I'll give it a try and will report. Will take a while, I'm too busy right now.

stefan
And then one day you find ten years have got behind you.

Time, 1973
(Mason, Waters, Wright, Gilmour)

Offline Stefano

  • *
  • 10,894
  • +3/-0

Offline SchulzStefan

  • *
  • 620
  • +0/-0
Re: zarafa on sme 9 - critical problem
« Reply #8 on: September 24, 2015, 03:35:09 PM »
Got this already, thank you very much. I played a little around to migrate the whole zarafa-stuff to sogo and I think, I found a way. I'll write a how-to when I migrate. Maybe some other people are also interested.

stefan
And then one day you find ten years have got behind you.

Time, 1973
(Mason, Waters, Wright, Gilmour)

Offline Stefano

  • *
  • 10,894
  • +3/-0
Re: zarafa on sme 9 - critical problem
« Reply #9 on: September 24, 2015, 04:29:11 PM »
Got this already, thank you very much. I played a little around to migrate the whole zarafa-stuff to sogo and I think, I found a way. I'll write a how-to when I migrate. Maybe some other people are also interested.

stefan

it would be great, thank you in advance

Offline SchulzStefan

  • *
  • 620
  • +0/-0
Re: zarafa on sme 9 - critical problem
« Reply #10 on: September 25, 2015, 11:32:14 PM »
I gave up. No luck at all syncing emails with my mobile phone. It's a nokia e7-00. Actually it should be synced out-of-the-box with M$ activesync. In fact, the phone connects, but no emails are shown in the inbox. And yes, I added a group, gave the user a new password and added the user to the group. Didn't help. Unfortunately tail -f sogo.log, httpd/access_log, messages isn't showing errors. Contacts and calender have been synced (a few minor issues), but no emails at all. That's useless for me. Tried funambol, z-push for sogo, got stuck. I'd like to migrate from zarafa to sogo, but without getting emails on our mobiles, it's making no sense. I read in the sogo-forums it could depend on the phone. Well, it's a symbian-OS - this might be the reason. With z-push an zarafa it's syncing perfect. I'm sorry I can't help out.

stefan
And then one day you find ten years have got behind you.

Time, 1973
(Mason, Waters, Wright, Gilmour)

Offline Stefano

  • *
  • 10,894
  • +3/-0
Re: zarafa on sme 9 - critical problem
« Reply #11 on: September 26, 2015, 03:29:49 PM »
sincerely I don't understand "syncing emails".. just setup as imap and you're done.. I hope your phone is imap(s) capable

Offline SchulzStefan

  • *
  • 620
  • +0/-0
Re: zarafa on sme 9 - critical problem
« Reply #12 on: September 26, 2015, 04:09:38 PM »
That's what I tried. It's not syncing with the buildin addon of sogo.

As far as I see, one can try with the original z-push backends (http://z-push.org/download/), in this case with the imap backend, or one could try this one: https://github.com/fmbiete/Z-Push-contrib. In both cases the config.php of the imap-backend has to be configured:

1.) original one (from z-push.org)

<?php
/***********************************************
* File      :   config.php
* Project   :   Z-Push
* Descr     :   IMAP backend configuration file
*
* Created   :   27.11.2012
*
* Copyright 2007 - 2013 Zarafa Deutschland GmbH
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License, version 3,
* as published by the Free Software Foundation with the following additional
* term according to sec. 7:
*
* According to sec. 7 of the GNU Affero General Public License, version 3,
* the terms of the AGPL are supplemented with the following terms:
*
* "Zarafa" is a registered trademark of Zarafa B.V.
* "Z-Push" is a registered trademark of Zarafa Deutschland GmbH
* The licensing of the Program under the AGPL does not imply a trademark license.
* Therefore any rights, title and interest in our trademarks remain entirely with us.
*
* However, if you propagate an unmodified version of the Program you are
* allowed to use the term "Z-Push" to indicate that you distribute the Program.
* Furthermore you may use our trademarks where it is necessary to indicate
* the intended purpose of a product or service provided you use it in accordance
* with honest practices in industrial or commercial matters.
* If you want to propagate modified versions of the Program under the name "Z-Push",
* you may only do so if you have a written permission by Zarafa Deutschland GmbH
* (to acquire a permission please contact Zarafa at trademark@zarafa.com).
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program.  If not, see <http://www.gnu.org/licenses/>.
*
* Consult LICENSE file for details
************************************************/

// ************************
//  BackendIMAP settings
// ************************

// Defines the server to which we want to connect
define('IMAP_SERVER', 'localhost');

// connecting to default port (143)
define('IMAP_PORT', 143);

// best cross-platform compatibility (see http://php.net/imap_open for options)
define('IMAP_OPTIONS', '/notls/norsh');

// overwrite the "from" header if it isn't set when sending emails
// options: 'username'    - the username will be set (usefull if your login is equal to your emailaddress)
//        'domain'    - the value of the "domain" field is used
//        '@mydomain.com' - the username is used and the given string will be appended
define('IMAP_DEFAULTFROM', '');

// copy outgoing mail to this folder. If not set z-push will try the default folders
define('IMAP_SENTFOLDER', '');

// forward messages inline (default false - as attachment)
define('IMAP_INLINE_FORWARD', false);

// use imap_mail() to send emails (default) - if false mail() is used
define('IMAP_USE_IMAPMAIL', true);

/* BEGIN fmbiete's contribution r1527, ZP-319 */
// list of folders we want to exclude from sync. Names, or part of it, separated by |
// example: dovecot.sieve|archive|spam
define('IMAP_EXCLUDED_FOLDERS', '');
/* END fmbiete's contribution r1527, ZP-319 */

?>

the other one looks like this:

?php
/***********************************************
* File      :   config.php
* Project   :   Z-Push
* Descr     :   IMAP backend configuration file
*
* Created   :   27.11.2012
*
* Copyright 2007 - 2013 Zarafa Deutschland GmbH
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License, version 3,
* as published by the Free Software Foundation with the following additional
* term according to sec. 7:
*
* According to sec. 7 of the GNU Affero General Public License, version 3,
* the terms of the AGPL are supplemented with the following terms:
*
* "Zarafa" is a registered trademark of Zarafa B.V.
* "Z-Push" is a registered trademark of Zarafa Deutschland GmbH
* The licensing of the Program under the AGPL does not imply a trademark license.
* Therefore any rights, title and interest in our trademarks remain entirely with us.
*
* However, if you propagate an unmodified version of the Program you are
* allowed to use the term "Z-Push" to indicate that you distribute the Program.
* Furthermore you may use our trademarks where it is necessary to indicate
* the intended purpose of a product or service provided you use it in accordance
* with honest practices in industrial or commercial matters.
* If you want to propagate modified versions of the Program under the name "Z-Push",
* you may only do so if you have a written permission by Zarafa Deutschland GmbH
* (to acquire a permission please contact Zarafa at trademark@zarafa.com).
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program.  If not, see <http://www.gnu.org/licenses/>.
*
* Consult LICENSE file for details
************************************************/

// ************************
//  BackendIMAP settings
// ************************

// Defines the server to which we want to connect
define('IMAP_SERVER', 'localhost');

// connecting to default port (143)
define('IMAP_PORT', 143);

// best cross-platform compatibility (see http://php.net/imap_open for options)
define('IMAP_OPTIONS', '/notls/norsh');


// Mark messages as read when moving to Trash.
//      BE AWARE that you will lose the unread flag, but some mail clients do this so the Trash folder doesn't get boldened
define('IMAP_AUTOSEEN_ON_DELETE', false);


// IMPORTANT: BASIC IMAP FOLDERS [ask your mail admin]
        // We can have diferent cases (case insensitive):
        // 1.
        //      inbox
        //      sent
        //      drafts
        //      trash
        // 2.
        //      inbox
        //      common.sent
        //      common.drafts
        //      common.trash
        // 3.
        //      common.inbox
        //      common.sent
        //      common.drafts
        //      common.trash
        // 4.
        //      common
        //      common.sent
        //      common.drafts
        //      common.trash
        //
        // gmail is a special case, where the default folders are under the [gmail] prefix and the folders defined by the user are under INBOX.
        // This configuration seems to work:
        //      define('IMAP_FOLDER_PREFIX', '');
        //      define('IMAP_FOLDER_INBOX', 'INBOX');
        //      define('IMAP_FOLDER_SENT', '[Gmail]/Sent');
        //      define('IMAP_FOLDER_DRAFTS', '[Gmail]/Drafts');
        //      define('IMAP_FOLDER_TRASH', '[Gmail]/Trash');
        //      define('IMAP_FOLDER_SPAM', '[Gmail]/Spam');
        //      define('IMAP_FOLDER_ARCHIVE', '[Gmail]/All Mail');

// Since I know you won't configure this, I will raise an error unless you do.
// When configured set this to true to remove the error
define('IMAP_FOLDER_CONFIGURED', false);

// Folder prefix is the common part in your names (3, 4)
define('IMAP_FOLDER_PREFIX', '');

// Inbox will have the preffix preppend (3 & 4 to true)
define('IMAP_FOLDER_PREFIX_IN_INBOX', false);

// Inbox folder name (case doesn't matter) - (empty in 4)
define('IMAP_FOLDER_INBOX', 'INBOX');

// Sent folder name (case doesn't matter)
define('IMAP_FOLDER_SENT', 'SENT');

// Draft folder name (case doesn't matter)
define('IMAP_FOLDER_DRAFT', 'DRAFTS');

// Trash folder name (case doesn't matter)
define('IMAP_FOLDER_TRASH', 'TRASH');

// Spam folder name (case doesn't matter). Only showed as special by iOS devices
define('IMAP_FOLDER_SPAM', 'SPAM');

// Archive folder name (case doesn't matter). Only showed as special by iOS devices
define('IMAP_FOLDER_ARCHIVE', 'ARCHIVE');



// forward messages inline (default true - inlined)
define('IMAP_INLINE_FORWARD', true);

// list of folders we want to exclude from sync. Names, or part of it, separated by |
// example: dovecot.sieve|archive|spam
define('IMAP_EXCLUDED_FOLDERS', '');



// overwrite the "from" header with some value
// options:
//        ''              - do nothing, use the From header
//        'username'      - the username will be set (usefull if your login is equal to your emailaddress)
//        'domain'        - the value of the "domain" field is used
//        'sql'           - the username will be the result of a sql query. REMEMBER TO INSTALL PHP-PDO AND PHP-DATABASE
//        'ldap'          - the username will be the result of a ldap query. REMEMBER TO INSTALL PHP-LDAP!!
//        '@mydomain.com' - the username is used and the given string will be appended
define('IMAP_DEFAULTFROM', '');

// DSN: formatted PDO connection string
//    mysql:host=xxx;port=xxx;dbname=xxx
// USER: username to DB
// PASSWORD: password to DB
// OPTIONS: array with options needed
// QUERY: query to execute
// FIELDS: columns in the query
// FROM: string that will be the from, replacing the column names with the values
define('IMAP_FROM_SQL_DSN', '');
define('IMAP_FROM_SQL_USER', '');
define('IMAP_FROM_SQL_PASSWORD', '');
define('IMAP_FROM_SQL_OPTIONS', serialize(array(PDO::ATTR_PERSISTENT => true)));
define('IMAP_FROM_SQL_QUERY', "select first_name, last_name, mail_address from users where mail_address = '#username@#domain'");
define('IMAP_FROM_SQL_FIELDS', serialize(array('first_name', 'last_name', 'mail_address')));
define('IMAP_FROM_SQL_FROM', '#first_name #last_name <#mail_address>');
define('IMAP_FROM_SQL_FULLNAME', '#first_name #last_name');

// SERVER: ldap server
// SERVER_PORT: ldap port
// USER: dn to use for connecting
// PASSWORD: password
// QUERY: query to execute
// FIELDS: columns in the query
// FROM: string that will be the from, replacing the field names with the values
define('IMAP_FROM_LDAP_SERVER', 'localhost');
define('IMAP_FROM_LDAP_SERVER_PORT', '389');
define('IMAP_FROM_LDAP_USER', 'cn=zpush,ou=servers,dc=zpush,dc=org');
define('IMAP_FROM_LDAP_PASSWORD', 'password');
define('IMAP_FROM_LDAP_BASE', 'dc=zpush,dc=org');
define('IMAP_FROM_LDAP_QUERY', '(mail=#username@#domain)');
define('IMAP_FROM_LDAP_FIELDS', serialize(array('givenname', 'sn', 'mail')));
define('IMAP_FROM_LDAP_FROM', '#givenname #sn <#mail>');
define('IMAP_FROM_LDAP_FULLNAME', '#givenname #sn');



// Method used for sending mail
// mail => mail() php function
// sendmail => sendmail executable
// smtp => direct connection against SMTP
define('IMAP_SMTP_METHOD', 'mail');

global $imap_smtp_params;
// SMTP Parameters
//      mail : no params
$imap_smtp_params = array();
//      sendmail
//$imap_smtp_params = array('sendmail_path' => '/usr/bin/sendmail', 'sendmail_args' => '-i');
//      smtp
//          "host"              - The server to connect. Default is localhost.
//          "port"              - The port to connect. Default is 25.
//          "auth"              - Whether or not to use SMTP authentication. Default is FALSE.
//          "username"          - The username to use for SMTP authentication. "imap_username" for using the same username as the imap server
//          "password"          - The password to use for SMTP authentication. "imap_password" for using the same password as the imap server
//          "localhost"         - The value to give when sending EHLO or HELO. Default is localhost
//          "timeout"           - The SMTP connection timeout. Default is NULL (no timeout).
//          "verp"              - Whether to use VERP or not. Default is FALSE.
//          "debug"             - Whether to enable SMTP debug mode or not. Default is FALSE.
//          "persist"           - Indicates whether or not the SMTP connection should persist over multiple calls to the send() method.
//          "pipelining"        - Indicates whether or not the SMTP commands pipelining should be used.
//          "verify_peer"       - Require verification of SSL certificate used. Default is TRUE.
//          "verify_peer_name"  - Require verification of peer name. Default is TRUE.
//          "allow_self_signed" - Allow self-signed certificates. Requires verify_peer. Default is FALSE.
//$imap_smtp_params = array('host' => 'localhost', 'port' => 25, 'auth' => false);
// If you want to use SSL with port 25 or port 465 you must preppend "ssl://" before the hostname or IP of your SMTP server
// IMPORTANT: To use SSL you must use PHP 5.1 or later, install openssl libs and use ssl:// within the host variable
// IMPORTANT: To use SSL with PHP 5.6 you should set verify_peer, verify_peer_name and allow_self_signed
//$imap_smtp_params = array('host' => 'ssl://localhost', 'port' => 465, 'auth' => true, 'username' => 'imap_username', 'password' => 'imap_password');



// If you are using IMAP_SMTP_METHOD = mail or sendmail and your sent messages are not correctly displayed you can change this to "\n".
//   BUT, it doesn't comply with RFC 2822 and will break if using smtp method
define('MAIL_MIMEPART_CRLF', "\r\n");


// A file containing file mime types->extension mappings.
//  SELINUX users: make sure the file has a security context accesible by your apache/php-fpm process
define('SYSTEM_MIME_TYPES_MAPPING', '/etc/mime.types');


// Use BackendCalDAV for Meetings. You cannot hope to get that functionality working without a caldav backend.
define('IMAP_MEETING_USE_CALDAV', false);

And as pre-requisite is libawl-php required. No idea where to get this...

Anyway - the mailbox on the phone is defined as M$ Active-Exchange, in the logs I see the connect, but it isn't syncing. Maybe I have to modify the paths to the imap folders. The port should also be 993 on SME...

And then one day you find ten years have got behind you.

Time, 1973
(Mason, Waters, Wright, Gilmour)

Offline Stefano

  • *
  • 10,894
  • +3/-0
Re: zarafa on sme 9 - critical problem
« Reply #13 on: September 26, 2015, 04:14:43 PM »
sogo has nothing to do with imap, meaning that it uses Mailboxex, but it has not its own imap daemon..

regarding emails, you just need to configure your phone email client to work with an imap account.. you'd do it with or without zarafa or sogo..

in other words, sogo is not involved in any way in email syncing with your phone.. it is needed just to sync contacts and calendars.

can you share here a link to your phone model? I saw something here some time ago regarding problems with a nokia phone (is it still a nokia one or a M$ one?)

Offline SchulzStefan

  • *
  • 620
  • +0/-0
Re: zarafa on sme 9 - critical problem
« Reply #14 on: September 26, 2015, 09:48:31 PM »
Here's the link: http://nds1.nokia.com/phones/files/guides/Nokia_E7-00_UG_en.pdf It's a Nokia - OS Symbian (I'm some kind of old fashioned...)

Right now we use zarafa. The phones are configured to connect to a M$ Exchange Server. Connected via z-push, that works perfect. The phones are configured with the email account of the user, the user, the password, the server and the domain. That's it. Maybe I'm wrong, but that's the way SOGo promises.

In my understanding the clue should be to set up an email account with active-sync on the mobile. That's it. In this case you don't have to configure imap or what ever...
And then one day you find ten years have got behind you.

Time, 1973
(Mason, Waters, Wright, Gilmour)