
Unleash practical Linux mastery through real world job simulation projects. Gain hands-on experience, master server management, security hardening, and performance tuning for your IT career.
Explore the course repository, access the docs with VirtualBox and vagrant installation steps for Windows, Ubuntu, and Red Hat family, and prepare your hands-on projects.
Master essential vagrant commands to manage virtual environments. Use vagrant up to create and boot the VM, vagrant halt for safe shutdown, and vagrant destroy to remove it.
Clone the course project, provision labs with vagrant, and connect to lab virtual machines via ssh to practice Rocky nine Linux environments, then destroy labs when finished.
Monitor system health and performance by tracking CPU utilization, memory usage, disk I/O, and network traffic, automate with cronjobs, and set alerts and SAR-based reports.
Set up regular system resource monitoring on servers with htop, vmstat, and iostat, and create a script to alert on high disk usage and schedule monthly performance reporting with saw.
Analyze system performance with vmstat from the sysstat package, monitoring memory, swap, i/o, cpu, and viewing results in megabytes. Learn to detect memory leaks and set up notifications using awk.
Develop a bash-based disk usage alert for Linux servers that monitors root partition usage, triggers a Slack notification via webhook when thresholds exceed, and runs every 15 minutes via cron.
Develop a bash script that notifies you when free memory drops below 100MB, using the command that prints the value of free memory.
Conclude by reviewing installed monitoring tools (htop, vmstat, iostat), a disk usage alert script, and automated SAR reports to boost system health, performance, and reduce downtime.
Learn to strengthen Linux network defenses by using SSH access log auditing to monitor login attempts, timestamps, usernames, IP address, and commands, and deploy VPN to encrypt data traffic.
Configure and test a VPN for secure remote access, installing the VPN server, setting authentication and access controls. Regularly audit SSH logs to detect unusual activity.
Audit ssh access by inspecting /var/log/secure for failed password attempts and successful logins, identify brute-force activity via lastlog, and secure ssh configurations after investigation.
Secure ssh access by disabling root login and password authentication, enabling public/private keys, and enforcing non-root key-based login, with sshd configuration and optional VPN restriction.
Develop a bash script to monitor ssh failed login attempts in /var/log/secure, alerting via Slack when counts exceed five, and schedule it with cron every five minutes.
Install pritunl on ubuntu 22.04, configure hostname, install pritunl and mongodb, start and enable services, set up with setup key and mongodb uri, then access the dashboard with default credentials.
Configure pritunl by changing the username and password, set up domain or IP with Let's Encrypt SSL, enable dns routing, then add a server, attach an organization, and start it.
Create a vpn user profile in pre tunnel, download the profile, and connect with the pre tunnel or openvpn client to verify the vpn public ip and assigned private ip.
Test VPN to verify access control by restricting port 80 to the VPN IP. Connect to nginx and ssh via the nginx VM's private IP after establishing the VPN.
Develop practical Linux security skills by completing VPN and SSH auditing tasks, emphasizing ongoing protection and staying safe as you conclude the network configuration module.
Configure a Laravel project environment on Ubuntu, installing nginx, PHP, MySQL, and an SSL certificate, with specific versions, and prepare for BGP routing.
Obtain an SSL S.com certificate for your domain with a 30 day trial, generate a CSR and private key, validate via DNS CNAME in Route 53.
Install and configure MySQL 8 on a VM, update packages, set hostname, start and enable the service, and secure root with mysql_secure_installation.
Create a MySQL database and a dedicated user, grant all privileges, and validate setup by logging in and selecting the database for the project environment.
Update system packages, install PHP 8.1 and required modules, create and configure a Laravel project under /var/www, install composer, and set production environment and database credentials in .env.
Install and configure Nginx and php-fpm, adjust services to run as Ubuntu, and enable them. Create SSL certificates, DNS records, and validate the secured Laravel site.
Reflect on configuring a Laravel app with Nginx, MySQL, and SSL on Ubuntu to build a robust production environment and deploy web applications confidently.
Learn to deploy and manage antivirus software on Linux, configure ClamAV, run system scans with real-time notifications, and manage vaults, perform vulnerability scans, and analyze reports.
Scan a directory recursively with clam scan, review the scan summary, and detect infected files. Remove threats with --remove and save reports with -L, while exploring --move and --copy options.
Configure real-time scanning with clamav on linux by editing config, setting the unix socket path, enabling on access scanning for /backup, and validating with a test file and service restart.
Integrate clamav with Slack to receive real-time malware alerts by building a bash script that tails the clamav log, detects 'found' patterns, and posts alerts via a Slack webhook.
Install vuls on Ubuntu 22.04 and install Go 1.21. Build and install vuls, then fetch local vulnerability databases with go val dictionary and ghost for Red Hat and Ubuntu.
Configure vuls to scan remote Linux servers using a toml config, define servers and oval sqlite3 dictionaries, run scans, generate CVSS-filtered reports, and send alerts to Slack.
Complete antivirus and vulnerability management assignment by adding a cron job every 15 days at 12 a.m. to send vulnerabilities with score seven or higher to Slack via valves report.
Deploy and manage antivirus software on Linux environments with ClamAV, enabling real-time scanning and notifications. Install and configure vaults, run vulnerability scans, and analyze reports to strengthen security and compliance.
Learn the network file system (NFS) architecture, mounting process, and export configuration. Explore use cases for centralized storage, remote access, and collaborative file sharing.
Develop and implement a Linux backup strategy using full, incremental, and differential backups with tar and rsync, aligning frequency to recovery time and point objectives, and testing disaster recovery.
Set up and configure an NFS server for network file sharing and implement offsite backups with tar for full backups, rsync for incremental and differential backups, via a shell script.
Install the NFS kernel server, create and export /var/nfs/general, set ownership to nobody nogroup, run exportfs -a, restart and enable the service, then mount from a client at /mnt/nfs/general.
Install lvm2, initialize physical volumes, create a vg_nfs and lv_nfs of ten gigabytes, format ext4, and mount to /nfs_storage. Then share the volume via NFS with exports and client mounting.
Configure a raid 1 array with mdadm, format as ext4, mount it under /raid_storage, and share the storage over the network using nfs.
Mount the nfs shared raid directory on the client vm using the same approach as the lvm to complete the data storage assignment.
Set up an NFS server for file sharing in Linux networks, automate offsite backups with a shell script using tar for full backups and rsync for incremental and differential backups.
Automate configuration, management, and deployment across your IT infrastructure with Ansible’s agentless, YAML-based playbooks. Explore idempotent tasks, orchestration, provisioning, and a thriving community to accelerate DevOps workflows.
Install and verify Ansible on Ubuntu 22, updating the system, installing necessary software properties, and running a localhost ping to confirm automation readiness.
Explore how Ansible uses yaml playbooks to target hosts, sequence tasks, and trigger handlers. Understand variables, inventory, become true, and how changes auto restart Apache.
Automate the deployment of a full stack application using Ansible, including secured MySQL setup, a Node.js backend, and Nginx frontend, while building reusable roles and playbooks for scalable DevOps.
Automate a three-tier web app with Ansible, deploying and configuring MySQL, Node.js, and nginx. Ensure a seamless front end, robust back end, and reliable data management.
Automate a three-tier web deployment with Ansible, configuring MySQL, preparing a NodeJS backend with npm and PM2, and serving the frontend with nginx.
Set up a secure MySQL deployment with an Ansible role: install server, configure security, manage users and databases, deploy templates and scripts, and automate schema import.
Deploy a node.js backend with an ansible playbook that installs node and npm, uses pm2 to run app.js, templates app.js with jinja2, and checks the /posts endpoint.
Build a front-end deployment playbook with Nginx and Ansible, installing Nginx, removing default config, preparing the front-end directory, deploying index.html, templating script.js with the backend URL, and enabling Nginx.
Automate a three tier web deployment with Ansible by building and executing a multi tier playbook that deploys MySQL, back end, and front end across inventory groups.
Learn Linux by Building Real Projects for Real Jobs!
This hands-on Linux course is your gateway to mastering system administration through 6 practical projects built on real-world job tasks. Designed for those with basic Linux knowledge, This course is designed to take you through hands on training of building projects to understand how Linux actually works in a job environment. If you already know how to use the terminal and want to go beyond theory, this course is for you.
What Makes This Course Different?
Unlike typical Linux tutorials, this course offers real-world simulations of the actual responsibilities of a Linux admin. You'll complete projects that involve system monitoring, network security, automation, and full-stack deployment, everything employers look for in a Linux professional.
By the end, you'll have a portfolio of 6 real Linux projects and the confidence to handle production environments.
Why Enroll?
This course is your best investment if you're aiming to land a Linux sysadmin or DevOps role. You’ll build critical skills through realistic scenarios and complete system-level tasks with tools like Ansible, ClamAV, and LVM.
Course Projects
Project 1: System Health & Performance Monitoring
Master tools like htop, vmstat, iostat, and sar to analyze system health and automate reporting and alerts with Bash scripting.
Project 2: Network Configuration & SSH Security
Audit SSH logs, harden access, write monitoring scripts, and deploy a VPN using Pritunl for secure remote access.
Project 3: Linux Server Deployment
Deploy a complete LAMP/LEMP stack using MySQL, Laravel, and Nginx. Issue SSL certificates and configure the full web stack manually.
Project 4: Antivirus & Vulnerability Management
Install ClamAV, write automation scripts, enable real-time malware scanning, and scan with Vuls. Get notified via Slack integration.
Project 5: Data Management & Backup Automation
Configure NFS, RAID, LVM, and implement Linux backup strategies (full, incremental, differential) with automation.
Project 6: Full-Stack App Deployment with Ansible
Deploy MySQL, a Node.js backend, and an Nginx frontend using Ansible. Learn playbooks, handlers, roles, and real-life workflows.
Why Learn from Me?
As a Linux instructor with 10+ years of experience and a track record of successful DevOps training, I teach from real-world knowledge, not just theory.