Setting up your own BitWarden password manager and sync server

One of the key requirements of pursuing Good Digital Hygiene is using strong passwords, and a different strong password for every application. This is relatively easy to do in theory, with the aid of clever software, but it's something desperately few people do well in practice. I'm going to explain how I've addressed this issue of digital hygiene for myself, and how you can do it for yourself, and your entire family, social circle, or community.

Configuring a Linux server to send email via the Postfix SMTP server using an external authenticating SMTP host

Just about any and every server needs to be able to send email - whether it's end-user-email, like password recovery services for a website to emails to system administrators reporting on the status of system backups and errors. The problem is that it's non trivial (understatement) to set up a mail server properly.

2020 OERF Open Technology Overview

As a matter of principle, the OER Foundation makes use of Free and Open Source Software (FOSS) wherever possible. Partnering with the Foundation provides an opportunity to share the experience of an organisation with hands-on experience in hosting all its technology infrastructure using FOSS.

The foundation has implemented a component-based approach selecting “best-of-breed” open technologies for assembling the OERu’s Digital Learning Environment (DLE) rather than providing learning materials through a single application like a Learning Management System (LMS).

Hourly versioned MongoDB backup

Because the collaboration of an open community is its real history, I place a high value on backing up the Rocket.Chat servers I'm responsible for, and especially the data they generate, held in MongoDB files (on the host) managed by a MongoDB container.

To do that reliably, I have set up a bash script which does an hourly backup of all MongoDB "databases" and automatically maintains 24 hourly, 7 daily, 4 weekly, 12 monthly, and 7 yearly snapshots of the databases.