Posts with the tag Privacy:

Mastodon 4.2's content indexing gets it right

Mastodon 4.2.0 added per-user opt-in search indexing. I love this so much. People here have asked me to enable Elasticsearch on FRZ dozens of times. Of course users want to find toots easily without scrolling through hundreds of them! However, it presents significant privacy issues for people who don’t want their toots to be indexed. Who wants to make life easier for a stalker?

The new feature handles this thoughtfully. I can enable the indexing feature at FRZ, but it doesn’t process a user’s toots unless they deliberately turn it on for their own account. People who don’t want their toots to be indexed don’t have to do anything. I think this is the perfect balance between privacy and convenience: everyone gets to decide for themselves. Well done, Mastodon team. Well done.

Tracking blog traffic - but nicely

As of now, I’ve enabled Matomo web analytics on this blog (and others I control). I chose this for two main reasons: the software respects users’ privacy and all data is stored locally (and never shared with third parties). I wanted to see aggregated information like which pages are being viewed, but without knowing who viewed them. This seemed like a good, private way to accomplish both goals.

That's what I log about you

I deliberately log as little as possible about my users. My nginx logrotate config is configured to store one week’s worth of access and error logs:

/var/log/nginx/*.log {
    ...
    rotate 7
    ...
}

As of this moment, that looks like:

-rw-r-----  1 www-data adm     443615 Jan  5 08:29 freeradical.zone-access.log
-rw-r-----  1 www-data adm    5405613 Jan  5 06:25 freeradical.zone-access.log.1
-rw-r-----  1 www-data adm     395094 Jan  4 06:24 freeradical.zone-access.log.2.gz
-rw-r-----  1 www-data adm     407455 Jan  3 06:24 freeradical.zone-access.log.3.gz
-rw-r-----  1 www-data adm     375444 Jan  2 06:24 freeradical.zone-access.log.4.gz
-rw-r-----  1 www-data adm     474143 Jan  1 06:24 freeradical.zone-access.log.5.gz
-rw-r-----  1 www-data adm     344550 Dec 31 06:25 freeradical.zone-access.log.6.gz
-rw-r-----  1 www-data adm     452215 Dec 30 06:25 freeradical.zone-access.log.7.gz
-rw-r-----  1 www-data adm          0 Jan  5 06:25 freeradical.zone-error.log
-rw-r-----  1 www-data adm       1461 Jan  4 23:10 freeradical.zone-error.log.1
-rw-r-----  1 www-data adm        349 Jan  3 18:43 freeradical.zone-error.log.2.gz
-rw-r-----  1 www-data adm        458 Jan  3 03:35 freeradical.zone-error.log.3.gz
-rw-r-----  1 www-data adm        314 Jan  1 13:49 freeradical.zone-error.log.4.gz
-rw-r-----  1 www-data adm        428 Dec 30 16:01 freeradical.zone-error.log.5.gz
-rw-r-----  1 www-data adm        409 Dec 29 18:01 freeradical.zone-error.log.6.gz
-rw-r-----  1 www-data adm        387 Dec 29 05:47 freeradical.zone-error.log.7.gz

To be explicit: these are not usually processed in any way and are never used for analytics or tracking. I’ll occasionally (but rarely) use standard local Unix commands (grep, awk, etc.) to examine them directly on the server for troubleshooting, but that is their sole use and the only time they’re ever accessed.