0

I've just upgraded a Zentyal instance from 4.1 to 5.0.1. After upgrade, SOGo doesn't let users log in anymore. Users can access other Zentyal services like shares and domain logon, but SOGo refuses the same credentials.

I've tried copying over the /etc/sogo/sogo.conf from the old installation to the new one. I had also tried purging the new sogo and zentyal-sogo packages, then installing them again, but that lead to a worse situation (no Mysql connection and the whole /etc/sogo/sogo.conf commented out).

In the /var/log/sogo/sogo.log file I get:

Jan 31 09:40:41 sogod [13184]: <0x0x561c14f67ce0[LDAPSource]> <NSException: 0x561c155e19b0> NAME:LDAPException REASON:operation bind failed: Invalid credentials (0x31) INFO:{"error_code" = 49; login = "cn=direzione di agape,cn=users,dc=ufficio,dc=lan"; }
Jan 31 09:40:41 sogod [13184]: SOGoRootPage Login from '192.168.1.253' for user 'direzione' might not have worked - password policy: 65535  grace: -1  expire: -1  bound: 0
Jan 31 09:40:41 sogod [13184]: 192.168.1.253 "POST /SOGo/connect HTTP/1.1" 403 34/64 0.028 - - 0

Here is what I believe is the relevant part of my current sogo.conf (the one that worked in the old version):

/* LDAP authentication */
  SOGoUserSources = (
      {
          type = ldap;
          id = sambaLogin;
          displayName = "SambaLogin";
          canAuthenticate = YES;
          CNFieldName = cn;
          IDFieldName = cn;
          UIDFieldName = sAMAccountName;
          hostname = "ldap://127.0.0.1";
          baseDN = "DC=ufficio,DC=lan";
          bindDN = "CN=zentyal-mail-barth,CN=Users,DC=ufficio,DC=lan";
          bindPassword = "mWaByi97SfgLAWZQ49GS";
          bindFields = (sAMAccountName, mail);
          filter = "(mail='*')";
          MailFieldNames = (mail, otherMailbox);
      },
      {
          type = ldap;
          id = sambaShared;
          displayName = "Shared Addressbook";
          canAuthenticate = NO;
          isAddressBook = YES;
          CNFieldName = cn;
          IDFieldName = mail;
          UIDFieldName = mail;
          hostname = "ldap://127.0.0.1";
          baseDN = "DC=ufficio,DC=lan";
          bindDN = "CN=zentyal-mail-barth,CN=Users,DC=ufficio,DC=lan";
          bindPassword = "mWaByi97SfgLAWZQ49GS";
          filter = "((NOT isCriticalSystemObject='TRUE') AND     (mail=\'*\') AND (NOT objectClass=contact))";
          MailFieldNames = (mail, otherMailbox);
      },
      {
          type = ldap;
          id = sambaContacts;
          displayName = "Shared Contacts";
          canAuthenticate = NO;
          isAddressBook = YES;
          CNFieldName = cn;
          IDFieldName = mail;
          UIDFieldName = mail;
          hostname = "ldap://127.0.0.1";
          baseDN = "DC=ufficio,DC=lan";
          bindDN = "CN=zentyal-mail-barth,CN=Users,DC=ufficio,DC=lan";
          bindPassword = "mWaByi09SfgLAWZQ49GS";
          filter = "((((objectClass=person) AND (objectClass=contact)     AND ((uidNumber>=2000) OR (mail=\'*\'))) AND (NOT isCriticalSystemObject='TRUE') AND (NOT showInAdvancedViewOnly='TRUE') AND (NOT uid=Guest)) OR (((objectClass=group) AND (gidNumber>=2000)) AND (NOT isCriticalSystemObject='TRUE') AND (NOT showInAdvancedViewOnly='TRUE')))";
          mapping = {
              displayname = ("cn");
          };
          MailFieldNames = (mail, otherMailbox);
      }
  );

  /* Web Interface */
  SOGoPageTitle = "Zentyal Webmail";
  SOGoVacationEnabled = NO;
  SOGoForwardEnabled = YES;
  SOGoSieveScriptsEnabled = YES;

Can you help me spot the problem?

EDIT: Looking here, if I understand the bug report correctly, it seems I need to edit my sogo.conf because of a change introduced in SOGo some time between version 3.0.2 and version 3.2.4. That could be the culprit, because Zentyal 4.1 bundled SOGo 2.3.2, while Zentyal 5 bundles SOGo 3.2.10. However, even assuming that's the problem, I don't understand how I should edit my sogo.conf...

