Mail

digestsforthought - Daily digest of interesting Twitter accounts

digestsforthought is a small program that uses the Twitter API to select a random tweet from the last 50 tweets for a few accounts, and then mails a digest using SparkPost’s Transmissions API.

I started the project back in 2017 to scratch multiple itches. I wanted a way to keep up with some specific Twitter accounts. But I also wanted to learn:

  • Python
  • AWS Lambda
  • AWS CloudFormation
  • Twitter API

I had done a little Python before, but I had not used the other technologies. It was a fun project, and I learnt a lot playing with these technologies. I’ve used CloudFormation a fair amount at work since, and Lambda a little bit.

International Domain Names (IDNs) for mail for phekda.org

The following are some International Domain Names that I’ve used for testing mail clients or other mail processing systems in the past:

Punycode UTF-8 Web
xn--ss-2ia1b.phekda.org ðssæ.phekda.org http://www.ðssæ.phekda.org
xn--aa-yia.phekda.org aåa.phekda.org http://www.aåa.phekda.org

File::ExtAttr 1.06, mab2ldif

File::ExtAttr 1.06, mab2ldif

I released File::ExtAttr 1.06 to fix building on Mac OS X. File::ExtAttr provides an interface to extended file attributes (meta-data) that’s consistent across Linux, Mac OS X, *BSD, Solaris.

I also released mab2ldif, which takes a Mork-format address book (e.g.: as used by Thunderbird) and converts it into an LDIF file. You can import the LDIF file into Thunderbird. I wrote this to recover my old Thunderbird address book from an old computer that died. You can actually export the address book from Thunderbird into LDIF, but if Thunderbird won’t run, you’ll need this tool to get your data back.

postfix config-o-rama

postfix config-o-rama

I spent a lot of today finally setting up e-mail for my domain, phekda.org. My goals were:

  • Set up an SMTP SUBMIT server (running on port 587), so that I can send mail from @phekda.org addresses from anywhere.
  • Require mail to be submitted over TLS.
  • Authenticate the client by requiring that the client presents a certificate issued by my private certificate authority (CA). Since I’m only going to issue certificates to people/machines I trust, possession of a certificate is implicit authentication.

TinyCA

I used TinyCA2 to set up my own personal CA. It’s really easy to use. I created a CA for phekda.org. I also created a “bad” CA for testing that my postfix box would only accept certificates issued for phekda.org.