web server

How to Use rsync for Efficient File Synchronisation on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Use rsync for Efficient File Synchronisation on RHEL 9

rsync is the Swiss Army knife of file synchronisation for Linux administrators. Unlike scp, which blindly copies every file every time, rsync computes a rolling checksum to identify changed file blocks and transfers only what has changed — making subsequent syncs dramatically faster and less bandwidth-intensive. It preserves file attributes (permissions, ownership, timestamps, ACLs, extended […]

Read more
How to Manage Users and Groups with useradd, groupadd and passwd on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Manage Users and Groups with useradd, groupadd and passwd on RHEL 9

While the earlier tutorial in this series covered the core useradd, usermod, and userdel tools for user lifecycle management, this guide goes deeper into the full toolkit for managing users and groups at scale on RHEL 9: bulk creation, password management with chpasswd, group administration with gpasswd, per-user resource limits with ulimit and /etc/security/limits.conf, user […]

Read more
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
How to Add and Delete Users on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Add and Delete Users on RHEL 9

User account management is one of the most fundamental administrative tasks on any Linux server. On Red Hat Enterprise Linux 9, every process, file, and network socket is owned by a user and group, making correct account hygiene essential for both security and auditability. Understanding the full lifecycle — creation, modification, and removal — and […]

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 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
How to Monitor System Resources with htop, top and vmstat on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Monitor System Resources with htop, top and vmstat on RHEL 9

Every Linux administrator needs a reliable toolkit for answering the question “why is this server slow?” The answer is almost always in one of four resources: CPU, memory, disk I/O, or network. RHEL 9 includes several powerful tools for diagnosing resource contention: top is included in every base installation and provides a real-time process table; […]

Read more
How to Manage Systemd Services and Units on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Manage Systemd Services and Units on RHEL 9

Systemd is the init system and service manager for RHEL 9 — it is PID 1, the parent of every other process on the system. Understanding how to manage systemd services is foundational to every other administrative task: installing Nginx means enabling the nginx service; configuring a database means understanding its unit file; debugging a […]

Read more
How to Configure sudo and Sudoers on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Configure sudo and Sudoers on RHEL 9

The sudo (superuser do) tool allows designated users to run commands with elevated privileges without sharing the root password. This is fundamental to the principle of least privilege: each administrator gets exactly the access they need for their role, no more. When access is misconfigured — for example with blanket ALL=(ALL) ALL entries or unsafe […]

Read more
How to Use tmux for Terminal Multiplexing on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Use tmux for Terminal Multiplexing on RHEL 9

Terminal multiplexing solves one of the most common problems in server administration: when your SSH connection drops mid-task, any running process in that session is killed. With tmux, your terminal sessions run inside a server-side process that persists independently of your SSH connection. You can detach from a session, disconnect, reconnect hours later from a […]

Read more
CHAT