EDIT 2: I've found this command that could shed some light, if only I were able to understand its output... I suppose it shows what SOGo understands by reading the config file, but I don't know the meaning of most settings:

root@barth:~# sogo-tool dump-defaults all
{
    DAVParserDebugProp = NO;
    "GNUSTEP_LOCAL_ADMIN_APPS" = "/usr/local/lib/GNUstep/Applications";
    "GNUSTEP_LOCAL_ADMIN_TOOLS" = "/usr/local/sbin";
    "GNUSTEP_LOCAL_APPS" = "/usr/local/lib/GNUstep/Applications";
    "GNUSTEP_LOCAL_DOC" = "/usr/local/share/GNUstep/Documentation";
    "GNUSTEP_LOCAL_DOC_INFO" = "/usr/local/share/info";
    "GNUSTEP_LOCAL_DOC_MAN" = "/usr/local/share/man";
    "GNUSTEP_LOCAL_HEADERS" = "/usr/local/include/GNUstep";
    "GNUSTEP_LOCAL_LIBRARIES" = "/usr/local/lib";
    "GNUSTEP_LOCAL_LIBRARY" = "/usr/local/lib/GNUstep";
    "GNUSTEP_LOCAL_ROOT" = "/usr/Local";
    "GNUSTEP_LOCAL_TOOLS" = "/usr/local/bin";
    "GNUSTEP_LOCAL_USERS_DIR" = "/home";
    "GNUSTEP_LOCAL_WEB_APPS" = "/usr/local/lib/GNUstep/WebApplications";
    "GNUSTEP_MAKEFILES" = "/usr/share/GNUstep/Makefiles";
    "GNUSTEP_NETWORK_ADMIN_APPS" = "/usr/local/lib/GNUstep/Applications";
    "GNUSTEP_NETWORK_ADMIN_TOOLS" = "/usr/local/sbin";
    "GNUSTEP_NETWORK_APPS" = "/usr/local/lib/GNUstep/Applications";
    "GNUSTEP_NETWORK_DOC" = "/usr/local/share/GNUstep/Documentation";
    "GNUSTEP_NETWORK_DOC_INFO" = "/usr/local/share/info";
    "GNUSTEP_NETWORK_DOC_MAN" = "/usr/local/share/man";
    "GNUSTEP_NETWORK_HEADERS" = "/usr/local/include/GNUstep";
    "GNUSTEP_NETWORK_LIBRARIES" = "/usr/local/lib";
    "GNUSTEP_NETWORK_LIBRARY" = "/usr/local/lib/GNUstep";
    "GNUSTEP_NETWORK_ROOT" = "/usr/Network";
    "GNUSTEP_NETWORK_TOOLS" = "/usr/local/bin";
    "GNUSTEP_NETWORK_USERS_DIR" = "/home";
    "GNUSTEP_NETWORK_WEB_APPS" = "/usr/lib/GNUstep/WebApplications";
    "GNUSTEP_SYSTEM_ADMIN_APPS" = "/usr/lib/GNUstep/Applications";
    "GNUSTEP_SYSTEM_ADMIN_TOOLS" = "/usr/sbin";
    "GNUSTEP_SYSTEM_APPS" = "/usr/lib/GNUstep/Applications";
    "GNUSTEP_SYSTEM_DOC" = "/usr/share/GNUstep/Documentation";
    "GNUSTEP_SYSTEM_DOC_INFO" = "/usr/share/info";
    "GNUSTEP_SYSTEM_DOC_MAN" = "/usr/share/man";
    "GNUSTEP_SYSTEM_HEADERS" = "/usr/include/GNUstep";
    "GNUSTEP_SYSTEM_LIBRARIES" = "/usr/lib";
    "GNUSTEP_SYSTEM_LIBRARY" = "/usr/lib/GNUstep";
    "GNUSTEP_SYSTEM_ROOT" = "/usr/System";
    "GNUSTEP_SYSTEM_TOOLS" = "/usr/bin";
    "GNUSTEP_SYSTEM_USERS_DIR" = "/home";
    "GNUSTEP_SYSTEM_WEB_APPS" = "/usr/lib/GNUstep/WebApplications";
    "GNUSTEP_USER_CONFIG_FILE" = ".GNUstep.conf";
    "GNUSTEP_USER_DEFAULTS_DIR" = "GNUstep/Defaults";
    "GNUSTEP_USER_DIR" = GNUstep;
    "GNUSTEP_USER_DIR_ADMIN_APPS" = "GNUstep/Applications/Admin";
    "GNUSTEP_USER_DIR_ADMIN_TOOLS" = "GNUstep/Tools/Admin";
    "GNUSTEP_USER_DIR_APPS" = "GNUstep/Applications";
    "GNUSTEP_USER_DIR_DOC" = "GNUstep/Library/Documentation";
    "GNUSTEP_USER_DIR_DOC_INFO" = "GNUstep/Library/Documentation/info";
    "GNUSTEP_USER_DIR_DOC_MAN" = "GNUstep/Library/Documentation/man";
    "GNUSTEP_USER_DIR_HEADERS" = "GNUstep/Library/Headers";
    "GNUSTEP_USER_DIR_LIBRARIES" = "GNUstep/Library/Libraries";
    "GNUSTEP_USER_DIR_LIBRARY" = "GNUstep/Library";
    "GNUSTEP_USER_DIR_TOOLS" = "GNUstep/Tools";
    "GNUSTEP_USER_DIR_WEB_APPS" = "GNUstep/WebApplications";
    GSLocale = "it_CH.UTF-8";
    ImapDebugEnabled = YES;
    LDAPDebugEnabled = YES;
    MySQL4DebugEnabled = YES;
    NGImap4ConnectionGroupIdPrefix = "$";
    NGImap4ConnectionStringSeparator = "/";
    NGImap4DisableIMAP4Pooling = YES;
    NGLogDefaultAppenderClass = NGLogStderrAppender;
    NGLogDefaultLogEventFormatterClass = NGLogEventDetailedFormatter;
    NGLogDefaultLogLevel = INFO;
    "NGObjWeb_doc_" = "NSUserDefaults for NGObjWeb";
    NGUseUTF8AsURLEncoding = YES;
    NSAMPMDesignation = (
  "",
  ""
    );
    NSCurrencySymbol = "Fr.";
    NSDateFormatString = "%A %d %B %Y";
    NSDateTimeOrdering = DMYH;
    NSDecimalDigits = (
  0,
  1,
  2,
  3,
  4,
  5,
  6,
  7,
  8,
  9
    );
    NSDecimalSeparator = ".";
    NSEarlierTimeDesignations = (
  prima,
  passato,
  fa
    );
    NSFormalName = Italiano;
    NSHourNameDesignations = (
  (
      0,
      mezzanotte
  ),
  (
      12,
      mezzogiorno
  ),
  (
      10,
      mattina
  ),
  (
      14,
      pomeriggio
  ),
  (
      19,
      sera
  )
    );
    NSInternationalCurrencyString = "'";
    NSLanguageCode = ITA;
    NSLanguageName = SwitzerlandItalian;
    NSLanguages = (
  SwitzerlandItalian,
  Italian,
  English
    );
    NSLaterTimeDesignations = (
  dopo,
  prossimo
    );
    NSMonthNameArray = (
  gennaio,
  febbraio,
  marzo,
  aprile,
  maggio,
  giugno,
  luglio,
  agosto,
  settembre,
  ottobre,
  novembre,
  dicembre
    );
    NSNegativeCurrencyFormatString = "EUR-9,999.00";
    NSNextDayDesignations = (
  domani
    );
    NSNextNextDayDesignations = (
  "il giorno seguente"
    );
    NSParentContext = Default;
    NSPositiveCurrencyFormatString = "EUR9,999.00";
    NSPriorDayDesignations = (
  ieri
    );
    NSShortDateFormatString = "%d. %m. %y";
    NSShortMonthNameArray = (
  gen,
  feb,
  mar,
  apr,
  mag,
  giu,
  lug,
  ago,
  set,
  ott,
  nov,
  dic
    );
    NSShortTimeDateFormatString = "%d %b %Y %H:%M";
    NSShortWeekDayNameArray = (
  dom,
  lun,
  mar,
  mer,
  gio,
  ven,
  sab
    );
    NSThisDayDesignations = (
  oggi
    );
    NSThousandsSeparator = "'";
    NSTimeDateFormatString = "%a %d %b %Y %T %Z";
    NSTimeFormatString = "%T";
    NSWeekDayNameArray = (
  domenica,
  "luned\U00EC",
  "marted\U00EC",
  "mercoled\U00EC",
  "gioved\U00EC",
  "venerd\U00EC",
  sabato
    );
    NSYearMonthWeekDesignations = (
  anno,
  mese,
  settimana
    );
    OCSFolderInfoURL = "mysql://sogo:AGJBm5JQ@127.0.0.1:3306/sogo/sogo_folder_info";
    OCSSessionsFolderURL = "mysql://sogo:AGJBm5JQ@127.0.0.1:3306/sogo/sogo_sessions_folder";
    PGDebugEnabled = YES;
    SOGoACLsSendEMailNotifications = NO;
    SOGoAddressBookDAVAccessEnabled = YES;
    SOGoAlternateAvatar = none;
    SOGoAnimationMode = normal;
    SOGoAppointmentSendEMailNotifications = YES;
    SOGoCacheCleanupInterval = "300.0";
    SOGoCalendarCategories = (
  Customer,
  Calls,
  Favorites,
  Meeting,
  Ideas,
  Miscellaneous,
  Birthday,
  Anniversary,
  Vacation,
  Travel,
  Projects,
  Suppliers,
  Gifts,
  Clients,
  Issues,
  Business,
  Holidays,
  Personal,
  Status,
  Competition,
  "Follow up",
  "Public Holiday"
    );
    SOGoCalendarCategoriesColors = {
  Anniversary = "#CCCCCC";
  Birthday = "#CCCCCC";
  Business = "#CCCCCC";
  Calls = "#FFCC33";
  Clients = "#CCCCCC";
  Competition = "#CCCCCC";
  Customer = "#CCCCCC";
  Favorites = "#CCCCCC";
  "Follow up" = "#CCCCCC";
  Gifts = "#CCCCCC";
  Holidays = "#CCCCCC";
  Ideas = "#CCCCCC";
  Issues = "#CCCCCC";
  Meeting = "#CCCCCC";
  Miscellaneous = "#CCCCCC";
  Personal = "#CCCCCC";
  Projects = "#CCCCCC";
  "Public Holiday" = "#CCCCCC";
  Status = "#CCCCCC";
  Suppliers = "#CCCCCC";
  Travel = "#CCCCCC";
  Vacation = "#CCCCCC";
    };
    SOGoCalendarDAVAccessEnabled = YES;
    SOGoCalendarDefaultReminder = NONE;
    SOGoCalendarEventsDefaultClassification = PUBLIC;
    SOGoCalendarShouldDisplayWeekend = YES;
    SOGoCalendarTasksDefaultClassification = PUBLIC;
    SOGoDayEndTime = 18;
    SOGoDayStartTime = 8;
    SOGoDebugRequests = YES;
    SOGoDefaultCalendar = selected;
    SOGoDraftsFolderName = Drafts;
    SOGoEnableDomainBasedUID = NO;
    SOGoEncryptionKey = MySOGoEncryptionKey;
    SOGoExternalAvatarsEnabled = YES;
    SOGoFirstDayOfWeek = 0;
    SOGoFirstWeekOfYear = January1;
    SOGoForceExternalLoginWithEmail = YES;
    SOGoForwardEnabled = YES;
    SOGoFreeBusyDefaultInterval = (
  7,
  7
    );
    SOGoGravatarEnabled = NO;
    SOGoIMAPServer = "127.0.0.1:143";
    SOGoJunkFolderName = Junk;
    SOGoLDAPContactInfoAttribute = description;
    SOGoLDAPQueryLimit = 0;
    SOGoLDAPQueryTimeout = 0;
    SOGoLanguage = English;
    SOGoLoginModule = Mail;
    SOGoLongDateFormat = "%A, %B %d, %Y";
    SOGoMailAutoSave = 5;
    SOGoMailComposeFontSize = 0;
    SOGoMailComposeMessageType = html;
    SOGoMailCustomFromEnabled = YES;
    SOGoMailDisplayRemoteInlineImages = never;
    SOGoMailDomain = "ufficio.lan";
    SOGoMailLabelsColors = {
  "$label1" = (
      Important,
      "#FF0000"
  );
  "$label2" = (
      Work,
      "#FF9900"
  );
  "$label3" = (
      Personal,
      "#009900"
  );
  "$label4" = (
      "To Do",
      "#3333FF"
  );
  "$label5" = (
      Later,
      "#993399"
  );
    };
    SOGoMailListViewColumnsOrder = (
  Thread,
  Flagged,
  Attachment,
  Subject,
  From,
  Unread,
  Date,
  Priority,
  Size
    );
    SOGoMailMessageForwarding = inline;
    SOGoMailReplyPlacement = below;
    SOGoMailSignaturePlacement = below;
    SOGoMailSpoolPath = "/var/spool/sogo";
    SOGoMailingMechanism = smtp;
    SOGoMemcachedHost = localhost;
    SOGoPageTitle = "Zentyal Webmail";
    SOGoPasswordChangeEnabled = YES;
    SOGoProfileURL = "mysql://sogo:AGJBm5JQ@127.0.0.1:3306/sogo/sogo_user_profile";
    SOGoRefreshViewCheck = manually;
    SOGoRefreshViewIntervals = (
  1,
  2,
  5,
  10,
  20,
  30,
  60
    );
    SOGoSMTPServer = "127.0.0.1:25";
    SOGoSearchMinimumWordLength = 2;
    SOGoSelectedAddressBook = collected;
    SOGoSentFolderName = Sent;
    SOGoShortDateFormat = "%d-%b-%y";
    SOGoSieveFolderEncoding = "UTF-7";
    SOGoSieveScriptsEnabled = YES;
    SOGoSieveServer = "sieve://127.0.0.1:4190";
    SOGoSubscriptionFolderFormat = "%{FolderName} (%{UserName} <%{Email}>)";
    SOGoSupportedLanguages = (
  Arabic,
  Basque,
  BrazilianPortuguese,
  Catalan,
  ChineseChina,
  ChineseTaiwan,
  Croatian,
  Czech,
  Danish,
  Dutch,
  English,
  Finnish,
  French,
  German,
  Hebrew,
  Hungarian,
  Icelandic,
  Italian,
  Latvian,
  Lithuanian,
  Macedonian,
  NorwegianBokmal,
  NorwegianNynorsk,
  Polish,
  Portuguese,
  Russian,
  Serbian,
  Slovak,
  Slovenian,
  SpanishArgentina,
  SpanishSpain,
  Swedish,
  TurkishTurkey,
  Ukrainian,
  Welsh
    );
    SOGoTimeFormat = "%H:%M";
    SOGoTimeZone = "Europe/Rome";
    SOGoTrashFolderName = Trash;
    SOGoUIxDebugEnabled = YES;
    SOGoUserSources = (
  {
      CNFieldName = cn;
      IDFieldName = cn;
      MailFieldNames = (
    mail,
    otherMailbox
      );
      UIDFieldName = sAMAccountName;
      baseDN = "DC=ufficio,DC=lan";
      bindDN = "CN=zentyal-mail-barth,CN=Users,DC=ufficio,DC=lan";
      bindFields = (
    sAMAccountName,
    mail
      );
      bindPassword = mWaByi97SfgLAWZQ49GS;
      canAuthenticate = YES;
      displayName = SambaLogin;
      filter = "(mail='*')";
      hostname = "ldap://127.0.0.1";
      id = sambaLogin;
      type = ldap;
  },
  {
      CNFieldName = cn;
      IDFieldName = mail;
      MailFieldNames = (
    mail,
    otherMailbox
      );
      UIDFieldName = mail;
      baseDN = "DC=ufficio,DC=lan";
      bindDN = "CN=zentyal-mail-barth,CN=Users,DC=ufficio,DC=lan";
      bindPassword = mWaByi97SfgLAWZQ49GS;
      canAuthenticate = NO;
      displayName = "Shared Addressbook";
      filter = "((NOT isCriticalSystemObject='TRUE') AND (mail='*') AND (NOT objectClass=contact))";
      hostname = "ldap://127.0.0.1";
      id = sambaShared;
      isAddressBook = YES;
      type = ldap;
  },
  {
      CNFieldName = cn;
      IDFieldName = mail;
      MailFieldNames = (
    mail,
    otherMailbox
      );
      UIDFieldName = mail;
      baseDN = "DC=ufficio,DC=lan";
      bindDN = "CN=zentyal-mail-barth,CN=Users,DC=ufficio,DC=lan";
      bindPassword = mWaByi97SfgLAWZQ49GS;
      canAuthenticate = NO;
      displayName = "Shared Contacts";
      filter = "((((objectClass=person) AND (objectClass=contact) AND ((uidNumber>=2000) OR (mail='*'))) AND (NOT isCriticalSystemObject='TRUE') AND (NOT showInAdvancedViewOnly='TRUE') AND (NOT uid=Guest)) OR (((objectClass=group) AND (gidNumber>=2000)) AND (NOT isCriticalSystemObject='TRUE') AND (NOT showInAdvancedViewOnly='TRUE')))";
      hostname = "ldap://127.0.0.1";
      id = sambaContacts;
      isAddressBook = YES;
      mapping = {
    displayname = (
        cn
    );
      };
      type = ldap;
  }
    );
    SOGoVacationEnabled = NO;
    SOGoWebAccessEnabled = YES;
    SOGoXSRFValidationEnabled = NO;
    SOGoZipPath = "/usr/bin/zip";
    SoClassRegistryDebugEnabled = NO;
    SoDebugBaseURL = YES;
    SoDebugKeyLookup = NO;
    SoDebugProductLoading = NO;
    SoDebugProductRegistry = NO;
    SoDebugRequestClassification = NO;
    SoDebugTraversal = NO;
    SoDefaultWebDAVPropertyNames = (
  "{DAV:}creationdate",
  "{DAV:}getcontentlength",
  "{DAV:}getlastmodified",
  "{DAV:}getetag",
  "{DAV:}resourcetype",
  "{DAV:}getcontenttype",
  "{DAV:}displayname",
  "{DAV:}href",
  "{http://apache.org/dav/props/}executable"
    );
    SoLogSecurityDeclarations = NO;
    SoOFSDebugAuthLookup = NO;
    SoOFSDebugFactory = NO;
    SoOFSDebugNegotiate = NO;
    SoOFSDebugPlistObject = NO;
    SoOFSDebugRestore = NO;
    SoOFSResourceManagerDebugEnabled = NO;
    SoOFSWebMethodDebugEnabled = NO;
    SoObjCClassDebugEnabled = NO;
    SoObjectDAVDispatcherDebugEnabled = NO;
    SoObjectDataSourceDebugEnabled = NO;
    SoObjectMethodDispatcherDebugEnabled = NO;
    SoObjectRequestHandlerDebugEnabled = NO;
    SoObjectSOAPDispatcherDebugEnabled = NO;
    SoObjectXmlRpcDispatcherDebugEnabled = NO;
    SoPageInvocationDebugEnabled = NO;
    SoPreferredNamespacePrefixes = {
  "DAV:" = D;
  "http://apache.org/dav/props/" = ap;
  "http://schemas.microsoft.com/exchange/" = X;
  "http://schemas.microsoft.com/hotmail/" = hm;
  "http://schemas.microsoft.com/mapi/proptag/" = pt;
  "http://webdav.org/cadaver/custom-properties/" = cdv;
  "http://www.ietf.org/internet-drafts/draft-ietf-calsch-many-xcal-01.txt" = xcal;
  "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" = xul;
  "http://www.skyrix.com/od/binding" = var;
  "http://www.skyrix.com/od/constant" = const;
  "http://www.skyrix.com/od/javascript" = js;
  "http://www.w3.org/1999/02/22-rdf-syntax-ns#" = RDF;
  "http://www.w3.org/1999/XSL/Transform" = xsl;
  "http://www.w3.org/1999/xhtml" = html;
  "http://www.w3.org/1999/xlink" = xlink;
  "http://www.w3.org/TR/REC-html40" = html4;
  "http://www.wapforum.org/DTD/wml_1.2.xml" = wml;
  "urn:schemas:calendar:" = C;
  "urn:schemas:contacts:" = A;
    };
    SoProductResourceManagerDebugEnabled = NO;
    SoRedirectToDefaultMethods = YES;
    SoRendererDebugEnabled = NO;
    SoRequestDispatcherRules = (
  "context.soRequestType='WebDAV'  => renderer = 'SoWebDAVRenderer' ; high",
  "context.soRequestType='XML-RPC' => renderer = 'SoXmlRpcRenderer' ; high",
  "context.soRequestType='SOAP'    => renderer = 'SoSOAPRenderer' ;   high",
  "*true* => renderer = 'SoDefaultRenderer' ; fallback",
  "request.isSoSOAPRequest=YES   => dispatcher = 'SoObjectSOAPDispatcher'",
  "request.isSoWebDAVRequest=YES => dispatcher = 'SoObjectWebDAVDispatcher'",
  "request.isSoXmlRpcRequest=YES => dispatcher = 'SoObjectXmlRpcDispatcher'",
  "*true* => dispatcher = 'SoObjectMethodDispatcher'; fallback",
  "request.isSoSOAPRequest=YES   => requestType = 'SOAP'",
  "request.isSoWebDAVRequest=YES => requestType = 'WebDAV'",
  "request.isSoXmlRpcRequest=YES => requestType = 'XML-RPC'",
  "*true*                        => requestType = 'METHOD'; fallback",
  "request.isSoWebDAVRequest=YES => useAcquisition = NO",
  "headers.translate='f'         => useAcquisition = NO; high",
  "method='GET'                  => useAcquisition = YES; low",
  "method='HEAD'                 => useAcquisition = YES; low",
  "method='POST'                 => useAcquisition = YES; low",
  "*true*                        => useAcquisition = NO; fallback"
    );
    SoSecurityManagerDebugEnabled = NO;
    SoWebDAVDefaultAllowMethods = (
  GET,
  HEAD,
  POST,
  OPTIONS,
  MKCOL,
  MKCALENDAR,
  DELETE,
  PUT,
  LOCK,
  UNLOCK,
  COPY,
  MOVE,
  REPORT
    );
    SoWebDAVDetectionMethods = (
  OPTIONS,
  MKCOL,
  MKCALENDAR,
  PROPFIND,
  PROPPATCH,
  DELETE,
  PUT,
  LOCK,
  UNLOCK,
  COPY,
  MOVE,
  SEARCH,
  NOTIFY,
  POLL,
  SUBSCRIBE,
  UNSUBSCRIBE,
  BCOPY,
  BDELETE,
  BMOVE,
  BPROPFIND,
  BPROPPATCH
    );
    SoWebDAVDisableCrossHostMoveCheck = NO;
    SoWebDAVFormatOutput = NO;
    SxVMemLimit = 384;
    WOAdaptor = WOHttpAdaptor;
    WOAdaptorLogPath = "";
    WOAdditionalAdaptors = (
    );
    WOApplicationBaseURL = "/WebObjects";
    WOApplicationSuffix = ".woa";
    WOAutoOpenInBrowser = NO;
    WOCGIAdaptorURL = "http://localhost/cgi-bin/WebObjects";
    WOCachingEnabled = YES;
    WOComponentExtensions = (
  wo
    );
    WOComponentLoadWOOFiles = NO;
    WOComponentRequestHandlerKey = wo;
    WOCompoundElementPool = NO;
    WOContextClass = WOContext;
    WOCoreOnApplicationException = NO;
    WOCoreOnAwakeComponentInCtxDealloc = NO;
    WOCoreOnHTTPAdaptorException = NO;
    WOCoreOnRecursiveSubcomponents = NO;
    WOCoreOnXmlRpcFault = NO;
    WODebugActions = NO;
    WODebugComponentAwake = NO;
    WODebugComponentDefinition = NO;
    WODebugComponentLookup = NO;
    WODebugCursor = NO;
    WODebugHttpTransaction = NO;
    WODebugKeyPathAssociation = NO;
    WODebugResourceLookup = NO;
    WODebugStaticLinkProcessing = NO;
    WODebugTakeValues = NO;
    WODebugZipResponse = NO;
    WODebuggingEnabled = NO;
    WODefaultLanguages = (
    );
    WODefaultResourceManager = WOResourceManager;
    WODefaultSessionTimeOut = 3600;
    WODescriptiveElementIDs = NO;
    WODirectActionRequestHandlerKey = x;
    WODontZipResponse = YES;
    WOEnableComponentsWithoutClasses = NO;
    WOExpirationTimeInterval = 120;
    WOFormAlwaysPassDown = YES;
    WOFrameworksBaseURL = "/WebObjects/Frameworks";
    WOGenerateMissingResourceLinks = NO;
    WOHTTPAdaptorCapitalizeHeaders = YES;
    WOHttpAdaptorForkCount = 0;
    WOHttpAdaptorReceiveTimeout = 120;
    WOHttpAdaptorSendTimeout = 120;
    "WOHttpAdaptor_LogStream" = NO;
    WOHttpAllowHost = (
    );
    WOHttpTransactionLoggerConfig = {
  Appenders = (
      {
    Class = NGLogStdoutAppender;
    Formatter = {
        Class = NGLogEventDetailedFormatter;
    };
      }
  );
    };
    WOHttpTransactionUseSimpleParser = NO;
    WOIncludeCommentsInResponse = YES;
    WOIsRedirectionEnabled = NO;
    WOKeyPathAssociationsCacheSize = 200;
    WOListenQueueSize = 5;
    WOLogComponents = NO;
    WOLogDefaultsOnStartup = NO;
    WOLogFile = "/var/log/sogo/sogo.log";
    WOLogPageCache = NO;
    WOLogScriptDealloc = NO;
    WOLogScriptInit = NO;
    WOLogScriptKVC = NO;
    WOLogXmlRpcSelectorMapping = NO;
    WOMessageUseUTF8 = YES;
    WONoProxySuffixes = (
    );
    WONoSelectionString = WONoSelectionString;
    WOOutputValidationEnabled = NO;
    WOPageCacheSize = 30;
    WOPageRefreshOnBacktrack = YES;
    WOPageRequestHandlerDebugEnabled = NO;
    WOParsersUseUTF8 = YES;
    WOPermanentPageCacheSize = 30;
    WOPidFile = "/var/run/sogo/sogo.pid";
    WOPort = "127.0.0.1:20000";
    WOProfileApplication = NO;
    WOProfileComponents = NO;
    WOProfileDirectActionRequestHandler = NO;
    WOProfileElements = NO;
    WOProfileHttpAdaptor = NO;
    WOProfileLoading = NO;
    WOProfileResponse = NO;
    WOProjectSearchPath = (
    );
    WORedirectURISafetySuffix = "/view/view/view/view";
    WOResourceRequestHandlerKey = y;
    WOResourceURLAssociationDebugEnabled = NO;
    WORunMultithreaded = NO;
    WOSMTPHost = mail;
    WOSendMail = "/usr/lib/sendmail";
    WOSessionStore = WOServerSessionStore;
    WOSimpleHTTPParserDebugEnabled = NO;
    WOSimpleHTTPParserFileIOBoundary = 16384;
    WOSimpleHTTPParserHeavyDebugEnabled = NO;
    WOSimpleHTTPParserMaxUploadSizeInKB = 262144;
    WOStatsStylesheetName = "WOStats.xsl";
    WOSubmitButtonEnableValueSync = NO;
    WOUseGlobalCookiePath = YES;
    WOUseRelativeURLs = YES;
    WOValueAssociationsCacheSize = 200;
    WOWatchDogRequestTimeout = 10;
    WOWorkerThreadCount = 0;
    WOWorkersCount = 1;
    WOxAssociationClassMapping = {
  "OGo:bind" = WOKeyPathAssociation;
  "OGo:bool" = WOBoolAssociation;
  "OGo:label" = WOLabelAssociation;
  "OGo:path" = SoLookupAssociation;
  "OGo:script" = WOScriptAssociation;
  "OGo:url" = WOResourceURLAssociation;
  "OGo:value" = WOValueAssociation;
  "http://www.skyrix.com/od/binding" = WOKeyPathAssociation;
  "http://www.skyrix.com/od/constant" = WOValueAssociation;
  "http://www.skyrix.com/od/javascript" = WOScriptAssociation;
  "http://www.skyrix.com/od/so-lookup" = SoLookupAssociation;
    };
    WOxBuilderClasses = (
  WOxTalElemBuilder,
  WOxControlElemBuilder,
  WOxMiscElemBuilder,
  WOxHTMLElemBuilder,
  WOxXULElemBuilder,
  WExCalElemBuilder,
  WExDnDElemBuilder,
  WExExtElemBuilder,
  WOxExtElemBuilder,
  WOxComponentElemBuilder
    );
    WOxComponentElemBuilderDebugEnabled = NO;
    "WOxElemBuilder_LogAssociationCreation" = NO;
    "WOxElemBuilder_LogAssociationMapping" = NO;
    WOxFileExtensions = (
  wox,
  xtmpl,
  xhtml
    );
    WOxLogBuilderQueue = NO;
}

