View Issue Details

IDProjectCategoryView StatusLast Update
0003311SOGoGUIpublic2015-10-23 15:46
Reporterwar Assigned Toludovic  
PrioritynormalSeverityblockReproducibilityhave not tried
Status closedResolutionno change required 
PlatformIntel amd64 (Apple)OSUbuntuOS Version15.04
Product Version2.2.10 
Summary0003311: Writing and sending Mail impossible
Description

Selecting Write (Mail) opens an empty window (in Firefox 40)
URL: http://<myserver>/SOGo/so/wolf/Mail/0/compose
/var/log/sogo/sogo.log
...
62.40.177.65 - - [17/Aug/2015:22:08:54 GMT] "GET /SOGo/so/wolf/Mail/0/compose HTTP/1.1" 302 0/0 0.360 - - 0
(END)

In Chromium the window displays correctly
URL: http://<myserver>/SOGo/so/wolf/Mail/0/folderDrafts/newDraft1439841762-1/edit

Send -> Dialog with a Warning:
Warning
cannot send message: (smtp) authentication failure
[OK]

/var/log/sogo/sogo.log
...
62.40.177.65 - - [17/Aug/2015:22:03:16 GMT] "POST /SOGo/so/wolf/Mail/0/folderDrafts/newDraft1439841762-1/send HTTP/1.1" 200 86/200 0.479 - - 0
(END)

Steps To Reproduce
  • Install a fresh Ubuntu server edition
  • setup Postfix, Dovecot (mail_stack_delivery), Postgresql, Amavis (clamav, spamassassin)
  • install sogo (from repository)
  • configure according to the documentation found online (SOGo Installation Guide.pdf)
  • create postgres user-db
  • add mail user
  • logon
  • write mail
Additional Information

/etc/sogo.conf
{
ImapDebugEnabled = NO;
SOGoProfileURL = "postgresql://sogo:<pwd>@127.0.0.1:5432/sogo/sogo_user_profile";
OCSFolderInfoURL = "postgresql://sogo:<pwd>@127.0.0.1:5432/sogo/sogo_folder_info";
OCSSessionsFolderURL = "postgresql://sogo:<pwd>@127.0.0.1:5432/sogo/sogo_sessions_folder";
OCSEMailAlarmsFolderURL = "postgresql://sogo:<pwd>@127.0.0.1:5432/sogo/sogo_alarms_folder";
SOGoMailDomain = "<mydomain>";
SOGoLanguage = English;
SOGoAppointmentSendEMailNotifications = YES;
SOGoMailingMechanism = smtp;
SOGoSMTPServer = 127.0.0.1;
SOGoSMTPAuthenticationType = PLAIN;
SOGoTimeZone = Europe/Vienna;
SOGoSentFolderName = Sent;
SOGoTrashFolderName = Trash;
SOGoDraftsFolderName = Drafts;
SOGoIMAPServer = "imap://localhost:143";
SOGoSieveServer = "sieve://localhost:4190";
SOGoIMAPAclConformsToIMAPExt = YES;
SOGoVacationEnabled = NO;
SOGoForwardEnabled = NO;
SOGoSieveScriptsEnabled = NO;
SOGoFirstDayOfWeek = 1;
SOGoMailMessageCheck = every_10_minutes;
SOGoMailAuxiliaryUserAccountsEnabled = NO;
SOGoSuperUsernames = ( "administrator" );
SOGoUserSources =
(
{
canAuthenticate = YES;
displayName = "SOGo Users";
id = users;
isAddressBook = NO;
userPasswordAlgorithm = md5;
type = sql;
viewURL = "postgresql://sogo:<pwd>@127.0.0.1:5432/sogo/sogo_users";
}
);
SOGoPageTitle = "<mytitle>";
SOGoFaviconRelativeURL = "http://&lt;myurl>/favicon.ico&quot;;
WOWorkersCount = 3;
}

