Posts by "diditho"

Upgrading MariaDB 10.11 to 11.8 on Debian 12: A Safe Master-Slave Replication Guide

Running an older database version in production is not necessarily a problem, especially when it is stable and has been running reliably for years. However, there comes a point when security updates, performance improvements, and new features make upgrading a reasonable decision. Recently, I needed to plan an upgrade of a MariaDB environment running on… Continue reading →

MariaDB 11.8 Upgrade on Debian 12, Fixing Missing Compression Provider Plugins

Upgrading a database server is usually straightforward when everything goes according to plan. Update the repository, install the new packages, restart the service, and verify that the database is running. But sometimes, a successful package installation is only half the story. Recently, I upgraded a MariaDB Master–Slave replication environment from MariaDB 10.11.19 to 11.8.9 on… Continue reading →

Upgrade Node.js 20 to Node.js 24 on Debian 12 Using APT: A Security-Focused Guide

Node.js is a critical component of many production environments, powering REST APIs, background workers, web applications, and real-time services. Keeping the runtime updated is an important part of maintaining server security. On April 30, 2026, Node.js 20 reached End of Life (EOL). This means it no longer receives official upstream security updates. The October 21,… Continue reading →

How to Upgrade Wazuh on Ubuntu 24.04 and Fix a wazuh-manager Timeout During the Process

Upgrading Wazuh on Ubuntu 24.04 can look successful at first, only to stall at the final step when wazuh-manager fails to complete its post-install process. In this guide, I walk through a real upgrade from Wazuh 4.13.1 to 4.14.4, explain why the dashboard may still load while the API remains unavailable, and show how a simple systemd override can allow the manager to start cleanly and complete the upgrade.

Continue reading →

Docker SFTP Port Works on localhost but Times Out from Outside (Debian 12 + ferm + Linode NAT)

I hit a classic “it must be Docker” moment. This post documents what was actually happening and the minimal, correct fix. The setup Symptom, “Local open, remote timeout” On the server: Everything looked correct: Docker was listening on 0.0.0.0:22222, and localhost could connect. But from outside, connections to port 22222 timed out. First principle, don’t… Continue reading →