[ OK ]Initializing kernel...
~/im/blog
Hire Me

Let's Talk

Got an infrastructure problem or need an extra hand? I'm open to discussing new projects.

Get in touch

Connect

Find me on social media and professional networks.

© 2026 Irfan Miral. All rights reserved.Developed byIrfan Miral
Privacy PolicyTerms & Conditions
HomeServicesAbout/ResumeBlogContactTools

Blog

Thoughts, tutorials, and insights from the trenches.

36 articles
2026-08-15• 3 min read
General

Relocating to Munich on Germany's Opportunity Card

Relocating to Munich on Germany's Opportunity Card: the bureaucracy, the programs that helped, and what's next.

Personal Munich Chancenkarte+2
2026-08-11• 6 min read
Cloud

Questions I Ask Before Recommending a VPS Provider

There is no single 'best' VPS provider. But there is a short list of questions that narrows down the options extremely fast, and almost none of them are on the specs page.

VPS Hosting Cloud Infrastructure Decision Making
2026-08-04• 6 min read
Hosting

Self-Hosting Nextcloud: What I Set Up Differently From the Defaults

Nextcloud's default install technically works. But a handful of specific settings around cron, caching, and upload limits separate 'it runs' from 'it runs well enough that people actually use it.'

Nextcloud Self-Hosting Linux Administration
2026-07-28• 6 min read
Security

Why ModSecurity Goes on Every Client Server by Default

ModSecurity paired with the OWASP Core Rule Set knows absolutely nothing about the specific application running behind it. That is exactly why it is so useful. It brutally catches the generic exploit attempts that hit every single server, regardless of what is actually running.

ModSecurity Web Application Firewall Security
2026-07-22• 5 min read
Databases

Redis as a Cache vs Redis as a Database

Redis usually gets introduced as 'just a cache.' A year later it is holding session data, rate-limit counters, and critical queues. The instance never changed, but its job did. Its configuration absolutely must change with it.

Redis Caching Databases
2026-07-18• 5 min read
Security

Is SSH 2FA Worth the Hassle?

Adding a TOTP code on top of key-only SSH sounds like great defense in depth. But before you break your automation, let's be honest about what it actually protects against.

SSH 2FA Server Security
2026-07-08• 5 min read
Databases

What I Wish I Knew Before My First MariaDB Galera Cluster

Galera's pitch of synchronous multi-master replication where every node has the exact same data is genuinely true. It just comes with a handful of operational realities that aren't obvious from the pitch, and that I learned the slow, painful way.

MariaDB Galera Database Clustering
2026-07-08• 5 min read
DevOps

Log Management on a Single Server

An ELK stack is massive overkill for one server, but 'grep through /var/log and hope' isn't a strategy either. There is a useful middle ground.

Logging Linux Administration Observability
2026-06-27• 5 min read
DevOps

Monitoring a Small VPS with Prometheus and Grafana

Prometheus and Grafana sound like enterprise tools for a dedicated ops team. But the setup for a single VPS is small enough to be worth it, and it scales perfectly when a second server shows up.

Prometheus Grafana Monitoring
2026-06-24• 5 min read
Security

Automating Let's Encrypt So You Never Think About Certificates Again

Let's Encrypt's 90-day certificates are designed to force automation. But I constantly find servers where the renewal cron job runs, but nobody told the web server to reload the new certificate.

Let's Encrypt SSL/TLS Automation