What you’ll need to follow along

To gain some understanding about OpenID Connect and Keycloak no tools are needed. If you however want to experiment and follow along yourself on how to get started with OpenID connect and Keycloak you’ll need some basic tools.

Make sure to have the following installed:

  • JDK 8+
  • Maven
  • IDE/Text editor
  • Docker or Podman

Source code can be found here github.com/GustafNilstadius/OIDC-Keycloak-Vert-X-example.

Background

The predecessor of OpenID Connect is OAuth2.0 ... [continue reading]

More Common mistakes in Automation

This post is a follow up to our previous post 10 common mistakes in automation earlier this year.

When discussing Gartners list of mistakes in automation, we were missing some that we quite often see at our customers and decided these should also be mentioned.

This post continues the list. If you missed the previous post, you might want to head over there first.


11 - Fragmentary automation

This mistake can happen fast, especially in ... [continue reading]

10 Common mistakes in Automation

In April 2022 Gartner published an article about ten common mistakes when focusing on automation within a business.

We felt our customers would benefit from deepening and adding to their post.

Therefore here are the ten (same) points Garter already made, but explained in depth and backed up by our experience within this field.


01 - Falling in love with a single technology

Quite a common problem we encounter when assisting with introducing automation. Often a business ... [continue reading]

I work with Linux. That shouldn’t come as a surprise considering where I work. My private system does not differ that much either. Since I also work with automation my private systems are naturally configured automatically as well. I honestly cannot help it.

Bash aliases are a minor part of my configuration deployment and I tend to follow multiple approaches for handling my aliases in my environment.

This post is about my approach on handling the main part of ... [continue reading]

The most common firewall setups reject inbound traffic initiated from the internet as such (strict ingress firewall), but let all traffic pass through as long as the connection was initiated from the intranet (open egress firewall). I strongly believe that ingress firewalls are overrated and that it makes as much sense (maybe even more sense) to close the egress firewall.

The Log4Shell case

Yesterday some of us got quite busy with patching things and searching for vulnerable software due ... [continue reading]

TLDR: Jump to the end for the quick explanations of how to do this.

At Redpill Linpro we use Zimbra for our email hosting.

It has the same email and calendar functionality as Microsoft Exchange, so it’s a great alternative to Office 365. Especially if you don’t want to have your data stored in Microsoft’s data-centers.

But if you like to use Microsoft Office, it’s not directly intuitive to get Outlook fully integrated with Zimbra. If you try to ... [continue reading]

Pipewire, the new default audio subsystem in Fedora 34, introduces support for the mSBC audio codec for the Bluetooth Headset Profile (HSP), which is used for transmitting bi-directional audio to/from Bluetooth headsets. The mSBC codec provides greatly improved audio quality over the CVSD, the default codec used with HSP. If you are using a Bluetooth headset to participate in teleconferences, you will most definitively want to use mSBC if your headset supports it. Your colleagues will sound better ... [continue reading]

GraphQL is a modern approach to APIs that simplifies integration. This is an introduction to what GraphQL is, and we build a simple GraphQL service with the help of Vert.X.

What you’ll need to follow along

This introduction will barely scratch the surface of the potential and power that GraphQL together with Vert.X offers. Understanding of programming and the REST protocol is assumed.

Make sure to have the following installed:

  • JDK 8+
  • Maven
  • IDE

Source code for ... [continue reading]

Getting a single random row, or a few rows, from a table in order to get representative data for example is a frequent need. The most common way to do this in PostgreSQL is using ORDER BY random() like:

SELECT id FROM data ORDER BY random() LIMIT 1 

But when run on a large table this can be very slow. ... [continue reading]

Backup verification for Veeam Agent for Windows

As mentioned in my previous post, we have some interesting projects involving Hyper-V. One of them being a way to automatically verify that our Windows server backups are functional.

This post is about how we’ve set that up.

TLDR: check the script on GitHub

Windows backup on OpenStack

Our main virtualization platform is OpenStack, which is awesome. And while we try to mostly utilize open-source solutions, there are times when that’s just not the best way to ... [continue reading]