In deze blog leg ik uit hoe je jouw Let’s Encrypt certificaat kunt gebruiken voor je OctoPrint installatie. Volg hiervoor de stappen hieronder.

Op je Raspberry Pi met OctoPrint

sudo apt-get install samba smb-client
sudo useradd gebruiker
sudo smbpasswd -a gebruiker
(vul nu een nieuw wachtwoord in)
sudo vi /etc/samba/smb.conf

Voeg de volgend inhoud toe aan file ‘smb.conf’

[Root]
   browseable = yes
   writeable = yes
   path = /
   revalidate = yes
   force user = root
   comment = Share to Root
   valid users = gebruiker
   available = yes

Herstart samba met:

sudo /etc/init.d/samba-ad-dc restart

Op je computer waarop je Let’s Encrypt certificaat automatisch binnenhaalt (in mijn geval mijn Debian Server):

mkdir /mnt/Octoprint

Edit file ‘/etc/fstab’ en voeg toe:

//<ip Raspberry met Octoprint>/Root /mnt/Octoprint cifs  password=wachtwoord,username=gebruiker 0 0

Voer je mounts opnieuw uit met:

mount -a

Maak verder een cron-job op deze computer met de volgende inhoud en roep deze 1 maal per week aan:

cd /etc/letsencrypt/live/<jouw-host> && cp privkey.pem /mnt/Octoprint/etc/ssl/server_cert.pem && cat fullchain.pem >> /mnt/Octoprint/etc/ssl/server_cert.pem && cat /etc/ssl/certs/dhparam.pem >> /mnt/Octoprint/etc/ssl/server_cert.pem && chmod 700 /mnt/Octoprint/etc/ssl/server_cert.pem

Log nu weer met SSH in op je Raspberry Pi met OctoPrint en edit file ‘/etc/haproxy/haproxy.cfg’

Verander in het blokje ‘frontend public’ de regel

bind :::443 v4v6 ssl crt /etc/ssl/snakeoil.pem

in

bind :::443 v4v6 ssl crt /etc/ssl/server_cert.pem

Herstart hierna de service met:

sudo service haproxy restart

Maak een port-forward aan op je router zodat je met jouw hostnaam op een specifieke poort bij je Raspberry Pi met OctoPrint kunt komen. Als het goed is kun je nu secure met jouw Let’s Encrypt certificaat inloggen op je OctoPrint.