Categories
Linux Networking Systems Administration

Importing a LetsEncrypt Certificate Generated by acme.sh into a Fortigate Firewall Using CLI

These are some tips I’ve put together on how to create a certificate using acme.sh then import it into a FortiGate firewall for use on the SSL-VPN or similar. Getting the Certificate and Key file I won’t go into too much detail on this – just use the acme.sh documentation to get a key+certificate: https://acme.sh […]

Categories
General Tech IoT

Using Nanoleaf Devices with Home Assistant – Including Setting Effects

Here’s some examples of how to use Nanoleaf lights with Home Assistant. Note that when this doc was written I was using Home Assistant v2021.2 with Nanoleaf firmware v5.0.0 Setting Up First, set up the lights using the Nanoleaf app, join them to your WiFi, etc. Then attach them to Home Assistant. The docs on […]

Categories
Linux Networking Programming Systems Administration

A Logwatcher Tool to Trigger Integrations After Changes in phpIPAM

We use phpIPAM to manage all our IP Addresses, and we have recently built integrations between phpIPAM and our Kea DHCP server for reservations, and also into our BIND DNS server. These have been running on a schedule, which has worked well, but doing it that way means that it can take a while after […]

Categories
Linux Networking Programming

Sending an email via Microsoft O365 SMTP Servers using Python

This is a simple script to send an email via MS’s O365 Service: Note how you need to set up an SSL context and perform .starttls() to properly create a secure connection.

Categories
Uncategorized

Why You Should Avoid Services Run by Advertising Companies

Inspired by the recent changes to the Facebook WhatsApp’s privacy policy, I decided to go through why I avoid services provided by advertising-based businesses. For more details on the WhatsApp changes, see: https://www.forbes.com/sites/carlypage/2021/01/08/whatsapp-tells-users-share-your-data-with-facebook-or-well-deactivate-your-account/ https://write.privacytools.io/right-to-privacy/getting-whatsapps-privacy-policy-prompts-heres-why Incentives Businesses are driven by their incentives, which are their business goals. The business goal of every for-profit company is quite […]

Categories
Uncategorized

KDE Plasma on Wayland – What Doesn’t Work Correctly

These are the things that I’ve run into on KDE Plasma running under Wayland that prevent me from using it full-time. I thought I would get them down here so I could keep track of them and hopefully provide feedback upstream as-needed: Screen Sharing in Microsoft Teams For me this is a deal-breaker for getting […]

Categories
Systems Administration

Learn Your Tools

Just read a post by Drew DeVault: https://drewdevault.com/2020/11/06/Utility-vs-usability.html I very much agree. So many people treat working with computers as “I don’t like it but I have to do it.” Often these people learn only the minimum required to get something done. I think that, as professionals, we need to treat computers as tools to […]

Categories
Linux Programming Systems Administration

Tips for doing “shell” scripting in Python

I’ve been moving a bunch of my shell scripts to python recently, because of how much better it handles the concept of “a process didn’t run successfully”. Consider the bash script: What happens here if Command 2 fails? Note that we still get the success message at the end – bash silently ignored our error-ing […]

Categories
General Tech Linux Systems Administration

New Project – coconut-deadmanswitch – A tool to monitor Cron Jobs and Scheduled Tasks

I’ve started a new project! I recently talked about my experiments with coconut-lang here: https://jaytuckey.name/2020/10/25/thoughts-on-coconut-the-compile-to-python-functional-language-extension/ I’ve now started a project using coconut! It’s what I’m calling a “Dead Man’s Switch” (DMS) monitoring tool. The idea is this: Every cron job / scheduled task sends an update to the DMS monitor The monitor records the updates […]

Categories
Linux Programming

Thoughts on Coconut – the Compile-to-Python Functional Language Extension

Today I have been playing with the Coconut Language – see http://coconut-lang.org/ – so I thought I would put down some thoughts on using it, going through what I like and find interesting. What Is Coconut? So what is coconut? From their website: Coconut is a functional programming language that compiles to Python. One super-neat […]