The relatively young company grammm wants to offer an alternative to Exchange Server with its product of the same name. The idea itself is not new, as there have long been a number of projects (such as Open-X-Change, Kopano or Zimbra) that position themselves as an alternative to Exchange Server. grammm (groupware and much much more) is the first open source project to offer an implementation of Outlook Anywhere (RPCoverHTTP) and MAPIoverHTTP. In theory, Outlook is thus supported as a native client, i.e. without plug-ins or detours via IMAP/SMTP. Here is a screenshot from the grammm website:
Das sind ziemlich ambitionierte Ziele, aber der zweite Punkt ist wirklich interessant: „Native Interoperabilität mit Microsoft Outlook“. Seit kurzem gibt es eine kostenlose Community Edition für maximal 5 Benutzer zum Download. Daher teste ich es einfach mal, ich bin ja tatsächlich sehr gespannt.
So this article contains my first steps with grammm. Current feeling: I'm curious, but as a dyed-in-the-wool Exchange admin I feel like I'm up to something forbidden.
Installation
The installation of grammm is very simple. There is a ready-made appliance available for download, which can be installed in just a few steps and minutes:
The installation of the Linux operating system is then reduced to a few steps, I am using version 2021.02 for this test:
I have installed grammm in a VM, this is the only hint that has to be confirmed during the installation:
After a few minutes grammm is installed and you can continue with the initial configuration:
Initial configuration
After installation, you can log in to the Console User Interface (CUI) with the user root without a password. The password can be changed directly in the menu:
You can then change the network settings; I have only configured a static IP here:
Unter dem Menüpunkt „grammm setup wizard“ lässt sich die initiale Konfiguration durchführen:
For my first test, I am using the Community Edition and therefore do not need to specify a subscription:
The wizard then installs updates first:
Im nächsten Schritt wird dann die Datenbank eingerichtet, Mit dem Punkt „Create database locally“ wird eine MariaDB konfiguriert:
The database credentials should of course be saved:
In the next dialog, the FQDN of the grammm server must be specified. I have opted for mail.frankysweblab.de here:
The default mail domain is then queried. In my case, it is frankysweblab.de:
grammm benötigt natürlich auch ein Zertifikat um die Verbindungen zu verschlüsseln. Die Integration von Let’s Encrypt macht es hier besonders einfach ein gültiges Zertifikat zu konfigurieren. In meiner Testumgebung habe ich aber zunächst nur ein selbst signiertes Zertifikat erstellt:
The grammm developers have even thought of the typical Outlook message that appears if the certificate is not displayed as valid:
This completes the initial configuration:
The grammm admin interface is now accessible on port 8080. Unfortunately only via http and not via https. This will certainly be fixed in one of the next versions:
Configuration via Webgui
The admin console contains only a few menu items and in my opinion looks quite tidy and modern. You can directly see the status of the services and a few important utilization graphs;
A mail domain can be added in the GUI first. I have therefore added frankysweblab.de as a domain and specified a maximum of 5 users. The free Community Edition does not allow more users:
The connection of gramm to the Active Directory would not work for me directly via the GUI either. Importing users from the AD was therefore not possible for me:
I tried various settings, but none of them worked. I therefore initially decided not to use the LDAP connection. Users can also be created locally:
Connection with Outlook
Setting up Outlook works almost like setting up an Exchange server:
Unfortunately, setting up Outlook directly without entering a user name and password does not work:
Since the grammm server is not connected to the Active Directory, Kerberos cannot simply be used for the login as is usual with Exchange. However, as I created the users locally, this was to be expected, so the one-off password prompt appears in Outlook:
An Outlook setup was successfully completed:
The connection between Outlook and grammm Server is established, but unfortunately not via MAPIoverHTTP, but with the old RPCoverHTTP (Outlook Anywhere). MAPIoverHTTP can be activated in the file /etc/gromox/autodiscover.ini, but after that I was no longer able to connect to Outlook and had to deactivate MAPIoverHTTP again:
The internal sending and receiving of e-mails works directly, and the synchronization of appointments and tasks also works smoothly. I also had no problems with an ActiveSync device:
I don't find the webmail interface particularly pretty and it reminds me a bit of Kopano, but it works quickly and is functional:
However, the other functions such as Files, Meet and Chat do not yet appear to be available in this version.
Conclusion
The project certainly has potential, but it is still a very early version which, in my opinion, is not yet suitable for productive use. The admin GUI is not yet finished and many functions and settings are still missing. However, I am excited to see where the journey takes us and will keep an eye on grammm. There is also currently no proper documentation. However, the grammm website promises a lot more than what already works, but it is not yet an alternative to Exchange Server. This article on heise.de is also interesting:
Apparently some dark clouds are gathering, let's wait and see how the dispute between Kopano and grammm develops. The article in which Kopano accuses grammm of copyright infringement has already been deleted by Kopano (Link to the Wayback Machine).
The company SmarterTools also offers SmarterMail offers an alternative to Exchange, which is also supposed to be compatible with EWS, MAPIoverHTTP and ActiveSync. Unfortunately, I was unable to test this.