Generate PEM key- and truststores With Puppet

March 7, 2019

This post is a follow-up of Generate pkcs12 key- and truststores with Puppet.
In this post we are going to create PEM key- and truststores with Puppet.

PEM files are base64 encoded X.509 certificates. Enclosed between -----BEGIN CERTIFICATE----- and -----END CERTIFICATE----- multiple PEM files can be concatinated into key- and truststores. And that is exactly what we are going to do using a Puppet manifest.


Bash SSH host auto completion

February 21, 2019

By default the ssh command does not support auto completion for host names. However, it stores all hosts you have accessed in the ~/.ssh/known_hosts file. We can take this data and use it for an auto completion function.


Changing Habits - Meat Consumption

February 18, 2019

I would like to start a series about changing habits. In this series I want to ask a simple question about an habit I have and try to answer it from an economic point of view.

In this first post (and hopefully not the last) I would like to know if I should stop eating meat?


Generate pkcs12 key- and truststores with Puppet

January 30, 2019

In my last post I have showed how to generate pkcs12 key- and truststores using openssl and keytool.

For this post we assume that we want to automate the store assembling with Puppet. Puppet is a configuration management tool that shares many ideas with Ansible. In the world of Puppet you define a manifest file that describes a state of how a file, service or any type of resource should look like. Puppet applies these manifests and makes sure that the targeted system reaches the defined state.


Create pkcs12 key- and truststore with keytool and openssl

January 22, 2019

In my last post I’ve showed you how to create a custom certificate authority and sign a server cert using openssl without user interaction.

For this post I assume that we want to set up a webservice that requires a pkcs12 keystore. Using openssl and the java keytool we are going to create a pkcs12 store and add our ca cert, server cert and server key. Further, we assume that the application also requires a truststore containing the ca cert only.


Create a certificate authority and sign server certificates without prompting using openssl

January 21, 2019

Most of the times people want to get a certificate for the hostname localhost, let’s encrypt wrote a nice post about this, but sometimes people want a certificate for any hostname. And further, signed by a custom CA and if possible should the key material be generated without user interaction. In this post I have covered the less likely case.


Open multiple projects in Intellij

January 11, 2019

Most IDEs provide workspaces that contain multiple projects and thus enable you to work on mutliple projects in one instance of the IDE. IntelliJ, which has becom the defacto standard for Java Devs, does not support workspaces. So, how is it possible to open mutliple projects in one IntelliJ instance?


The Future of Authentication

January 7, 2019

The world is changing and so does it in 2019. Time to make so predictions for the new year.

I firmly believe that we will see huge progress in the field of secure user authentication. As you might know the current state of authentication is fundamentally flawed. Users set weak passwords, 2-factor authentication is a usability mess and accounts are compromised on a daily basis. These problems are well known and big tech companies have tried to tackle them on their own.


O3M 80 - Punk is Dead

January 4, 2019

Let’s start the new year with some punk and rock.


Puppet masterless project setup guide

December 8, 2018

This document is a proposal for a Puppet project setup. It covers the setup of masterless Puppet module and provides a layout for a proper project structure. It will give you an example for a nginx module that can be deployed locally and remote. Further the roles and profiles concept will be applied and coupled with the hiera configuration data.