[SOGo] SOGo database schema
Good morning, all. OK, SOGo is the only working CalDAV / CardDAV server with an acceptable level of quality, at least to me, in the standard Debian repository. The two absolute requirements for me are LDAP authentication and a working user interface over https. So I have to use it, fair enough. By the way, if right now, when reading this, your mind comes up with nice repositories on GitHub or somewhere else, where I can download xxx or yyy, just stop and read again. I want to stick to a standard Debian compatible repository, this is not negotiable. Unfortunately, every time I have a look into the database schema, it is a shame, and I don't see any improvements over the years. First, the tables prefixes - seriously, what is the point of this, remove it. The tables should not be named sogo_xxx ? We are not any more in the 80s, when you were only able to use one database on a hosting provider. At least, make this an option, and not the default case. Second, the column prefixes - Why all the columns are called c_xxx, there is no point behind this except it is annoying and reduce queries readability. Do you have a dinosaur programmer in your team that advertise this as a poor way to avoid errors ? For these two "features", trust unit test, static code analysis and continuous integration to detect errors, not programming practices from the 70s. Third, why the table sogo_folder_info replicates the credentials of the database in each record ? (columns c_location, c_quick_location, c_acl_location) Even if you wanted to have multiple database, the credentials should not be stored in clear text in the database. This is both a security issue and the worst database design I have seen so far...just remove this feature. Fourth, in the same table, what are the columns c_path1, c_path2, c_path3 ??? If your database was properly designed, you wouldn't need these artefacts. For 2022, can you hire a database administrator to redesign your database schema ? Otherwise, I wish the whole team a happy new year. Andre Rodier. -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Avoid duplicate emails in the sent folder
Hello, I have a webmail program, that I cannot configure to not save sent emails in the Sent folder. My emails to the SOGo team don't seem to reach the mailing list anymore. So, I have no other choice to think the problem differently, and _maybe_ use Dovecot to fix this issue. Moreover, I think this could be useful for other email clients. First, I have tried to use Sieve, but no success so far: -- imapsieve_mailbox4_name = * imapsieve_mailbox4_from = Sent imapsieve_mailbox4_causes = APPEND, COPY imapsieve_mailbox4_after = file:/var/lib/dovecot/sieve/sent- checks.sieve -- And this sieve script: -- Message-ID header. require [ "variables", "environment", "duplicate", "imapsieve" ]; […] if duplicate :seconds 10 { discard; } -- Otherwise, can I configure dovecot in a certain way, for instance create a virtual Sent folder. This would not save the email when appended, but still returns the list of sent emails ? But this is not working. Any idea? Thanks for your help! André -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Copy to the sent folder
Dear SOGo developers, I am still very happy with the SOGo software, it is working very well so far. However, does any one is able to answer this simple question, please ? It is not so much to ask, is it ? Thanks a lot! André On Sun, 2021-03-28 at 20:42 +0100, André Rodier wrote: > Hello all, > > When I read the SOGo source code, I can see that the copy in the Sent > folder seems to be optional (sendMailAndCopyToSent: (BOOL) > copyToSent;) > > How can we set a value for all users in the configuration file, > please > ? > > Thanks, > André > -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Copy to the sent folder
Hello all, When I read the SOGo source code, I can see that the copy in the Sent folder seems to be optional (sendMailAndCopyToSent: (BOOL) copyToSent;) How can we set a value for all users in the configuration file, please ? Thanks, André -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Mails page not accessible
Hello, Joerg, You are absolutely right. I am testing SOGo on Debian Bullseye. I downgrade the library, and the mail page is working again. I will follow the debian bug, albeit it could be more related to SOGo. Thanks, André On Wed, 2020-11-18 at 13:42 +0100, Joerg Schmauder wrote: > helloandre, > > i have the same issue with sogo 4.3.2-1 (debian package) on debian > testing (bullseye). maybe you are also on debian? the problem > occured > after updating the package libxmlsec1-openssl (from 1.2.28 to > 1.2.30). i > filed a bug report over at debian: > > https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=975049 > > best regards, > joerg > > > Am 12.11.20 um 08:30 schrieb André Rodier (an...@rodier.me): > > On Wed, 2020-11-11 at 19:27 +0100, Lars Liedtke wrote: > > > Hey, > > > > > > it seems to me, that you have no imap server configured (or I am > > > missing > > > something). > > > > > > But If you have no IMAP (or POP) Server configured, where should > > > SOGo > > > take the existing mails from. > > > > > > Additionally maybe you could provide logs, from the time when you > > > are > > > calling the mail page. > > > > > > They should be clarifying, and when not to you, maybe to one > > > reading > > > this list. > > > > > > Cheers > > > > > > Lars > > Thanks, Lars. > > > > I have attached the full configuration and the sogo logs. > > > > I can access calendars, contacts and preferences page without > > issue. > > > > Kind regards, > > André > > > > > > > Am 11.11.20 um 06:52 schrieb André Rodier (an...@rodier.me): > > > > Hello, > > > > > > > > Can I have some support or even links to development or > > > > internal > > > > documentation, please? > > > > > > > > Thanks. > > > > > > > > 8 Nov 2020 17:08:51 André Rodier : > > > > > > > > > Hello, > > > > > > > > > > I have installed SOGo 4.3, with PostgreSQL. I have these > > > > > tables > > > > > created > > > > > by SOGo when starting: > > > > > > > > > > - sogo_alarms_folder > > > > > - sogo_folder_info > > > > > - sogo_sessions_folder > > > > > - sogo_user_profile > > > > > - sogo_users > > > > > > > > > > When I login to the system, I have this error message: > > > > > > > > > > > An error occurred during object publishing > > > > > > the requested object could > not be found! > > > > > However, the calendar, contacts and preferences pages are > > > > > accessible. > > > > > > > > > > This is my configuration: > > > > > > > > > > { > > > > >SOGoProfileURL = > > > > > "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_user_profile" > > > > > ; > > > > >OCSFolderInfoURL = > > > > > "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_folder_info"; > > > > >OCSSessionsFolderURL = > > > > > "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_sessions_fold > > > > > er"; > > > > >OCSEMailAlarmsFolderURL = > > > > > "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_alarms_folder > > > > > "; > > > > > > > > > >SOGoSMTPAuthenticationType = plain; > > > > >SOGoSMTPServer = "smtp.homebox.website"; > > > > >SOGoTrashFolderName = Trash; > > > > >SOGoDraftsFolderName = Drafts; > > > > >SOGoJunkFolderName = Junk; > > > > >SOGoSentFolderName = Sent; > > > > >SOGoUserSources = ( > > > > > { > > > > >id = public; > > > > >type = ldap; > > > > >CNFieldName = cn; > > > > >IDFieldName = cn; > > > > >UIDFieldName = uid; > > > > >bindFields = (cn, uid, mail); > > > > >baseDN = "ou=users,dc=homebox,dc=website"; > > > > >scope = SUB; > > > > >bindDN = "cn=readonly > > > > > account,ou=users,dc=homebox,dc=website"; > > > > >
Re: [SOGo] Mails page not accessible
On Wed, 2020-11-11 at 19:27 +0100, Lars Liedtke wrote: > Hey, > > it seems to me, that you have no imap server configured (or I am > missing > something). > > But If you have no IMAP (or POP) Server configured, where should SOGo > take the existing mails from. > > Additionally maybe you could provide logs, from the time when you are > calling the mail page. > > They should be clarifying, and when not to you, maybe to one reading > this list. > > Cheers > > Lars Thanks, Lars. I have attached the full configuration and the sogo logs. I can access calendars, contacts and preferences page without issue. Kind regards, André > Am 11.11.20 um 06:52 schrieb André Rodier (an...@rodier.me): > > Hello, > > > > Can I have some support or even links to development or internal > > documentation, please? > > > > Thanks. > > > > 8 Nov 2020 17:08:51 André Rodier : > > > > > Hello, > > > > > > I have installed SOGo 4.3, with PostgreSQL. I have these tables > > > created > > > by SOGo when starting: > > > > > > - sogo_alarms_folder > > > - sogo_folder_info > > > - sogo_sessions_folder > > > - sogo_user_profile > > > - sogo_users > > > > > > When I login to the system, I have this error message: > > > > > > > An error occurred during object publishing > > > > the requested object could > not be found! > > > However, the calendar, contacts and preferences pages are > > > accessible. > > > > > > This is my configuration: > > > > > > { > > > SOGoProfileURL = > > > "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_user_profile"; > > > OCSFolderInfoURL = > > > "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_folder_info"; > > > OCSSessionsFolderURL = > > > "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_sessions_folder"; > > > OCSEMailAlarmsFolderURL = > > > "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_alarms_folder"; > > > > > > SOGoSMTPAuthenticationType = plain; > > > SOGoSMTPServer = "smtp.homebox.website"; > > > SOGoTrashFolderName = Trash; > > > SOGoDraftsFolderName = Drafts; > > > SOGoJunkFolderName = Junk; > > > SOGoSentFolderName = Sent; > > > SOGoUserSources = ( > > > { > > > id = public; > > > type = ldap; > > > CNFieldName = cn; > > > IDFieldName = cn; > > > UIDFieldName = uid; > > > bindFields = (cn, uid, mail); > > > baseDN = "ou=users,dc=homebox,dc=website"; > > > scope = SUB; > > > bindDN = "cn=readonly > > > account,ou=users,dc=homebox,dc=website"; > > > bindPassword = xx; > > > canAuthenticate = YES; > > > displayName = "Users"; > > > hostname = "ldap.homebox.website"; > > > isAddressBook = YES; > > > bindAsCurrentUser = NO; > > > passwordPolicy = NO; > > > mapping = { > > > mozillasecondemail = "intlMailAddr"; > > > }; > > > } > > > ); > > > > > > SOGoDebugRequests = YES; > > > SoDebugBaseURL = YES; > > > ImapDebugEnabled = YES; > > > LDAPDebugEnabled = YES; > > > PGDebugEnabled = YES; > > > SOGoUIxDebugEnabled = YES; > > > WODontZipResponse = YES; > > > WOLogFile = /var/log/sogo/sogo.log; > > > } > > > > > > I have attached the logs from /var/log/sogo/sogo.log > > > > > > Thanks for your insights. > > > > -- > --- > punkt.de GmbH > Lars Liedtke > .infrastructure > > Kaiserallee 13a > 76133 Karlsruhe > > Tel. +49 721 9109 500 > https://infrastructure.punkt.de > i...@punkt.de > > AG Mannheim 108285 > Geschäftsführer: Jürgen Egeling, Daniel Lienert, Fabian Stein > -- users@sogo.nu https://inverse.ca/sogo/listsNov 08 17:05:59 sogod [49624]: version 4.3.2 -- starting Nov 08 17:05:59 sogod [49624]: vmem size check enabled: shutting down app when vmem > 384 MB. Currently at 83 MB Nov 08 17:05:59 sogod [49624]: <0x0x56006fb58760[SOGoProductLoader]> SOGo products loaded from '/usr/lib/GNUstep/SOGo': Nov 08 17:05:59 sogod [49624]: <0x0x56006fb58760[SOGoProductLoader]> Mailer.SOGo, CommonUI.SOGo, SchedulerUI.SOGo, MailPartViewers.SOGo, PreferencesUI.SOGo, Appointment
Re: [SOGo] Mails page not accessible
Hello, Can I have some support or even links to development or internal documentation, please? Thanks. 8 Nov 2020 17:08:51 André Rodier : > Hello, > > I have installed SOGo 4.3, with PostgreSQL. I have these tables created > by SOGo when starting: > > - sogo_alarms_folder > - sogo_folder_info > - sogo_sessions_folder > - sogo_user_profile > - sogo_users > > When I login to the system, I have this error message: > >> An error occurred during object publishing >> the requested object could > not be found! > > However, the calendar, contacts and preferences pages are accessible. > > This is my configuration: > > { > SOGoProfileURL = > "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_user_profile"; > OCSFolderInfoURL = > "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_folder_info"; > OCSSessionsFolderURL = > "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_sessions_folder"; > OCSEMailAlarmsFolderURL = > "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_alarms_folder"; > > SOGoSMTPAuthenticationType = plain; > SOGoSMTPServer = "smtp.homebox.website"; > SOGoTrashFolderName = Trash; > SOGoDraftsFolderName = Drafts; > SOGoJunkFolderName = Junk; > SOGoSentFolderName = Sent; > SOGoUserSources = ( > { > id = public; > type = ldap; > CNFieldName = cn; > IDFieldName = cn; > UIDFieldName = uid; > bindFields = (cn, uid, mail); > baseDN = "ou=users,dc=homebox,dc=website"; > scope = SUB; > bindDN = "cn=readonly account,ou=users,dc=homebox,dc=website"; > bindPassword = xx; > canAuthenticate = YES; > displayName = "Users"; > hostname = "ldap.homebox.website"; > isAddressBook = YES; > bindAsCurrentUser = NO; > passwordPolicy = NO; > mapping = { > mozillasecondemail = "intlMailAddr"; > }; > } > ); > > SOGoDebugRequests = YES; > SoDebugBaseURL = YES; > ImapDebugEnabled = YES; > LDAPDebugEnabled = YES; > PGDebugEnabled = YES; > SOGoUIxDebugEnabled = YES; > WODontZipResponse = YES; > WOLogFile = /var/log/sogo/sogo.log; > } > > I have attached the logs from /var/log/sogo/sogo.log > > Thanks for your insights. > -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Mails page not accessible
Hello, I have installed SOGo 4.3, with PostgreSQL. I have these tables created by SOGo when starting: - sogo_alarms_folder - sogo_folder_info - sogo_sessions_folder - sogo_user_profile - sogo_users When I login to the system, I have this error message: > An error occurred during object publishing > the requested object could > not be found! However, the calendar, contacts and preferences pages are accessible. This is my configuration: { SOGoProfileURL = "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_user_profile"; OCSFolderInfoURL = "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_folder_info"; OCSSessionsFolderURL = "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_sessions_folder"; OCSEMailAlarmsFolderURL = "postgresql://sogo:***@127.0.0.1:5432/sogo/sogo_alarms_folder"; SOGoSMTPAuthenticationType = plain; SOGoSMTPServer = "smtp.homebox.website"; SOGoTrashFolderName = Trash; SOGoDraftsFolderName = Drafts; SOGoJunkFolderName = Junk; SOGoSentFolderName = Sent; SOGoUserSources = ( { id = public; type = ldap; CNFieldName = cn; IDFieldName = cn; UIDFieldName = uid; bindFields = (cn, uid, mail); baseDN = "ou=users,dc=homebox,dc=website"; scope = SUB; bindDN = "cn=readonly account,ou=users,dc=homebox,dc=website"; bindPassword = xx; canAuthenticate = YES; displayName = "Users"; hostname = "ldap.homebox.website"; isAddressBook = YES; bindAsCurrentUser = NO; passwordPolicy = NO; mapping = { mozillasecondemail = "intlMailAddr"; }; } ); SOGoDebugRequests = YES; SoDebugBaseURL = YES; ImapDebugEnabled = YES; LDAPDebugEnabled = YES; PGDebugEnabled = YES; SOGoUIxDebugEnabled = YES; WODontZipResponse = YES; WOLogFile = /var/log/sogo/sogo.log; } I have attached the logs from /var/log/sogo/sogo.log Thanks for your insights. -- users@sogo.nu https://inverse.ca/sogo/listsNov 08 17:05:59 sogod [49624]: version 4.3.2 -- starting Nov 08 17:05:59 sogod [49624]: vmem size check enabled: shutting down app when vmem > 384 MB. Currently at 83 MB Nov 08 17:05:59 sogod [49624]: <0x0x56006fb58760[SOGoProductLoader]> SOGo products loaded from '/usr/lib/GNUstep/SOGo': Nov 08 17:05:59 sogod [49624]: <0x0x56006fb58760[SOGoProductLoader]> Mailer.SOGo, CommonUI.SOGo, SchedulerUI.SOGo, MailPartViewers.SOGo, PreferencesUI.SOGo, Appointments.SOGo, AdministrationUI.SOGo, ContactsUI.SOGo, Contacts.SOGo, MailerUI.SOGo, MainUI.SOGo Nov 08 17:05:59 sogod [49624]: [so-product-registry] could not load product: MailPartViewers Nov 08 17:05:59 sogod [49624]: [so-product-registry] could not load product: MailerUI Nov 08 17:05:59 sogod [49624]: All products loaded - current memory usage at 91 MB Nov 08 17:05:59 sogod [49624]: <0x0x56006fbd49e0[WOWatchDog]> listening on 127.0.0.1:2 Nov 08 17:05:59 sogod [49624]: <0x0x56006fbd49e0[WOWatchDog]> watchdog process pid: 49624 Nov 08 17:05:59 sogod [49624]: <0x0x7fe47044c200[WOWatchDogChild]> watchdog request timeout set to 10 minutes Nov 08 17:05:59 sogod [49624]: <0x0x56006fbd49e0[WOWatchDog]> preparing 3 children Nov 08 17:06:00 sogod [49624]: <0x0x56006fbd49e0[WOWatchDog]> child spawned with pid 49625 Nov 08 17:06:00 sogod [49624]: <0x0x56006fbd49e0[WOWatchDog]> child spawned with pid 49626 Nov 08 17:06:00 sogod [49624]: <0x0x56006fbd49e0[WOWatchDog]> child spawned with pid 49627 2020-11-08 17:06:00.106 sogod[49626:49626] PostgreSQL72 connection established: <0x0x56006fd398e0[PGConnection]: connection=0x0x56006fd43a10> 2020-11-08 17:06:00.106 sogod[49626:49626] PostgreSQL72 channel 0x0x56006fbf72a0 opened (connection=<0x0x56006fd398e0[PGConnection]: connection=0x0x56006fd43a10>) 2020-11-08 17:06:00.106 sogod[49626:49626] PG0x0x56006fbf72a0 SQL: SELECT count(*) FROM sogo_user_profile 2020-11-08 17:06:00.106 sogod[49625:49625] PostgreSQL72 connection established: <0x0x56006fd398e0[PGConnection]: connection=0x0x56006fd43a10> 2020-11-08 17:06:00.106 sogod[49625:49625] PostgreSQL72 channel 0x0x56006fbf72a0 opened (connection=<0x0x56006fd398e0[PGConnection]: connection=0x0x56006fd43a10>) 2020-11-08 17:06:00.106 sogod[49625:49625] PG0x0x56006fbf72a0 SQL: SELECT count(*) FROM sogo_user_profile 2020-11-08 17:06:00.108 sogod[49627:49627] PostgreSQL72 connection established: <0x0x56006fd398e0[PGConnection]: connection=0x0x56006fd43a10> 2020-11-08 17:06:00.109 sogod[49627:49627] PostgreSQL72 channel 0x0x56006fbf72a0 opened (connection=<0x0x56006fd398e0[PGConnection]: connection=0x0x56006fd43a10>) 2020-11-08 17:06:00.109 sogod[49627:49627] PG0x0x56006fbf72a0 SQL: SELECT count(*) FROM sogo_user_profile 2020-11-08 17:06:00.110 sogod[49625:49625] PG0x0x56006fbf72a0 SQL: SELECT count(*) FROM sogo_folder_info 2020-11-08 17:06:00.110 sogod[49627:49627] PG0x0x56006fbf72a0 SQL: SELECT count(*) FROM sogo_folder_info 2020-11-08 17:06:00.112 sogod[49625:49625] PG0x0x56006fbf72a0 SQL: SELECT count(*) FROM sogo_sessions_folder 2020-11-08
Re: [SOGo] Restoring an old backup
On Sun, 2020-06-28 at 18:36 +0100, André Rodier wrote: > Hello, > > I am testing SOGo backup restoration, from the version 3 to version > 4. > > - backup Version: 3.2.6-2 > - restore Version: 4.0.7-1+deb10u1 > > However, I have these errors, when calling sogo-tool restore > > > /usr/sbin/sogo-tool restore -F ALL /var/backups/sogo/sogo-2020-06- > > 28_0030 andre > > <0x0x55add2f1f260[SOGoCache]> Cache cleanup interval set every > > 300.00 seconds > > <0x0x55add2f1f260[SOGoCache]> Using host(s) '127.0.0.1' as > > server(s) > > 2020-06-28 17:30:53.945 sogo-tool[18360:18360] Creating > > NGLdapConnection instance for bindDN 'cn=readonly > > account,ou=users,dc=rodier,dc=me' > > <0x0x55add2da7300[GCSFolderManager]> ERROR(-[GCSFolderManager > > performSQL:]): cannot execute > > SQL 'SELECT c_folder_id, c_path, c_location, > > c_quick_location, > > c_acl_location, c_folder_type FROM sogo_folder_info WHERE c_path1 = > > 'Users' AND c_path2 = 'andre' AND c_path3 = 'Contacts' AND c_path4 > > = > > 'collected'': > > > > NAME:PostgreSQL72FatalError REASON:fatal pgsql error > > (channel=<0x0x55add2cfa630[PostgreSQL72Channel]: > > connection=<0x0x55add2e72630[PGConnection]: connection=0x0x55add2e > > ea > > 010>>): ERROR: relation "sogo_folder_info" does not exist > > LINE 1: ...uick_location, c_acl_location, c_folder_type FROM > > sogo_folde... > > ^ > > > > <0x0x55add2da7300[GCSFolderManager]> ERROR(-[GCSFolderManager > > recordAtPath:]): executing SQL failed: 'SELECT c_folder_id, c_path, > > c_location, c_quick_location, c_acl_location, c_folder_type FROM > > sogo_folder_info WHERE c_path1 = 'Users' AND c_path2 = 'andre' AND > > c_path3 = 'Contacts' AND c_path4 = 'collected'' > > <0x0x55add2da7300[GCSFolderManager]> ERROR(-[GCSFolderManager > > performSQL:]): cannot execute > > SQL 'SELECT c_path FROM sogo_folder_info WHERE c_path1 = > > 'Users' AND c_path2 = 'andre' AND c_path3 = 'Contacts' AND c_path4 > > = > > 'collected'': > > > > NAME:PostgreSQL72FatalError REASON:fatal pgsql error > > (channel=<0x0x55add2cfa630[PostgreSQL72Channel]: > > connection=<0x0x55add2e72630[PGConnection]: connection=0x0x55add2e > > ea010>>): ERROR: relation "sogo_folder_info" does not exist > > LINE 1: SELECT c_path FROM sogo_folder_info WHERE c_path1 = > > 'Users' ... > > > > Is it possible to restore a backup from version 3 to version 4 ? > > Thanks for your help, > André Rodier > Hello again, I found the script to update, I called it before, and it is now working. Kind regards, André -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Restoring an old backup
Hello, I am testing SOGo backup restoration, from the version 3 to version 4. - backup Version: 3.2.6-2 - restore Version: 4.0.7-1+deb10u1 However, I have these errors, when calling sogo-tool restore > /usr/sbin/sogo-tool restore -F ALL /var/backups/sogo/sogo-2020-06- > 28_0030 andre > <0x0x55add2f1f260[SOGoCache]> Cache cleanup interval set every > 300.00 seconds > <0x0x55add2f1f260[SOGoCache]> Using host(s) '127.0.0.1' as > server(s) > 2020-06-28 17:30:53.945 sogo-tool[18360:18360] Creating > NGLdapConnection instance for bindDN 'cn=readonly > account,ou=users,dc=rodier,dc=me' > <0x0x55add2da7300[GCSFolderManager]> ERROR(-[GCSFolderManager > performSQL:]): cannot execute > SQL 'SELECT c_folder_id, c_path, c_location, c_quick_location, > c_acl_location, c_folder_type FROM sogo_folder_info WHERE c_path1 = > 'Users' AND c_path2 = 'andre' AND c_path3 = 'Contacts' AND c_path4 = > 'collected'': > > NAME:PostgreSQL72FatalError REASON:fatal pgsql error > (channel=<0x0x55add2cfa630[PostgreSQL72Channel]: > connection=<0x0x55add2e72630[PGConnection]: connection=0x0x55add2eea > 010>>): ERROR: relation "sogo_folder_info" does not exist > LINE 1: ...uick_location, c_acl_location, c_folder_type FROM > sogo_folde... > ^ > > <0x0x55add2da7300[GCSFolderManager]> ERROR(-[GCSFolderManager > recordAtPath:]): executing SQL failed: 'SELECT c_folder_id, c_path, > c_location, c_quick_location, c_acl_location, c_folder_type FROM > sogo_folder_info WHERE c_path1 = 'Users' AND c_path2 = 'andre' AND > c_path3 = 'Contacts' AND c_path4 = 'collected'' > <0x0x55add2da7300[GCSFolderManager]> ERROR(-[GCSFolderManager > performSQL:]): cannot execute > SQL 'SELECT c_path FROM sogo_folder_info WHERE c_path1 = > 'Users' AND c_path2 = 'andre' AND c_path3 = 'Contacts' AND c_path4 = > 'collected'': >NAME:PostgreSQL72FatalError > REASON:fatal pgsql error (channel=<0x0x55add2cfa630[PostgreSQL72Channel]: > connection=<0x0x55add2e72630[PGConnection]: connection=0x0x55add2eea010>>): > ERROR: relation "sogo_folder_info" does not exist > LINE 1: SELECT c_path FROM sogo_folder_info WHERE c_path1 = > 'Users' ... > Is it possible to restore a backup from version 3 to version 4 ? Thanks for your help, André Rodier -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Sogo 4 crashes when selecting a mail delivery notice from postmaster
Hello, I have SOGo installed on Debian buster, (version 4.0.7-1+deb10u1) I have a very weird bug, that crashes SOGo server when selecting an email from postmaster. All other emails are correctly displayed. These are the lines I see in the logs: > Mar 28 16:48:25 sogod [10566]: <0x0x559460db6830[NGImap4Client]> > Could > not start TLS. > 2020-03-28 16:48:26.348 sogod[10566:10566] EXCEPTION: 0x559460e92d10> NAME:NSInvalidArgumentException > REASON:[NSString+stringWithString:]: NULL string INFO:(null) > Mar 28 16:48:26 sogod [10566]: 192.168.54.68 "GET > /SOGo/so/antonio/Mail/0/folderINBOX/1/view HTTP/1.1" 501 0/0 0.463 - > - > 0 See the email attached Kind regards, André -- users@sogo.nu https://inverse.ca/sogo/lists Undelivered_Mail_Returned_to_Sender.mbox Description: application/mbox
Re: [SOGo] Milter to add the address book source in received emails.
On Mon, 2019-08-05 at 07:36 +, Eslam Basyouni wrote: > that's very good and i can test with you , but i hope if it's work on > Free IPA LDAP as my server depend on it > > On Monday, August 5, 2019, 02:36:59 AM GMT+2, André Rodier < > users@sogo.nu> wrote: > > > Dear SOGo users, > > I am actually writing a milter with Python that can be useful, > especially if you are using the Sieve filters. > > The purpose of the milter is to search the sender email address > inside > the SOGo address books, and to add a header consequently. > > It is helpful in the Sieve filters, for insance to write an auto > responder for your professional contacts, one for personal contacts > and > one for unknown contacts. > > For instance, the header "X-AddressBook: SOGo:Personal Address Book" > is > added. > > I am actually using an optimised SQLite database, which is filled > from > the last SOGo backup. I will add an automatic synchronisation later, > when the address book is modified. > > I will publish the milter on GitHub soon. > > Kind regards, > André Hello Eslam. I have not written the LDAP implementation yet, although it should not be too hard. See my last email and the github link for reference. If you need it soon, contact me directly. Kind regards, André -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Milter to link email sender and SOGo address book
As promised, a little bit late, due to urgent work and holidays. So, this is a very simple milter, written in Python, that do the following when a new message arrive. 1. Get the recipient uid "UID" from the email address. 2. Get the list of address books in the database for the user with uid "UID" 3. Search the sender email address in all the user's address books 4. If found at least one, add one header "X-AddressBook" which contains a list of all the address books found, with a prefixed syntax: The header contains a list written for instance "SOGo:Personnal, SOGo: Professional", it should be, in theory, possible to add other address books, like RoundCube or an LDAP directory, with the same header. There are some limitations, of course, but it is still functional. - Once active, sieve filters should be simpler, no need to have a long list of from email address, just create an address book, and a put your contacts in it. - You can create a different automatic responder for each address book. - Because I am using this on Debian Stretch for now, I am using the available version of python-milter, which uses python2. When I will port this to buster, I will use the python3-milter package. I tried to made it compatible with version 3 as much as I could. - This is freshly new, and has not been tested in production yet. I am working on it. - You can test the behaviour using an SQLite database. Because my first idea was to use a global sqlite database synchronised with multiple address books, it was supposed to contain not the email address but a hash (sha256). - I am not a Python expert, and perhaps there are some errors in the code, but it should be readable. I had to disable a few pylint warnings, as I could not solve them at all, especially those related to the inherited class. - This is the first time I am writing a milter script, be indulgent. The code: https://github.com/progmaticltd/sogo-milters/blob/master/milter-abook/milter-abook.py I initially wrote this for HomeBox¹, I may add some documentation for the deployment if needed. Kind regards, André PS: I do not understand the subtleties of the SOGo address book schema in the database, but it looks like a very weird implementation without any SQL principle in mind. I think this is probably now too late to rewrite the database schema to something convenient. PPS: If anyone knows an RFC that specify a header name that contains the source address book of a message sender, I am happy to change the header name. Otherwise, maybe I may submit an RFC draft. -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Milter to add the address book source in received emails.
Dear SOGo users, I am actually writing a milter with Python that can be useful, especially if you are using the Sieve filters. The purpose of the milter is to search the sender email address inside the SOGo address books, and to add a header consequently. It is helpful in the Sieve filters, for insance to write an auto responder for your professional contacts, one for personal contacts and one for unknown contacts. For instance, the header "X-AddressBook: SOGo:Personal Address Book" is added. I am actually using an optimised SQLite database, which is filled from the last SOGo backup. I will add an automatic synchronisation later, when the address book is modified. I will publish the milter on GitHub soon. Kind regards, André -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Extracting address books and calendars content
On 2019-06-14 08:58, Christian Mack wrote: Am 14.06.19 um 09:47 schrieb Christian Mack (christian.m...@uni-konstanz.de): Am 13.06.19 um 17:59 schrieb André Rodier (an...@rodier.me): On Thu, 2019-06-13 at 17:33 +0200, Christian Mack wrote: < ... > You know sogo-tool backup? Thanks, Christian, I will use this. I have successfully tested it, and it works. I had trouble the last time I tested, with AppArmor. However, how can I restore a backup for some users, now? When you have a sogo-tool backup for user anna in directory ./backup/ you can list her calendars and addressbooks with: /usr/sbin/sogo-tool restore -l ./backup/ anna This will give you something like this: <0x0x191ea60[SOGoCache]> Cache cleanup interval set every 900.00 seconds <0x0x191ea60[SOGoCache]> Using host(s) 'localhost' as server(s) 2019-06-14 09:31:43.685 sogo-tool[26667] Restorable folders: 2019-06-14 09:31:43.688 sogo-tool[26667] Calendar/2013-5614DA00-3-4EA7FE00 (Import Example) 2019-06-14 09:31:43.688 sogo-tool[26667] Calendar/55D4-57CD2C80-47-7C164080 (Superduper) 2019-06-14 09:31:43.689 sogo-tool[26667] Calendar/c81a287ec3c4719de08fae31306f851d (Pickwick) 2019-06-14 09:31:43.689 sogo-tool[26667] Calendar/e6dd60a375bd4c01a6416cacf763b33a (Normal-Tasks) 2019-06-14 09:31:43.689 sogo-tool[26667] Calendar/personal (Persönlicher Kalender) 2019-06-14 09:31:43.689 sogo-tool[26667] Contacts/collected (Gesammelte Adressen) 2019-06-14 09:31:43.689 sogo-tool[26667] Contacts/personal (Persönliches Adressbuch) If you want to restore calendar "Import Example" to the state of your backup and discard all changes made to it since then, use: /usr/sbin/sogo-tool restore -F Calendar/2013-5614DA00-3-4EA7FE00 ./backup/ anna If you just want to restore accidently deleted events and keep all changes made since your backup, use: /usr/sbin/sogo-tool restore -f Calendar/2013-5614DA00-3-4EA7FE00 ./backup/ anna For addressbooks you just have to exchange the Calendar/... part with Contacts/... one. If the user deleted the whole calendar or address book, you also can restore its settings afterwards with: usr/sbin/sogo-tool restore -p ./backup/ anna This will restore all settings, not just the ones for the restored calendar/addressbook. If you use SIEVE in SOGo, then you have to use: usr/sbin/sogo-tool restore -p -c /etc/sogo/sieve.creds ./backup/ anna This will also restore all SIEVE rules in your IMAP/SIEVE server. I forgot 2 things ;-) 1) After restore operations always restart memcached, or you will get strange effects. 2) If you want to restore all calendars and addressbooks of user anna, use: /usr/sbin/sogo-tool restore -F ALL ./backup/ anna With that you can restore all users with a loop over all users for restoring their calendars and addressbooks. Restarting memcached. Then another loop over all users for restoring their privileges and SIEVE rules. Restarting memcached again. Kind regards, Christian Mack Thanks, Christian, This is very very helpful. I will test and integrate this. Kind regards, André -- https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Extracting address books and calendars content
On Thu, 2019-06-13 at 17:33 +0200, Christian Mack wrote: > Hello > > Am 13.06.19 um 11:19 schrieb André Rodier (an...@rodier.me): > > > Am 12.06.19 um 19:18 schrieb André Rodier (an...@rodier.me): > > > > Hello, wonderful SOGo team, > > > > > > > > I need a way to export and import an address book, and maybe a > > > > calendar, from the command line. > > > > > > > > I am interested even if your answer is partial, for instance just the > > > > export. The bare minimum would be exporting an address book in a text > > > > file, in any appropriate format. > > > > > > > > I am happy to write SQL as well if this is necessary, although I would > > > > prefer use the http protocol. > > > > > > > > Also, can I restore, still using the command line, the user's data from > > > > a SOGo backup, or the whole database is the way to go. > > > > > > > > Thanks a lot for your hard work, this is great, and thanks to you and > > > > Debian, my project is taking shape. > > > > > > > > Thanks a lot for your hard work and your insights. > > > > > > On Wed, 2019-06-12 at 21:43 +0200, Anselm Martin Hoffmeister wrote: > > > Hallo André, > > > > > > I guess that CALDAV is the way to go (via HTTPS, preferrably). There are > > > php snippets that demonstrate Web DAV accesses, for example, so you > > > could "roll your own", for both data read and write, and have full > > > flexibility to access single items, while keeping sogo happy with > > > synchronizing changed data to whichever user/program/device needs it. > > > For mere backups though, the SQL database dump would be the obvious > > > choice. > > > > > > I admit that for a certain purpose I was a bit lazy and used a database > > > dump: We need a plain csv file of phone number and associated names for > > > our PABX to display caller names. There is some script that I will not > > > disclose (as it is not pretty at all), but it is fed with the output of > > > > > > echo "SELECT c_content FROM sogoanshoffm00112288562" | mysql -u > > > sogodbuser thesogodb | parsevcardscript > > > > > > where the table name has been hand-picked, obviously, and the mysql uses > > > an options file (which contains the password in this case). > > > > > > The data is - you may have guesses - in vcard format, which to me seems > > > like the shabby brother of an LDAP record - it seems to have been kind > > > of a standard for some time, or rather, a set of "we use it like this" > > > that are mostly compatible. Don't trust much on any application to > > > behave, and with a large range of software and devices accessing your > > > sogo, you will for example have several TEL;TYPE= and EMAIL;TYPE= > > > variants that not every program uses in the same way. YMMV. > > > > > > For restoring the complete dataset, I had to do this with several SOGo > > > instances a while back when changing hardware, and on that occasion > > > doing a full software install instead of just moving the root partition. > > > Just shutting down sogo, exporting the database, importing on the new > > > server and firing up sogo there with the mostly identical config file > > > worked as expected. > > > > > > Best regards > > > Anselm > > > > Hello Anselm, > > > > Thanks for your help. > > > > The final purpose is to backup and restore SOGo from scratch, so maybe > > I will end up restoring the whole database. > > > > Nothing in the method above seems appropriate for me. > > > > Since I want to do the backup on the local machine, http or https is > > not very relevant. What is more, however, is that I need some "special" > > account, with read access to all user's address books and calendars, > > and I did not find anything close to this in the documentation. > > > > Thanks, > > André > > > > You know sogo-tool backup? > > > Kind regards, > Christian Mack > Thanks, Christian, I will use this. I have successfully tested it, and it works. I had trouble the last time I tested, with AppArmor. However, how can I restore a backup for some users, now? Thanks for your help. André -- André Rodier HomeBox: https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Extracting address books and calendars content
> Am 12.06.19 um 19:18 schrieb André Rodier (an...@rodier.me): > > Hello, wonderful SOGo team, > > > > I need a way to export and import an address book, and maybe a > > calendar, from the command line. > > > > I am interested even if your answer is partial, for instance just the > > export. The bare minimum would be exporting an address book in a text > > file, in any appropriate format. > > > > I am happy to write SQL as well if this is necessary, although I would > > prefer use the http protocol. > > > > Also, can I restore, still using the command line, the user's data from > > a SOGo backup, or the whole database is the way to go. > > > > Thanks a lot for your hard work, this is great, and thanks to you and > > Debian, my project is taking shape. > > > > Thanks a lot for your hard work and your insights. > > On Wed, 2019-06-12 at 21:43 +0200, Anselm Martin Hoffmeister wrote: > Hallo André, > > I guess that CALDAV is the way to go (via HTTPS, preferrably). There are > php snippets that demonstrate Web DAV accesses, for example, so you > could "roll your own", for both data read and write, and have full > flexibility to access single items, while keeping sogo happy with > synchronizing changed data to whichever user/program/device needs it. > For mere backups though, the SQL database dump would be the obvious choice. > > I admit that for a certain purpose I was a bit lazy and used a database > dump: We need a plain csv file of phone number and associated names for > our PABX to display caller names. There is some script that I will not > disclose (as it is not pretty at all), but it is fed with the output of > > echo "SELECT c_content FROM sogoanshoffm00112288562" | mysql -u > sogodbuser thesogodb | parsevcardscript > > where the table name has been hand-picked, obviously, and the mysql uses > an options file (which contains the password in this case). > > The data is - you may have guesses - in vcard format, which to me seems > like the shabby brother of an LDAP record - it seems to have been kind > of a standard for some time, or rather, a set of "we use it like this" > that are mostly compatible. Don't trust much on any application to > behave, and with a large range of software and devices accessing your > sogo, you will for example have several TEL;TYPE= and EMAIL;TYPE= > variants that not every program uses in the same way. YMMV. > > For restoring the complete dataset, I had to do this with several SOGo > instances a while back when changing hardware, and on that occasion > doing a full software install instead of just moving the root partition. > Just shutting down sogo, exporting the database, importing on the new > server and firing up sogo there with the mostly identical config file > worked as expected. > > Best regards > Anselm Hello Anselm, Thanks for your help. The final purpose is to backup and restore SOGo from scratch, so maybe I will end up restoring the whole database. Nothing in the method above seems appropriate for me. Since I want to do the backup on the local machine, http or https is not very relevant. What is more, however, is that I need some "special" account, with read access to all user's address books and calendars, and I did not find anything close to this in the documentation. Thanks, André -- André Rodier HomeBox: https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Extracting address books and calendars content
Hello, wonderful SOGo team, I need a way to export and import an address book, and maybe a calendar, from the command line. I am interested even if your answer is partial, for instance just the export. The bare minimum would be exporting an address book in a text file, in any appropriate format. I am happy to write SQL as well if this is necessary, although I would prefer use the http protocol. Also, can I restore, still using the command line, the user's data from a SOGo backup, or the whole database is the way to go. Thanks a lot for your hard work, this is great, and thanks to you and Debian, my project is taking shape. Thanks a lot for your hard work and your insights. -- André Rodier HomeBox: https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] SOGo cron jobs are competing for the same lock file
Hello, There might be a bug in default SOGo cron tasks documentation. By default, both email reminders and ealarms-notify run both every minute, and compete for the same lock file. As a result, the cron jobs generate errors: > Warning ... someone broke our lock > (/home/sogo/GNUstep/Defaults/.lck/.GNUstepDefaults.lck) . The bug is documented here: https://sogo.nu/bugs/view.php?id=3027 Documentation: https://sogo.nu/files/docs/SOGoInstallationGuide.html#_c ronjob_email_reminders Can we make this clear in the documentation? Also, why the lock files are named the same? Finally, why I cannot add this comment to the SOGo BTS? I think the two lock files should be named differently. By using an appropriate sleep before running each command, and increasing the interval, the bug disappear, for instance: > # Session cleanup - runs every hour > # - Ajust the nbMinutes parameter to suit your needs > # Wait 30 seconds, to avoid broken lock files error messages > 0 * * * * sogosleep 30 && /usr/sbin/sogo-tool expire-sessions 60 > > # Email alarms - runs every five minutes > # Wait one minute as well, to avoid broken lock files error messages > */5 * * * *sogosleep 60 && /usr/sbin/sogo-ealarms-notify > > # Daily backups > # - writes backups to /var/backups/sogo/ > # - will keep 31 days worth of backups by default > # - runs once a day by default, but can run more frequently > 30 0 * * * sogo /usr/sbin/sogo-backup > Should I raise another bug? Thanks, André -- André Rodier HomeBox: https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] SOGo is sending the x-originating-ip after the login instead of before
Dear SOGo developers, I used ssldump to check the differences in the IMAP connection between SOGo and RoundCube, and I found the error. I copy here the log details as citation to keep the layout. The SSL dump with roundcube: > root@portal andre/mails/security# ssldump -i lo -d -k > /etc/letsencrypt/live/imap.homebox.space/privkey.pem port 143 > New TCP connection #1: localhost(54208) <-> localhost(143) > 0.0086 (0.0086) S>C > --- > * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE > STARTTLS AUTH=PLAIN AUTH=LOGIN] Dovecot ready. > --- > > 0.0087 (0.) C>S > --- > QP0001 ID ("x-originating-ip" "185.220.101.30") > --- > > etc... But with SOGo: > root@portal andre/mails/security# ssldump -i lo -d -k > /etc/letsencrypt/live/imap.homebox.space/privkey.pem port 143 > === > New TCP connection #1: localhost(54340) <-> localhost(143) > 0.0119 (0.0119) S>C > --- > * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE > STARTTLS AUTH=PLAIN AUTH=LOGIN] Dovecot ready. > --- > > 0.0120 (0.0001) C>S > --- > A0001 LOGIN "andre" "**" > --- > > 0.1155 (0.1034) S>C > --- > A0001 OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE > IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT > MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS > LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN > CONTEXT=SEARCH LIST-STATUS BINARY MOVE SEARCH=FUZZY NOTIFY SPECIAL-USE QUOTA] > Logged in > --- > > 0.1160 (0.0005) C>S > --- > 3 capability > --- > > 0.1167 (0.0006) S>C > --- > * CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT > SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND > URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED > I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH > LIST-STATUS BINARY MOVE SEARCH=FUZZY NOTIFY SPECIAL-USE QUOTA > 3 OK Capability completed (0.000 + 0.000 secs). > --- > > 0.1599 (0.0431) C>S > --- > 4 ID ("x-originating-ip" "185.220.101.30") > --- In this case SOGo is sending the Originating IP (Yay!), but *after* the login process, where it should, send it before. SOGo should send the originating IP *before*, at least to allow a proper logging of the connection attempts. I have found an old bug in the BTS, so I added all the details: https://sogo.nu/bugs/view.php?id=2979 I hope these details have been useful to you, and thanks again to develop SOGo. Thanks, André -- André Rodier HomeBox: https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Passing the remote IP to dovecot
On 2019-04-12 04:06, Gordon Messmer wrote: On 4/11/19 1:36 AM, André Rodier "(an...@rodier.me) wrote: How can I forward the source IP address of the connections to Dovecot, please? I don't think you can. That's not a feature of the standard IMAP protocol. Dovecot supports proprietary protocol extensions to forward client address information, but I'm not aware of any implementation of those extensions in SOGo. Dovecot also supports a "proxy protocol" developed by the haproxy project, but again, I don't believe that's implemented in SOGo. Both of these are non-standard, but mentioned on this page: https://wiki2.dovecot.org/HAProxy I confirm this is working perfectly with RoundCube, even when using imapproxy to cache IMAP connections. Any chance to integrate this function directly into SOGo, please? It seems to be a _de facto_ standard, accoring to Wikipedia: https://en.wikipedia.org/wiki/X-Originating-IP Thanks a lot for your fabulous software! André -- https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Passing the remote IP to dovecot
On 2019-04-07 22:22, André Rodier wrote: Hi, I think there is an error on the page "Config for Nginx and Sogo": http://wiki.sogo.nu/nginxSettings: The line below: proxy_set_header x-webobjects-remote-host 127.0.0.1; Should be proxy_set_header x-webobjects-remote-host $remote_addr; If we want to log the real IP address of the requests in the SOGo log file. Also, I am trying to log the real IP address, from SOgo to Dovecot, and it does not seems to work. I am not absolutely sure where the error is, i.e. from my SOGo configuration or Dovecot one, but is there any way to check the IP is really passed to Dovecot, please? Is there any line that has been forgotten in the example configuration file, please? Thanks. Hello, I usually don't bump an email, but I really would like to have this solved, or at least to be pointed in a direction to investigate. How can I forward the source IP address of the connections to Dovecot, please? Thanks a lot, André PS: Should I subscribe to any paid support to have answers? -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Passing the remote IP to dovecot
Hi, I think there is an error on the page "Config for Nginx and Sogo": http://wiki.sogo.nu/nginxSettings: The line below: proxy_set_header x-webobjects-remote-host 127.0.0.1; Should be proxy_set_header x-webobjects-remote-host $remote_addr; If we want to log the real IP address of the requests in the SOGo log file. Also, I am trying to log the real IP address, from SOgo to Dovecot, and it does not seems to work. I am not absolutely sure where the error is, i.e. from my SOGo configuration or Dovecot one, but is there any way to check the IP is really passed to Dovecot, please? Is there any line that has been forgotten in the example configuration file, please? Thanks. -- André Rodier HomeBox: https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] How to log the remote IP in sogo log file
Dear SOGo users and developers, I have SOGo 3 successfully running behind nginx, but there is something that bother me. All my log entries in /var/log/sogo/sogo.log are referring to 127.0.0.1 I have tried the following into nginx: proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; Is there any header to pass to SOGo, to allow logging the real IP address, please? Thanks for your help. -- André Rodier -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Two factors authentication in SOGo
On 2019-04-04 09:44, mj wrote: Hi, On 4/3/19 8:26 AM, André Rodier (an...@rodier.me) wrote: Is there some kind of two factors authentication available or planned in SOGo? What you perhaps could do: use SAML / CAS for sogo authentication, and configure 2FA on your CAS/saml2 IdP. MJ Thanks, I will consider it. However, I would have to change the whole authentication system, I would rather use something in the same spirit as Google. Kind regards, André PS: I changed the subject of the email. -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Donations
Dear SOGo developers. Is there some kind of two factors authentication available or planned in SOGo? For instance, using Google authentication Debian package (HMAC-Based One-time Password (HOTP) algorithm specified in RFC 4226 and the Time-based One-time Password (TOTP) algorithm) Thanks for your insights. Thanks, André -- André Rodier HomeBox: https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Donations
Dear SOGo developers. Is there a page where we can give donations to the project? Thanks, André -- André Rodier HomeBox: https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Behaviour of sogo-tool and sogo-alarms-notify in version 3 on Debian Stretch
On 2019-03-18 20:58, André Rodier wrote: On Sat, 2019-03-16 at 06:34 +, André Rodier wrote: Hello, good morning. I am using SOGo on Debian Stretch. I am globally very happy. Calendars and contacts are perfectly synchronised with my phone, the web interface is slick and simple, etc... I am also using AppArmor, and I am puzzled by a behaviour of some SOGo binaries on my system. Basically, these two tools are opening the root folder ("/") thousand times a day, just for reading and getting the attributes: > operation="getattr" profile="/usr/sbin/sogo-ealarms-notify" name="/" > comm="sogo-ealarms-no" requested_mask="r" fsuid=126 ouid=0 > operation="getattr" profile="/usr/sbin/sogo-tool" name="/" > comm="sogo-tool" requested_mask="r" fsuid=126 ouid=0 > operation="open" profile="/usr/sbin/sogo-tool" name="/" > comm="sogo-tool" requested_mask="r" fsuid=126 ouid=0 To avoid any errors and to count them, I allowed but audited the requests. I literally have thousand queries per day, just this morning: > root@portal ~# > journalctl | grep AUDIT | grep sogo| grep 'Mar 16' | wc -l > 4393 I really wonder why those binaries are opening the root ("/") folder, even for reading and getting the attributes. - What is the point of doing this? - Is this a bug? - Is this fixed in the version 4? Thanks a lot for your support. Your work is very valuable and will make people life easier. Hello again, I don't mind looking for the origin of the bug myself, but can you point me in the direction, please? Where can I see the source code of the tools sogo-ealarms-notify and sogo-tool on github? Thanks, André I have added a new bug on the tracking system (#4704). https://sogo.nu/bugs/view.php?id=4704 I am happy to help, but I really would like someone pointing me in the direction. Kind regards, André -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Behaviour of sogo-tool and sogo-alarms-notify in version 3 on Debian Stretch
Hello again, I don't mind looking for the origin of the bug myself, but can you point me in the direction, please? Where can I see the source code of the tools sogo-ealarms-notify and sogo-tool on github? Thanks, André On Sat, 2019-03-16 at 06:34 +, André Rodier wrote: > Hello, good morning. > > I am using SOGo on Debian Stretch. I am globally very happy. Calendars > and contacts are perfectly synchronised with my phone, the web interface > is slick and simple, etc... > > I am also using AppArmor, and I am puzzled by a behaviour of some SOGo > binaries on my system. Basically, these two tools are opening the root > folder ("/") thousand times a day, just for reading and getting the > attributes: > > > operation="getattr" profile="/usr/sbin/sogo-ealarms-notify" name="/" > > comm="sogo-ealarms-no" requested_mask="r" fsuid=126 ouid=0 > > operation="getattr" profile="/usr/sbin/sogo-tool" name="/" > > comm="sogo-tool" requested_mask="r" fsuid=126 ouid=0 > > operation="open" profile="/usr/sbin/sogo-tool" name="/" > > comm="sogo-tool" requested_mask="r" fsuid=126 ouid=0 > > To avoid any errors and to count them, I allowed but audited the > requests. > > I literally have thousand queries per day, just this morning: > > > root@portal ~# > > journalctl | grep AUDIT | grep sogo| grep 'Mar 16' | wc -l > > 4393 > > I really wonder why those binaries are opening the root ("/") folder, > even for reading and getting the attributes. > > - What is the point of doing this? > - Is this a bug? > - Is this fixed in the version 4? > > Thanks a lot for your support. Your work is very valuable and will make > people life easier. > > Kind regards, > André -- André Rodier HomeBox: https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Behaviour of sogo-tool and sogo-alarms-notify in version 3 on Debian Stretch
Hello, good morning. I am using SOGo on Debian Stretch. I am globally very happy. Calendars and contacts are perfectly synchronised with my phone, the web interface is slick and simple, etc... I am also using AppArmor, and I am puzzled by a behaviour of some SOGo binaries on my system. Basically, these two tools are opening the root folder ("/") thousand times a day, just for reading and getting the attributes: operation="getattr" profile="/usr/sbin/sogo-ealarms-notify" name="/" comm="sogo-ealarms-no" requested_mask="r" fsuid=126 ouid=0 operation="getattr" profile="/usr/sbin/sogo-tool" name="/" comm="sogo-tool" requested_mask="r" fsuid=126 ouid=0 operation="open" profile="/usr/sbin/sogo-tool" name="/" comm="sogo-tool" requested_mask="r" fsuid=126 ouid=0 To avoid any errors and to count them, I allowed but audited the requests. I literally have thousand queries per day, just this morning: root@portal ~# journalctl | grep AUDIT | grep sogo| grep 'Mar 16' | wc -l 4393 I really wonder why those binaries are opening the root ("/") folder, even for reading and getting the attributes. - What is the point of doing this? - Is this a bug? - Is this fixed in the version 4? Thanks a lot for your support. Your work is very valuable and will make people life easier. Kind regards, André -- https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] IMAP Quotas not displayed
On 2018-12-03 10:31, Christian Mack wrote: Hello Am 26.11.18 um 23:19 schrieb André Rodier (an...@rodier.me): I am using Dovecot for IMAP access. Do I have to do anything special, in SOGo, to display the IMAP quotas? With the same IMAP server, my quotas are displayed in Roundcube, but not in SOGo. The only difference is that Roundcube is using imapproxy, and SOGo is accessing the server directly. This is a known bug in SOGo. https://sogo.nu/bugs/view.php?id=1494 Workaround is to remove the space of the quota root name "User quota" in /etc/dovecot/conf.d/90-quota.conf in plugin section e.g.: plugin { quota = dict:Userquota::file:%h/mdbox/dovecot-quota } Kind regards, Christian Mack Thank you, Christian. I will apply this fix. André -- https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] IMAP Quotas not displayed
Hello all, I am using Dovecot for IMAP access. Do I have to do anything special, in SOGo, to display the IMAP quotas? With the same IMAP server, my quotas are displayed in Roundcube, but not in SOGo. The only difference is that Roundcube is using imapproxy, and SOGo is accessing the server directly. Thanks, André. -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Unicode characters in the headers
Hello Michael, Thanks a lot for your answer, I will check this. The SOGo server is on the same machine as the mail server (postfix). The antivirus is rspamd. The antivirus is clamd. I checked the logs of both, but found nothing so far. What is weird, is that the other emails from SOGo are fine. For instance, when I create or delete an event, the email is sent correctly, with my name "André" encoded only one time with quoted- printable. It is only the email alerts that are sent with my name encoded twice. Kind regards, André PS: Why the emails are delayed so long on this list? On Sun, 2018-11-25 at 15:48 +0100, Michael Hekeler wrote: > Mmmh - afaik sogo encodes everything wellm > > Did you examine whether the email you received is converted to plain text > format or a different encoding by a virus scanner or such problems like that? > > > > Originalnachricht > Von: André Rodier (an...@rodier.me) > Gesendet: Samstag, 24. November 2018 23:21 > An: users@sogo.nu > Antwort an: users@sogo.nu > Betreff: Re: [SOGo] Unicode characters in the headers > > On 2018-11-24 13:21, André Rodier wrote: > > Hello, > > I am using SOGo 3 on Debian Stretch. > > When an email alert for a calendar event is sent to me by SOGo, my > > name (André Rodier) is displayed as this: "=?utf-8?q?Andr=C3=A9?= > > Rodier" > > How can I avoid this,? > > Thanks for your help. > > > > André Rodier > > This might be a bug in SOGo, as the header is encoded twice with the > quoted-printable scheme. > > Here the source of the original message: > --- > Return-Path: > Received: from osaka.rodier.me > by osaka.office.pmc with LMTP id eAczFqbJ+VuoZQAAnYgw/w > ; Sat, 24 Nov 2018 21:59:02 + > Received: from osaka.rodier.me (localhost [127.0.0.1]) > by osaka.rodier.me (Postfix) with ESMTP id 45BF2208D3 > for ; Sat, 24 Nov 2018 21:59:02 + (GMT) > Received: from localhost (localhost [127.0.0.1]) > by osaka.rodier.me (Postfix) with ESMTP id 25BC6208CD > for ; Sat, 24 Nov 2018 21:59:02 + (GMT) > To: =?utf-8?q?=3D=3Futf-8=3Fq=3FAndr=3DC3=3DA9=3F=3D_Rodier?= > > X-Priority: 1 > Subject: Yo > Importance: high > MIME-Version: 1.0 > Content-Transfer-Encoding: quoted-printable > Message-Id: <6668-5bf9c9a6-1-1bbecc54@189782116> > Content-Type: text/plain; charset="utf-8" > From: =?utf-8?q?=3D=3Futf-8=3Fq=3FAndr=3DC3=3DA9=3F=3D_Rodier?= > > Date: Sat, 24 Nov 2018 21:59:02 + > User-Agent: SOGo Alarms Notifier/1.0 > X-AV-Checked: ClamSMTP (Client IP: 127.0.0.1) > > eryhwhw > wrthwthwthwht > wrthwthwhwthw > --- > > As a result, the email client displays the "To" field decoded once, > which left an encoded header. > > This is only happening when the reminders are sent, not when an event is > created. > > -- > https://github.com/progmaticltd/homebox > -- > users@sogo.nu > https://inverse.ca/sogo/lists -- André Rodier HomeBox: https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] AppArmor profiles for SOGo
Hello, For those who are using SOGo on Debian / Ubuntu, I have created AppArmor profiles. The latest version is here: https://github.com/progmaticltd/homebox/tree/dev-sogo/install/playbooks/roles/sogo/templates/apparmor.d You can have a look on them, and tell me if I made any mistake, or if something is perfectible. Thanks, André -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Unicode characters in the headers
On 2018-11-24 13:21, André Rodier wrote: Hello, I am using SOGo 3 on Debian Stretch. When an email alert for a calendar event is sent to me by SOGo, my name (André Rodier) is displayed as this: "=?utf-8?q?Andr=C3=A9?= Rodier" How can I avoid this,? Thanks for your help. André Rodier This might be a bug in SOGo, as the header is encoded twice with the quoted-printable scheme. Here the source of the original message: --- Return-Path: Received: from osaka.rodier.me by osaka.office.pmc with LMTP id eAczFqbJ+VuoZQAAnYgw/w ; Sat, 24 Nov 2018 21:59:02 + Received: from osaka.rodier.me (localhost [127.0.0.1]) by osaka.rodier.me (Postfix) with ESMTP id 45BF2208D3 for ; Sat, 24 Nov 2018 21:59:02 + (GMT) Received: from localhost (localhost [127.0.0.1]) by osaka.rodier.me (Postfix) with ESMTP id 25BC6208CD for ; Sat, 24 Nov 2018 21:59:02 + (GMT) To: =?utf-8?q?=3D=3Futf-8=3Fq=3FAndr=3DC3=3DA9=3F=3D_Rodier?= X-Priority: 1 Subject: Yo Importance: high MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Message-Id: <6668-5bf9c9a6-1-1bbecc54@189782116> Content-Type: text/plain; charset="utf-8" From: =?utf-8?q?=3D=3Futf-8=3Fq=3FAndr=3DC3=3DA9=3F=3D_Rodier?= Date: Sat, 24 Nov 2018 21:59:02 + User-Agent: SOGo Alarms Notifier/1.0 X-AV-Checked: ClamSMTP (Client IP: 127.0.0.1) eryhwhw wrthwthwthwht wrthwthwhwthw --- As a result, the email client displays the "To" field decoded once, which left an encoded header. This is only happening when the reminders are sent, not when an event is created. -- https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] AppArmor for sogod
Hello, I am building an AppArmor profile for SOGo (Debain Stretch / Sogo 3.2.6-2), and in complain mode, I have this log entry: - Nov 24 20:26:56 osaka kernel: audit: type=1400 audit(1543091216.708:3689): apparmor="DENIED" operation="getattr" profile="/usr/sbin/sogod" name="/" pid=3288 comm="sogod" requested_mask="r" fsuid=132 ouid=0 - Why the SOGo daemon is reading the attributes of the root folder "/" on start ? -- https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] AppArmor for sogod
On 2018-11-24 20:32, André Rodier wrote: Hello, I am building an AppArmor profile for SOGo (Debain Stretch / Sogo 3.2.6-2), and in complain mode, I have this log entry: - Nov 24 20:26:56 osaka kernel: audit: type=1400 audit(1543091216.708:3689): apparmor="DENIED" operation="getattr" profile="/usr/sbin/sogod" name="/" pid=3288 comm="sogod" requested_mask="r" fsuid=132 ouid=0 - Why the SOGo daemon is reading the attributes of the root folder "/" on start ? Again, the same issue, when the sogo alarm notify script is started: --- Nov 24 21:48:01 osaka audit[23806]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/sogo-ealarms-notify" name="/" pid=23806 comm="sogo-ealarms-no" requested_mask="r" denied_mask="r" fsuid=132 ouid=0 Nov 24 21:48:01 osaka kernel: audit: type=1400 audit(1543096081.831:5072): apparmor="DENIED" operation="open" profile="/usr/sbin/sogo-ealarms-notify" name="/" pid=23806 comm="sogo-ealarms-no" requested_mask="r" denied_mask="r" fsuid=132 ouid=0 --- -- https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Convert quoted-printable headers
On 2018-11-24 15:52, Richard Damon wrote: On 11/24/18 10:24 AM, André Rodier wrote: On 2018-11-24 15:16, Richard Damon wrote: On 11/24/18 9:41 AM, André Rodier wrote: Hello, I have a program (SOGo), installed on my mail server, that send emails using the quoted-printable encoding for From/To headers. Unfortunately, none of the email clients I use seems to display them correctly: --- From =?utf-8?q?Andr=C3=A9?= Rodier To =?utf-8?q?Andr=C3=A9?= Rodier --- Is there any reason for that ? is a header missing: Thanks for your help André Rodier First, are your clients compliant with the RFC that define encoding of headers (which are later/less supported than those that define the encoding of the body)? For example, RFC 2047 (I think the latest RFC that defines this encoding). I don't think you need any header to enable this support, just a compliant MUA. Thanks for your answer. I would think it is a bug in the SOGo software, because other emails are using quoted-printable too, but are displayed correctly, for instance this one: Return-Path: Received: from osaka.rodier.me by osaka.office.pmc with LMTP id 0P2UH/1p+VvAFAAAnYgw/w ; Sat, 24 Nov 2018 15:10:53 + Received: from osaka.rodier.me (localhost [127.0.0.1]) by osaka.rodier.me (Postfix) with ESMTP id 6406A2063B for ; Sat, 24 Nov 2018 15:10:53 + (GMT) Received: by osaka.rodier.me (Postfix, from userid 132) id 431B720662; Sat, 24 Nov 2018 15:10:53 + (GMT) Content-Type: text/html; charset="utf-8" To: =?utf-8?q?Andr=C3=A9_Rodier?= MIME-Version: 1.0 Date: Sat, 24 Nov 2018 15:10:53 + Subject: The event =?utf-8?q?=22Hello=22?= was created Message-ID: <1403-5bf96a00-5-79d0b280@98295310> From: =?utf-8?q?Andr=C3=A9_Rodier?= X-AV-Checked: ClamSMTP (Client IP: 127.0.0.1) Fortunately, Thunderbird, Evolution and Roundcube are behaving the same. I use Thunderbird myself, and your message displays fine. The one difference I see is that the character set and encoding in your mail client is coming in upper case, while the example has it in lower case. I thought the RFC said that this was case insensitive, but maybe some implementations are case sensitive. I forgot to mention something important. The first copied line are a copy as they are displayed in the email client. The raw headers: Return-Path: Received: from osaka.rodier.me by osaka.office.pmc with LMTP id mE3/EPJu+VtmHgAAnYgw/w ; Sat, 24 Nov 2018 15:32:02 + Received: from osaka.rodier.me (localhost [127.0.0.1]) by osaka.rodier.me (Postfix) with ESMTP id 2CE4920664 for ; Sat, 24 Nov 2018 15:32:02 + (GMT) Received: from localhost (localhost [127.0.0.1]) by osaka.rodier.me (Postfix) with ESMTP id 0E6432063B for ; Sat, 24 Nov 2018 15:32:02 + (GMT) To: =?utf-8?q?=3D=3Futf-8=3Fq=3FAndr=3DC3=3DA9=3F=3D_Rodier?= X-Priority: 1 Subject: test Importance: high MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Message-Id: <25d7-5bf96ef1-1-7d77729b@234960090> Content-Type: text/plain; charset="utf-8" From: =?utf-8?q?=3D=3Futf-8=3Fq=3FAndr=3DC3=3DA9=3F=3D_Rodier?= Date: Sat, 24 Nov 2018 15:32:01 + User-Agent: SOGo Alarms Notifier/1.0 X-AV-Checked: ClamSMTP (Client IP: 127.0.0.1) So, yes, the message is encoded twice... -- https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Convert quoted-printable headers
On 2018-11-24 15:26, Matus UHLAR - fantomas wrote: On 24.11.18 14:41, André Rodier wrote: I have a program (SOGo), installed on my mail server, that send emails using the quoted-printable encoding for From/To headers. this is not a postfix issue, it belongs to the sogo support, not postfix. Unfortunately, none of the email clients I use seems to display them correctly: --- From=?utf-8?q?Andr=C3=A9?= Rodier To =?utf-8?q?Andr=C3=A9?= Rodier --- Is there any reason for that ? To: =?utf-8?q?=3D=3Futf-8=3Fq=3FAndr=3DC3=3DA9=3F=3D_Rodier?= this looks to me like encoded twice, so all clients that decode it once will show once encoded string. Thank you, I reached the same conclusion. Yes, I realise this is a bug in SOGo, I will continue the thread on this mailing list. André -- https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Changing main coulours
Hello, I am using SOGo3 on Debian Stretch. Is there a simple and quick way to change the main colours in the theme, please? This is a minor thing, so I will accept answers like "No". -- https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Unicode characters in the headers
Hello, I am using SOGo 3 on Debian Stretch. When an email alert for a calendar event is sent to me by SOGo, my name (André Rodier) is displayed as this: "=?utf-8?q?Andr=C3=A9?= Rodier" How can I avoid this,? Thanks for your help. André Rodier -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Junk settings parameter in SOGo
Hello, My email server works by moving emails in and out of the Junk folder, so I do not need to use a special email address to forward emails to train spam and ham. Is it possible, to disable the Junk settings in SOGo (SOGoMailJunkSettings parameter)? Thanks, André -- https://github.com/progmaticltd/homebox -- users@sogo.nu https://inverse.ca/sogo/lists
Re: [SOGo] Thanks, and database questions
On 2018-11-18 20:49, Gordon Messmer wrote: On 11/17/18 11:28 PM, André Rodier "(an...@rodier.me) wrote: 2 - On the official documentation, I could not find how to create the PostgreSQL database, using this code: The sogo_users table is only necessary if you're configuring SOGo to use a SQL user source. The ansible role you're following doesn't do that as far as I can tell, so I'm not sure why it makes the table. See this URL for more information: http://wiki.sogo.nu/ResourceConfiguration Generally, SOGo will create the tables that it requires on its own, and you don't need to do anything manually. As described above, you might create this table if you want to create shared resources like meeting rooms in SQL rather than creating them in LDAP. If you already have an LDAP user source, you can also create resources there. Thank you, Gordon, I will add this LDAP schema. Kind regards, André -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Thanks, and database questions
Hello all, A big than you to the SOGo team, as I have been able to integrate it into my Debian Stretch mail server, without too much problems. However, I have a few questions. 1 - My email server automatically makes a copy of the emails sent into the sent folder. How can I configure Sogo to not make a copy? 2 - On the official documentation, I could not find how to create the PostgreSQL database, using this code: CREATE TABLE sogo_users ( c_uid VARCHAR(128) NOT NULL PRIMARY KEY, c_name VARCHAR(128) NOT NULL, c_password VARCHAR(128) NOT NULL, c_cn VARCHAR(128) NULL, mail VARCHAR(128) NOT NULL, CONSTRAINT mail_unique UNIQUE (mail) ); Is this enough, or I am missing some tables? For reference, the latest version of the script I use to deploy is here: https://github.com/progmaticltd/homebox/tree/dev-sogo/install/playbooks/roles/sogo Kind regards, André Rodier -- users@sogo.nu https://inverse.ca/sogo/lists
[SOGo] Sogo in Debian, license
Hello, I am writing an open source project for self-hosting, and I would like to know if there is any licensing issue I should take care of, if I am using the Debian version of Sogo3. My project is a set of Ansible scripts to install a mail system under GPL3, but I don't think this is relevant. The project is here: https://github.com/progmaticltd/homebox Is there anything that is not included in the Debian version, or is there anything to do? Thanks for your advices. André Rodier. -- users@sogo.nu https://inverse.ca/sogo/lists