EDIT 3: I've tried purging SOGo and installing it again, then activating it again in the Zentyal control panel. This time Zentyal configured SOGo MySQL connection correctly, so that at least SOGo starts up, but the login problem is still there.

EDIT 4: I've added one more line from the logfile above, maybe it helps

Lucio Crusca
  • 420
  • 3
  • 12
  • 33

1 Answers1

0

I couldn't believe the solution was such a no brainer.

  1. Activate samba debug log in /etc/samba/smb.conf by setting

    log level = 1 auth:5 winbind:5

  2. Make Samba aware of the new configuration

    # smbcontrol all reload-config

  3. Monitor the /var/log/samba/samba.log file with

    # tail -f /var/log/samba/samba.log

  4. Try logging in with SOGo, and look at the samba log file

    [2018/01/31 09:57:52.412134, 2] ../source4/auth/sam.c:226(authsam_account_ok) sam_account_ok: Account for user 'direzione' password expired!.

  5. Reset the password, or disable expiry with:

    # samba-tool user setexpiry direzione --noexpiry

  6. (Optional) Get rid of password expiry for everyone and other fancy password features:

    # samba-tool domain passwordsettings set --complexity=off

    # samba-tool domain passwordsettings set --history-length=0

    # samba-tool domain passwordsettings set --min-pwd-age=0

    # samba-tool domain passwordsettings set --max-pwd-age=0

So the problem wasn't SOGo at all.

Lucio Crusca
  • 420
  • 3
  • 12
  • 33