SOGoIMAPServer = "imap://localhost:143/?tls=YES";
SOGoSieveServer = "sieve://localhost:4190?tls=YES";

as well as

WOWorkersCount = 3

do not work (TLS -> no connection, WOW.. only 1)

TagsNo tags attached.

Relationships

related to 0003315 closedludovic With Firefox 40.0.2 on Windows if I try to open a compose/reply Windows in the webinterface a window opens but stays empty 

Activities

Christian Mack

Christian Mack

2015-08-18 09:42

developer   ~0008827

WOWorkersCount in sogo.conf is overwritten in the startup script with the setting of /etc/default/sogo option PREFORK.

And why did you install SOGo Version 2.2.10?

You should add the invers repos and get a recent 2.3.1

war

war

2015-08-18 21:34

reporter   ~0008828

  1. Thanks for the reply
  2. I will try to use PREFORK instead. Will comment on results
  3. SOGo 2.2.10 is in the standard repo of Ubuntu 15.04. So I presumed it would work.
  4. Why is your repo not forwarded to Canonical? (From a conservative point of view, I am reluctant to add any external repos if not neccessary. I will try this as well though if recommended)
Christian Mack

Christian Mack

2015-08-19 08:37

developer   ~0008829

You can run 2.2.10, but not with the full functionality provided now.
My question wasn't meant as an offence and your reasoning is absolutely valid.
I didn't know Ubuntu 15.04 had this version "on board".

Every distribution decides on its own, when they freeze their packages. This is no decision Invers is responsible for or can influence a lot. Because of that Invers provides its own repositories.

2.2.10 is more than 9 months old now.
There where a lot of improvements and bugs fixed since then.
E.g. if you want to use ActiveSync, then you have no chance with that version, also MAPI support is ways better in the current version.

But don't get me wrong, it is up to you, which Version you run.

war

war

2015-08-19 18:15

reporter   ~0008833

I wasn't offended (not likely to be anyway).

Installed Version 2.3.1 (@shiva.inverse 201507231602)
also installed sope4.9-gdl1-postgresql (as this is not automatically installed. There is a preference for postgres in the sogo.conf thus I was a little surprised)

deleted all postgresql tables and recreated sogo_view (as described in the manual)

Configured SOGo in such a way (adapted the provided config template):

