Ansible local_action privilege de-escalation or: how to wait for a reboot

I increasingly use Ansible not only for glorious tasks like setting up my various VMs I use for prototyping but also for mundane things like resetting my personal laptop every time I get a new one or break it (dedicated readers of this blog will know me to do that a lot [2],[3],[4]). Most of … Continue reading Ansible local_action privilege de-escalation or: how to wait for a reboot

Securing a development server

In this post I talk about setting up and securely operating development tools like Jenkins and Gitlab on a server connected to the internet. All applications run behind a firewall and a reverse HTTP proxy which allows only HTTP requests from selected users through who authenticate themselves with client certificates. Putting web-facing software on the … Continue reading Securing a development server

Formatting USB flash drives for write speed

Flash drives enjoy a reputation for being fast and that certainly goes for high-end models with their elaborate memory controllers and multi-bank layouts. A fundamental "problem" with current flash memory technology is that writing even a single bit of information requires that an entire block of flash memory is reset first [1], which greatly reduces … Continue reading Formatting USB flash drives for write speed