Status Update September 2021 —

Status Update September 2021

by Joshua Branson — October 01, 2021

Today, I have some fantastic news! I now have prosody serving my XMPP account. It's pretty fantastic!

Future work includes:

  • Migrating my account to use my new prosody account. This can be done with emacs jabber mode.

  • Setting up bogofilter or something like it for my prosody account. Though, I may not need this. It's possible that already has this.

  • Set up a web interface, where users can buy an XMPP account from me.

  • I manually imported the letsencrypt cert for prosody to use. I need a way to automate this process everytime the letsencrypt cert gets updated.

I finally got hosting my own email account! I can send and receive email from 'joshua' AT 'the afore mentioned domain name'.

I finally got email working for I have SPF, DKIM, and DMARC working. This should make it good enough that gmail will not flag my email as spam.

Further work includes:

  • setting up Sieve filtering with dovecot, so the server can do email filtering for me.

  • sanitizing the dovecot ssl-cert and ssl-key fields. I put in a /path/to/fullchain.pem/. I could sanitize it to produce a path of </path/to/fullchain.pem/. I could also add in some code to let it just uses the letsencrypt certs.

  • Setting up a web based email workflow with Drew Devault's Go based webmail software and configuring it to set up email filtering.

  • Creating opensmtpd records using (guix records) so that it is easier for other guix users to configure opensmtpd for their needs.

  • Configuring and setting up Opensmtpd to use a database for email accounts. This way, I can create a web interface to charge people for the email account and immediately activate their email account. Currently, if I want to add a new email account, I have to add a new user to guix system, and then I have to run guix system reconfigure config.scm.

  • Configuring opensmtpd to let dovecot handle email delivery via lmtp.

  • Figuring out how deliver email to <user>, and <user> is not a user with a corresponding /home/<user>/ on my linode guix system. Dovecot has methods to doing this, I just need to investigate them.

  • Configuring bogofilter or rspamd to work with opensmtpd. Currently my gnucode account is open to getting lots of spam!

  • Configuring opensmtpd to mark messages as junk if are not configured to use DKIM, SPF, and DMARC.

So if you would like an email account or an XMPP account, feel free to reach out. Paying for one of these accounts will help me contribute to guix and other free software projects.