Renew Let’s Encrypt certificates on Synology using acme.sh

The problem

I have a synology NAS server in my home that I would like to access from external networks. Obviously the only viable option is to use HTTPS to connect to its webpage. Before 2012, getting a certificate to use for HTTPS would cost you some money. With the advent of Let’s Encrypt this became completely free of charge, but not free of complexity if you know what I mean. The good news is that synology supports Let’s Encrypt certificates out of the box. The bad news is that it supports only the HTTP-01 method for customized domains. If you happen to use the synology DDNS service (you use the synology.me domain to access your NAS) then you could use the preferred method DNS-01 but that’s not my case since I have my own domain.

The problem with the HTTP-01 method is that you need to open port 80 or 443 to your NAS in order to make it work and this is something I am not willing to do. Furthermore many ISP’s block by default those ports. I definitely prefer the DNS-01 method as you don’t need to expose any ports to the internet. With this method, you prove that you control the DNS of your domain by putting a specific value in a TXT record under that domain name. The drawback here is that in order to do that, you need to have API access from your DNS provider.

Continue reading →

How to filter bootstrap gallery

Creating a basic filter for a bootstrap gallery using HTML and a bit of Javascript is a lot simpler than I thought. You can always go the long way with HTML / CSS / Javascript but if you don’t have much time like me or you want to just focus on getting something else done (again just like me) you can keep it really simple

Here is what we will see after going through this tutorial

Continue reading →

OpenHAB instances with MQTT and Zigbee

In this post we will see how we can control items i.e. lights from one openHAB instance to another using a Zigbee button and MQTT.

openHAB recently passed into version 3 which comes with a complete revamp of the GUI and a massive rewriting of the backend code. There are mainly two protocols that we will be using in this guide.

Zigbee is a well established smart home protocol that gains more and more traction especially due to lower prices compared to competitive protocols i.e. ZWave and MQTT is also a well established lightweight IoT protocol that facilitates message and data exchange between IoT devices and systems.

Continue reading →

Install docker-compose on Raspberry Pi

Introduction

I have recently been experimenting with docker on a raspberry pi at home. In case you don’t know docker is a pretty popular developer tool. You can find pretty much all the info you want on the internet so I am not going to explain much here. All I am going to say is that docker makes it easier for a developer to test and deploy applications with all the dependencies pre-built into a package called container.

Docker-compose takes docker containers a step further. Whereas docker cli helps you deploy a docker container, docker-compose helps you with a push of a button (or enter) to deploy multiple containers with pre-set configuration. More in the official pages or where else … the internet.

The installation of docker-compose on a Raspberry Pi is kind of problematic at least at the time of writing it hence the reason for this post.

Continue reading →

Launch multiple docker containers at once

We all know how to launch docker containers manually via the command prompt right ? If not, maybe I should write a guide on that topic as well although I am pretty sure the internet is full of such articles.

In this post we will find out how to launch multiple docker containers at once with docker compose. If you don’t have it installed, go ahead and install it following the official documentation here. If you are using a Raspberry Pi like me and you have difficulties installing it, follow my instructions here.

Let’s go!

Continue reading →

Hello world!

This is my first post ever. Chances are that this will only be read by myself and it is very likely going to be lost in the vast ocean of the internet. Creating useful content is an arduous task. This is my attempt at it

This website uses cookies. By continuing to use this site, you accept our use of cookies.