web server

How to Use journalctl for Systemd Log Analysis on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Use journalctl for Systemd Log Analysis on RHEL 9

The Linux kernel’s systemd journal is a structured binary log that stores the output of every service, kernel message, boot sequence, and user session. Unlike traditional text-based syslog, the journal stores metadata alongside each log entry — the unit name, PID, UID, executable path, systemd unit state, and priority level — enabling far more precise […]

Read more
How to Schedule Automated Tasks with cron and anacron on RHEL 9 — step-by-step RHEL 9 tutorial on Progressive Robot

How to Schedule Automated Tasks with cron and anacron on RHEL 9

Automated task scheduling is the backbone of server maintenance: backups run at 3 AM, log cleanup happens daily, SSL certificates renew before they expire, and databases are vacuumed weekly. On RHEL 9, there are three scheduling mechanisms each suited to different scenarios. cron is the classic daemon that runs jobs on a schedule defined by […]

Read more
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 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
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
CHAT