Loading...
 

History: Cyrus IMAP 3 and JMAP development

Preview of version: 16

ClearOS's 7.x's mail server is Cyrus IMAP 2.x This page is to coordinate testing of upcoming Cyrus IMAP 3.x , which brings new features such as CalDAV, CardDAV and JMAP support.

Code

cyrus.suite.wiki

cyrus.suite.wiki is a shared development and test server. Once the test period is over, the server will be deleted so don't store any real data on this server. If you would like server access to test with testing and development, please contact Marc Laporte

Urls

You can replace test with your login and follow the pattern below

User management

https://cyrus.suite.wiki:81/app/users (you need root access)

CalDAV

https://cyrus.suite.wiki/dav/calendars/user/test

CardDAV

https://cyrus.suite.wiki/dav/addressbooks/user/test/

RSS

https://cyrus.suite.wiki/rss/user/test

IMAP and SMTP

IMAP

port 143
server: cyrus.suite.wiki
username: login (not full email)

SMTP

port: 25
server: cyrus.suite.wiki
username: login (not full email)

IMAPS

SSL
port 993
server: cyrus.suite.wiki
username: login (not full email)

SMTPS

SSL
port: 587
server: cyrus.suite.wiki
username: login (not full email)

JMAP webmail

The webmail demo is installed, but it looks like the authentication layer in the client is different than what is expected in Cyrus? I updated the JMAP.auth.didAuthenticate block in /usr/share/jmap-demo-webmail/app/state.js as described in the JMAP webmail demo docs, but I see 401 unauthorized replies.

Here's the URL of the webmail demo - please make sure your adblocker is disabled! https://cyrus.suite.wiki:81/jmap-demo-webmail/

It's installed in /usr/share/jmap-demo-webmail. Use "git diff" to see the minor changes.

Notes for future documentation page

How to install

  1. Install Cyrus IMAP 3.x
  2. Then install the IMAP and SMTP apps:
    yum --enablerepo=egloo-clearos-devel install app-imap app-smtp
  3. You will also need to do the following:
    • Create the default SSL certificate via the “System - Settings - Certificate Manager” app.
    • Create a user with IMAP and SMTP enabled.
    • Login via an IMAP client in order to create a mailbox for the user.

How to use

  • The extra features (CalDAV, CardDAV and JMAP) run on port 80 and/or 443, so Cyrus IMAP interferes with web server.
  • See URLs patterns above

Questions

  • Is if possible to have a logout feature (it's not difficult to test with different accounts)


Known bugs / limitations

Accounts created in ClearOS are not reliably setup for CalDAV and CardDAV

peter.baldwin wrote:

Mailbox creation gotcha: The mailboxes get created on the fly:
- the first time the user logs in, or
- a mail message is delivered

peter.baldwin wrote:

The mailboxes for test and nikola.tesla were created, but the relevant subfolders were not. You can browse the mailboxes in /var/spool/imap/ by the way. Here's what it looked like in the log:

Aug 18 14:52:16 cyrus lmtp12030: autocreateinbox: autocreate inbox for user test was called
Aug 18 14:52:16 cyrus lmtp12030: autocreateinbox: User test, INBOX was successfully created
Aug 18 14:52:16 cyrus lmtp12030: WARNING: sieve script /var/lib/imap/sieve/t/test/defaultbc doesn't exist: No such file or directory
Aug 18 14:52:16 cyrus lmtp12030: Delivered: to mailbox: user.test

Looking back at my "peter" account, I can see that tried the RSS feed link for a sanity check - https://cyrus.suite.wiki/rss/user/peter. This prompted me for a login and I could view my RSS feed. Under the hood, this showed up in the log:

Aug 17 18:18:47 cyrus https19262: login: 192-0-172-199.cpe.teksavvy.com 192.0.172.199 peter Basic+TLS User logged in SESSIONID=
...
Aug 17 18:18:47 cyrus https19262: creating sql_db /var/lib/imap/user/p/peter.dav

It looks like that "dav" folder is needed by the calendars and addressbook but only created on an IMAP login. If you were to login using an IMAP client, I'm guessing everything would be ok.

History

Advanced
Information Version
Marc Laporte 51
View
Marc Laporte 50
View
Marc Laporte 49
View
Marc Laporte 48
View
Marc Laporte 47
View
Marc Laporte 46
View
Marc Laporte code Plugin modified by editor. 45
View
Marc Laporte 44
View
Marc Laporte 43
View
Marc Laporte 42
View
Marc Laporte fade Plugin modified by editor. 41
View
Marc Laporte 40
View
Marc Laporte 39
View
Marc Laporte 38
View
Marc Laporte 37
View
Marc Laporte 36
View
Marc Laporte code Plugin modified by editor. 35
View
Marc Laporte 34
View
Marc Laporte code Plugin modified by editor. 33
View
Marc Laporte 32
View
Marc Laporte code Plugin modified by editor. 31
View
Marc Laporte 30
View
Marc Laporte 29
View
Marc Laporte 28
View
Marc Laporte 27
View
Marc Laporte 26
View
Marc Laporte I fixed links 25
View
Marc Laporte 24
View
Marc Laporte quote Plugin modified by editor. 23
View
Marc Laporte 22
View
Marc Laporte 21
View
Marc Laporte 20
View
Marc Laporte 19
View
Marc Laporte 18
View
Marc Laporte 17
View
Marc Laporte 16
View
Marc Laporte 15
View
Marc Laporte 14
View
Marc Laporte 13
View
Marc Laporte 12
View
Marc Laporte 11
View
Marc Laporte 10
View
Marc Laporte 9
View
Marc Laporte 8
View
Marc Laporte 7
View
Marc Laporte 6
View
Marc Laporte 5
View
Marc Laporte 4
View
Marc Laporte 3
View
Marc Laporte 2
View
  • 1
  • 2 (current)
  • »