Package Management

How to Configure Log Rotation with logrotate on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Configure Log Rotation with logrotate on RHEL 9

Log files are the primary diagnostic tool for server administrators — but without rotation they become a problem in their own right. An unrotated /var/log/nginx/access.log on a busy server can grow to tens of gigabytes within weeks, filling the filesystem, crashing the logging application, and making the log itself unusable because no tool can efficiently […]

Read more
Initial Server Setup with RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

Initial Server Setup with RHEL 9

Red Hat Enterprise Linux 9 (RHEL 9, codenamed “Plow”) is the most significant release of RHEL in years, built on Linux kernel 5.14, OpenSSL 3.0, and shipped with a hardened-by-default security posture including SELinux enforcing mode, nftables as the default firewall backend, and full support for the latest POWER, ARM, and x86_64 architectures. Whether you […]

Read more
How to Configure the Firewall on RHEL 9 with firewalld — step-by-step RHEL 9 tutorial on Progressive Robot

How to Configure the Firewall on RHEL 9 with firewalld

Red Hat Enterprise Linux 9 uses firewalld as its default firewall management daemon, backed by nftables as the kernel netfilter framework (replacing iptables which was the default in RHEL 7 and earlier). firewalld provides a zone-based model where each network interface is assigned to a trust zone — public, internal, dmz, trusted, and more — […]

Read more
How to Configure Fail2Ban to Protect SSH on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Configure Fail2Ban to Protect SSH on RHEL 9

Even with SSH key authentication enabled, a badly configured or temporarily accessible server with password auth still faces a constant barrage of brute-force login attempts. Fail2ban monitors log files for authentication failures, counts them per source IP, and when a configured threshold is crossed it issues a temporary ban by injecting a drop rule via […]

Read more
How to Sync Time with Chrony on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Sync Time with Chrony on RHEL 9

Accurate time synchronization is not optional on a server — it is a hard requirement. TLS certificate validation fails when the clock is wrong by more than a few minutes. Kerberos authentication rejects tickets with a clock skew over 5 minutes. Cron jobs fire at the wrong time. Log correlation across multiple servers becomes impossible […]

Read more
How to Configure Automatic Security Updates on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Configure Automatic Security Updates on RHEL 9

Unpatched software is the leading cause of server compromise. The majority of publicly disclosed vulnerabilities already have patches available by the time attackers start actively exploiting them — the window between patch availability and active exploitation has shrunk from months to days. Manually patching servers is error-prone and inconsistent at scale. Automatic security updates ensure […]

Read more
CHAT