Toss a rock and it will most likely land on a groupware suite. They are everywhere. Some of them are costly, some are proprietary, some are challenging to get up and running, and some don’t quite fit the bill. And then there’s Citadel.

Citadel is an open source groupware suite that includes:

  • Email
  • Calendar/scheduling
  • Address books
  • Bulletin boards (forums)
  • Mailing list server
  • Instant messaging
  • Wiki and blog engines
  • Multiple domain support
  • Web interface
  • RSS aggregation
  • And much more

I want to walk you through the process of installing Citadel on the Ubuntu 16.04 Server platform. I’ll focus on this being an internal-only solution (as that is, from my experience, the best use for this tool). The installation is handled entirely through the command line, so prepare to type.


There is very little prep work to be done. Open up a terminal window on your server and issue the following commands:

sudo apt-get update
​sudo apt-get upgrade

Once those two commands complete, you’re ready to install Citadel.


Back at the command line, issue the following to install Citadel:

sudo apt-get install citadel-suite

During the running of that command, you will be presented by a number of ncurses windows. The first (Figure A), will require you to specify the IP address which the server will listen to.

Figure A

Unless you plan on installing multiple instances of Citadel on the same server, leave the default Tab down to Ok and hit Enter. You will then be presented with the following configuration options (in a similar manner):

  • Authentication method – Unless you’re using LDAP or Active Directory, select Internal
  • Citadel administrator username – This can be any name (default is admin)
  • Citadel administrator password – Type and verify
  • Citadel-webcit – If you already have an Apache2 server running, make sure to select Apache2 here (otherwise you won’t be able to reach your Citadel server)
  • HTTP Port – If you already have an Apache2 server running, make sure to configure a different port (such as 8080)
  • HTTPS Port – Leave this as the default 443
  • Language – Select the language for your server (default is User-defined)

That’s it. Once the installation completes, you can point a browser to http://SERVER_IP:PORT (Where SERVER_IP is the actual IP address of the Citadel server and PORT is the port you configured during installation). You will be prompted for a username and password; enter the administrator user/password combination you created during installation and click Log in.

At this point, you will want to head on over to the Administration section and click on Domain Names and Internet Mail configuration. In this window (Figure B), you will want to configure the local domains for which the Citadel host receives email and any other domain necessary to meet your needs. You can create as many local domains as necessary.

Figure B

Out of the box, Citadel will work great as an internal collaboration tool. You can send email to other users (with the address username@localhost – where username is the actual username), chat, send private messages, and more. So long as you’re using this as a local-only solution, everything will work out of the box. If you’re looking to use Citadel as an internal/external tool, you’ll find Citadel reaches its limitations very quickly. In other words, Citadel is best suited as a local-only solution.

Once you’ve configured your domains, you should then head over to Administration | User account management | Add, change, delete user accounts and start adding users to the system.

For more information on further configuration for Citadel, make sure to check out their knowledge base.

A solid internal groupware suite

There are times when you need a groupware suite to serve internal needs only. If that describes your current position, you should give Citadel a look. Citadel offers a suite of tools you can get up and running quickly (with very little post-install configuration work). In fact, any small business would be hard-pressed to find an easier groupware server for internal communication.

Also see