{
/* ***** Main SOGo configuration file **

  • *
  • Since the content of this file is a dictionary in OpenStep plist format, *
  • the curly braces enclosing the body of the configuration are mandatory. *
  • See the Installation Guide for details on the format. *
  • *
  • C and C++ style comments are supported. *
  • *
  • ~sogo/GNUstep/Defaults/.GNUstepDefaults has precedence over this file, *
  • make sure to move it away to avoid unwanted parameter overrides. *
  • *
  • 2015-08-19 war
  • // commented lines are left to defaults
  • **/

    / Database configuration (mysql:// or postgresql://) /
    SOGoProfileURL = "postgresql://sogo:<password>@localhost:5432/sogo/sogo_user_profile";
    OCSFolderInfoURL = "postgresql://sogo:<password>@localhost:5432/sogo/sogo_folder_info";
    OCSSessionsFolderURL = "postgresql://sogo:<password>@localhost:5432/sogo/sogo_sessions_folder";
    //OCSEMailAlarmsFolderURL = "postgresql://sogo:<password>@localhost:5432/sogo/sogo_alarms_folder";

    / Mail /
    //SOGoDraftsFolderName = Drafts;
    //SOGoSentFolderName = Sent;
    //SOGoTrashFolderName = Trash;
    SOGoIMAPServer = localhost;
    SOGoSieveServer = sieve://127.0.0.1:4190;
    SOGoSMTPServer = 127.0.0.1;
    SOGoMailDomain = "<mydomain>";
    SOGoLanguage = English;

    SOGoMailingMechanism = smtp;
    //SOGoForceExternalLoginWithEmail = NO;
    //SOGoMailSpoolPath = /var/spool/sogo;
    //NGImap4ConnectionStringSeparator = "/";

    / Notifications /
    //SOGoAppointmentSendEMailNotifications = NO; / maybe YES /
    //SOGoACLsSendEMailNotifications = NO;
    //SOGoFoldersSendEMailNotifications = NO;

    / Authentication /
    //SOGoPasswordChangeEnabled = YES;

    / SQL authentication example /
    /* These database columns MUST be present in the view/table:

  • c_uid - will be used for authentication - it's the username or username@domain.tld)
  • c_name - which can be identical to c_uid - will be used to uniquely identify entries
  • c_password - password of the user, plain-text, md5 or sha encoded for now
  • c_cn - the user's common name - such as "John Doe"
  • mail - the user's mail address
  • See the installation guide for more details
    */
    SOGoUserSources =
    (
    {
    type = sql;
    id = directory;
    viewURL = "postgresql://sogo:<password>@localhost:5432/sogo/sogo_view";
    canAuthenticate = YES;
    isAddressBook = YES;
    userPasswordAlgorithm = md5;
    }
    );

    / Web Interface /
    SOGoPageTitle = "<mydomain>";
    SOGoFaviconRelativeURL = "<URL-to-my-favicon>";
    SOGoVacationEnabled = YES;
    SOGoForwardEnabled = YES;
    SOGoSieveScriptsEnabled = YES;
    SOGoMailAuxiliaryUserAccountsEnabled = YES;
    //SOGoTrustProxyAuthentication = NO;

    / General /
    SOGoLanguage = English;
    SOGoTimeZone = Europe/Vienna;
    SOGoCalendarDefaultRoles = (
    PublicDAndTViewer,
    ConfidentialDAndTViewer
    );
    SOGoSuperUsernames = (<user1>, <user2>); // This is an array - keep the parens!
    //SxVMemLimit = 384;
    //WOPidFile = "/var/run/sogo/sogo.pid";
    SOGoMemcachedHost = "/var/run/memcached.sock";

    / Debug /
    //SOGoDebugRequests = YES;
    //SoDebugBaseURL = YES;
    //ImapDebugEnabled = YES;
    //LDAPDebugEnabled = YES;
    //PGDebugEnabled = YES;
    //MySQL4DebugEnabled = YES;
    //SOGoUIxDebugEnabled = YES;
    //WODontZipResponse = YES;
    //WOLogFile = /var/log/sogo/sogo.log;
    }

In Firefox:

In Chromium:

Concluding:
It works generally but not in case of Firefox.

n.b.: The favicon is not honoured in this version.

Any ideas how I can get Firefox to work?

war

war

2015-08-19 18:39

reporter   ~0008834

tried to enter the URL from Chromium into Firefox and sending succeeds (just the window does not close)

So I conclude, this is a redirection problem in FF (as 302 indicates).

Here is the configuration of the virtual host in Apache (2.4)

<VirtualHost *:80>
Servername <myserver>
DocumentRoot /usr/lib/GNUstep/SOGo/WebServerResources/
ServerSignature Off
ErrorLog /var/log/apache2/error.log
LogLevel emerg
Customlog /var/log/apache2/<myserver>.log vhost_combined

Alias /SOGo.woa/WebServerResources/ /usr/lib/GNUstep/SOGo/WebServerResources/
Alias /SOGo/WebServerResources/ /usr/lib/GNUstep/SOGo/WebServerResources/
AliasMatch /SOGo/so/ControlPanel/Products/(.)/Resources/(.) /usr/lib/GNUstep/SOGo/$1.SOGo/Resources/$2

<Directory /usr/lib/GNUstep/SOGo/>
AllowOverride None
Order deny,allow
Allow from all
Require all granted
</Directory>

<LocationMatch "^/SOGo/so/ControlPanel/Products/.UI/Resources/..(jpg|png|gif|css|js)">
SetHandler default-handler
</LocationMatch>

ProxyRequests Off
SetEnv proxy-nokeepalive 1
ProxyPreserveHost On
ProxyPass /SOGo http://127.0.0.1:20000/SOGo retry=0

<Proxy http://127.0.0.1:20000/SOGo>
RequestHeader set "x-webobjects-server-port" "80"
RequestHeader set "x-webobjects-server-name" "<myserver>"
RequestHeader set "x-webobjects-server-url" "http://&lt;myserver>&quot;
RequestHeader set "x-webobjects-server-protocol" "HTTP/1.0"
RequestHeader set "x-webobjects-remote-host" %{REMOTE_HOST}e env=REMOTE_HOST
AddDefaultCharset UTF-8
Order allow,deny
Allow from all
</Proxy>

We use mod_rewrite to pass remote address to the SOGo proxy.

The remote address will appear in SOGo's log files and in the X-Forward

header of emails.

RewriteEngine On
RewriteRule ^/SOGo/(.)$ /SOGo/$1 [env=REMOTE_HOST:%{REMOTE_ADDR},PT]
Redirect permanent /index.html http://&lt;myserver>/SOGo
</VirtualHost>
<VirtualHost
:8800>

this virtualhost is only for carddav on Mac and not tested very well

RewriteEngine Off
ProxyRequests Off
SetEnv proxy-nokeepalive 1
ProxyPreserveHost On
ProxyPassInterpolateEnv On
ProxyPass /principals http://127.0.0.1:20000/SOGo/dav/ interpolate
ProxyPass /SOGo http://127.0.0.1:20000/SOGo interpolate
ProxyPass / http://127.0.0.1:20000/SOGo/dav/ interpolate
<Location />
Order allow,deny
Allow from all
</Location>
<Proxy http://127.0.0.1:20000>
RequestHeader set "x-webobjects-server-port" "8800"
RequestHeader set "x-webobjects-server-name" "<myserver>:8800"
RequestHeader set "x-webobjects-server-url" "https://&lt;myserver>:8800&quot;
RequestHeader set "x-webobjects-server-protocol" "HTTP/1.0"
RequestHeader set "x-webobjects-remote-host" "127.0.0.1"
AddDefaultCharset UTF-8
</Proxy>
ErrorLog /var/log/apache2/error.log
LogLevel emerg
Customlog /var/log/apache2/<myserver>.log vhost_combined
</virtualhost>

I presume the Vhost on 8800 is not required at all
Other than that, I still could need a little help in adjusting this file.

inf7

inf7

2015-08-21 08:09

reporter   ~0008843

I have a similar problem. If I have the Firefox plugin Ghostery enabled all popup window Sogo empty. It only helps the plugin to disable completely. Whitelist is not enough.

war

war

2015-08-21 08:46

reporter   ~0008844

@inf: Thanks. This is not a SOGo issue.

Disabling Ghostery -> Send Window is displayed correctly (in fact any popup window that creates a new item, e.g. Calendar or Contact)

From my point of view: This issue can be closed and considered resolved.

Issue History

Date Modified Username Field Change
2015-08-17 20:18 war New Issue
2015-08-18 09:42 Christian Mack Note Added: 0008827
2015-08-18 21:34 war Note Added: 0008828
2015-08-19 08:37 Christian Mack Note Added: 0008829
2015-08-19 18:15 war Note Added: 0008833
2015-08-19 18:39 war Note Added: 0008834
2015-08-21 07:49 Christian Mack Relationship added related to 0003315
2015-08-21 08:09 inf7 Note Added: 0008843
2015-08-21 08:46 war Note Added: 0008844
2015-10-23 15:46 ludovic Status new => closed
2015-10-23 15:46 ludovic Assigned To => ludovic
2015-10-23 15:46 ludovic Resolution open => no change required