Comments enabled

Today I enabled comments on this blog. You need to have an github account in order to make comment. This is because the main audience for this blog is developers and this should cut down on the spam. Comments are stored GitHub Issues using the Utterances comments widget. I chose Utterances because: ...

Adding a serial port to a QNAP TS-251D

I am using a QNAP TS-251D NAS. Because I would like to switch from QTS to Alpine Linux I though it would be useful to enable the serial port. The TS-251D has a built-in serial port that is already enabled and only needs to be connected. For that you need a number of parts: ...

Why Ansible?

As part of an effort of standardising my home lab I decided to migrate my ad-hoc configuration scripts into a more standard tool set. So I looked at: puppet chef ...

Inetd like service with systemd

This is an example of a socket-activated per-connection service (which is usually referred to as inetd-like service). A thorough explanation can be found at 0pointer.de. Define a socket unit The key point here is to specify Accept=yes, which will make the socket accept connections (behaving like inetd) and pass ...

Locking down SFTP

This is a small recipe to increase the security around a SFTP interface. In the /etc/ssh/sshd_config file include the following settings: Subsystem sftp internal-sftp This configures the sftp subsystem to use the internal sftp implementation. This is because inside the chroot, we usually will not have the normal ...

Python GUI

After looking a multiple options of GUI programming under python I eventually settled for tkinter. The main reason was that tkinter is very ubiquitous and initially though the learning curve wuld have shorter as I was very used to GUI programming using TCL/TK. Turned out that what I known TCL/TK did not translate ...