What you'll learn:
- Linux Administration with Troubleshooting Skills
- Linux basic concepts,Introduction & History of Unix/Linux
- Linux Interview Questions and Answers
- Bash profile, Variables & Standard Input output Redirecting
- Linux User Administration
- Permissions in Red Hat Linux
- Controlling Access to files with ACLs
- Process Management
- Kernel Modules
- Disk Partitions, File Systems Creations & RAID Configuration
- Logical Volume Manager Administration
- RPM (Red Hat Package Manager)
- YUM (Yellowdog Updater, Modified)
- Linux OS Minor Upgrade
- FTP - File Transfer Protocol
- Apache Web Server Administration
- DNS (Domain Name System)
- Samba Server Concepts & Configuration
- Network File System (NFS)
- Automating Installation using kickstart
- Networking Concepts in Linux
- Linux Performance Monitoring
- Troubleshooting Linux Boot Problems in Linux (Basic System Recovery)
- Overview of Red Hat Enterprise Linux 7
- GRand Unified BootLoader (Grub2)
- Kdump configuration on RHEL 7
- Overview of Red Hat Satellite 6.2
- Managing SELinux Security
- Backup and Restore
- Linux Commands Tutorials
- Advanced Linux Commands
- Linux Crontab
- OpenSSH
- Postfix Mail Server Configuration
By the end of the course, you will:
Confidently utilize the Linux operating system to enhance your productivity and advance your career.
Execute everyday computing tasks efficiently from the Linux command line.
Course Outline:
Introduction to Linux: Basic Concepts and History of Unix/Linux
· Introduction to Unix
· History of UNIX
· What is LINUX
· History of Linux
· Linux Distributions
· Unix File System
Step-by-Step Guide to Installing CentOS 9 on Oracle VirtualBox
· Overview of Steps to Install CentOS 9 on Oracle VM
· Download and Install VirtualBox
· Download CentOS 9 ISO
· Create a New Virtual Machine
· Configure the Virtual Machine
· Start the Installation
· Install MobaXterm and PuTTY to access the virtual machines
· Access the virtual machine using MobaXterm and PuTTY
Linux Commands Tutorials
· Lecture on various commands with proper explanation with examples in a live environment.
· Overview of File System Structure
· pwd, cd, ls, less, cp, file mkdir. more. mv, cat, rm rmdir, wc, dd, head, tail, touch, ln etc
Bash profile, Variables & Standard Input-output Redirecting
· User's home directory
· .bash_profile, .bashrc & .bash_logout
· How to set PATH & alias in .bashrc profile
· Familiar with Variables
· Bash variable, Environmental variable & System Variables
· Lab
· Standard Input & Output Redirecting ( > , 2> ,&> )
· Standard Input and Output
· Redirecting Output to a File
· Redirecting Output to a File
· Lab
Linux User Administration: Best Practices
· Overview of User Administration
· Different User Account Types
· User Administration Files
· User Account Creation
· Configuring a User Account with Custom Attributes
· Linux User Groups: Primary vs. Secondary
· Usermod - Managing User Accounts
· Modifying User Account Groups in Linux
· Modify a User's Home Dorectory in Linux
· Modify a User's Shell in Linux
· Set Accout Expiration Date
· Overview of Shadow File
· Structure of the Shadow File
Managing User Password Expiration with the Chage Command
· Overview of Chage Command
· Set Minimum Password Age with Chage
· Set Maximum Password Age with Chage
· Set Password Warning Period with Chage
· Set Password Inactivity Period with Chage
· Set Account Expiration with Chage
· Configure Global Password Aging Policies
· Troubleshooting user and Group Issues in Linux
Permissions in Red Hat Linux
· Basic File Permissions
· User-Based permissions groups
· Permission Types
· Change of permissions & ownership
· Special Permissions
· Setuid, Setguid, Sticky bit, ACL, etc
· Two Labs to demonstrate the permissions from a real IT industry environment.
Controlling Access to files with ACLs
· Access Control List Concepts
· Set ACLs on files
· Default ACL
· Practice Lab Session on set acl on files
· Practice Lab Session on set acl on directories
· Practice Lab Sessions on a mask to limit the set of permissions
· Practice Lab Session on default ACL
· Practice Exercise - Scenario-based activity
Linux Crontab
· Overview of Linux Crontab & its format
· Schedule a job for a specific period of time
· Schedule a job for more than one instance (e.g. twice a day)
· Schedule a job for a specific range of time
· Schedule a job every weekday during working hours
· how to view crontab entries?
· Schedule a job for every minute using cron
Linux Find Commands
· Basic find commands for finding files with names
· Find files based on their permissions
· Search files based on owners & groups
· Find files and directories based on date & time
· Find files and directories based on size
OpenSSH
· Overview of OpenSSH
· What Are Some Of The OpenSSH Features?
· OpenSSH options are controlled through the sshd_config file
· Lab Session
Telnet
· Overview about telnet
· Configuration of telnet server on Linux
· Xinetd Service
Process Management
· Understanding ps commands with custom properties & Nice values etc
· Different stats of a process like "D", "S", "T", "Z" etc
· Kill commands to terminate the process
· Lab
Kernel Modules
· What is Kernel & its features
· Kernel Modules
· Commands to manipulate the kernel (insmod,lsmod,modinfo,modprobe &rmmod)
· How to know the name of the module or kernel driver for any device like lan
· Lab
Disk Partitions, File Systems Creations & RAID Configuration
· Creating the partitions in a simple disk using fdisk
· Understanding the different options in fdisk utility
· Creating File Sytems using (ext3/ext4/xfs FS)
· Mounting/Umounting FS
· Entry in fstab
· Introduction to RAID
· Concepts & features of RAID
· RAID Level
· How to configure the different levels of Raids like (0,1,5,6, 10, etc.)
· Lab Sessions
Logical Volume Manager Administration
· LVM Architecture Overview
· LVM Components
· LVM Logical Volumes
· Logical Volume Creation Overview
· Growing a File System on a Logical Volume
· Logical Volume Backup
· LVM Administration with CLI Commands
· Using CLI Commands
· Physical Volume Administration
· Creating Physical Volumes
· Displaying Physical Volumes
· Preventing Allocation on a Physical Volume
· Resizing a Physical Volume
· Removing Physical Volumes
· Volume Group Administration
· Creating Volume Groups
· Adding Physical Volumes to a Volume Group
· Displaying Volume Groups
· Removing Physical Volumes from a Volume Group
· Changing the Parameters of a Volume Group
· Activating and Deactivating Volume Groups
· Removing Volume Groups
· Overview of LVM Metadata
· Metadata Contents
· How to identify and recover failed LVM disk
RPM (Red Hat Package Manager)
· Install: It is used to install any RPM package.
· Remove: It is used to erase, remove or un-install any RPM package.
· Upgrade: It is used to update the existing RPM package.
· Verify: It is used to query about different RPM packages.
· Query: It is used for the verification of an RPM package.
YUM (Yellowdog Updater, Modified)
· Overview of YUM
· Configuration& and installation of yum on Red Hat Linux Server
· Lab-1
· Lab-2
· Yum History Command
· Reverting and Repeating Transactions like undo & redo using yum command
Linux OS Minor Upgrade
· Linux OS upgrade from RHEL 7.1 to RHEL 7.2
· Lab Practice Sessions
File Transfer Protocol
· Overview of FTP Server
· Installation and configuration of FTP Server
· Lab-1
· Lab-2
Apache Web Server Administration
· Basic Setup
· Verify installation
· Package files
· Main configuration file(s)
· Backup
· Edit the httpd.conf configuration file
· ServerRoot
· PidFile
· ServerName
· Add site to the host's file
· DocumentRoot
· ErrorLog
· Listen
· Create your HTML documents
· Start the Web Server
· Access the website
· Local access
· Internal & external access
· Summary of basic setup
DNS (Domain Name System)
· Overview of DNS
· Understanding root & top-level domains
· How DNS works practically
· What happens when I type any website name in the address bar of the browser
Samba Server
· Overview of Samba Server
· Features of Samba Server
· How Samba Server Works
· Samba File sharing Server
· CIFS File System
· Practice Lab Sessions
Postfix Mail Server Configuration
· The structure of the Email System
1.1 Mail User Agent
1.2 Mail Transfer Agent
1.3 Mail Delivery Agent
1.4 SMTP
· Configuring an RHEL Email System
· Postfix Pre-Installation Steps
· Installing Postfix on RHEL 7
· Configuring Postfix
· Starting Postfix on an RHEL System
· Configure a Null Client
· Relayhost
· Introduction Dovecot, Imap & pop3
· Configuring Dovecot
· Thunderbird - Mail User Agent (Configure Mail Box)
Securing & hardening a Linux System
· Linux Physical Security
· How to break root password
· Securing the grub menu
· Reset root password from rescue mode
· BIOS Protection
· General Security
· Keep your system updated
· Turn off IPv6
· Disable USB Stick to detect
· Restrict Users to Use Old Passwords
· Check Password Expiration of a User
· Password Expiration - Lab Session
· Verify accounts for an empty password
· Verify accounts with "Zero" UID
· Review logs regularly
· Keep /boot as read-only
Managing Server Firewalls
· Firewall concepts
· About nftables, features, and advantages of firewalld
· Firewalld components, pre-defined zones
· How packet flows through the firewall
· Check firewalld services - Lab Session
· Adding and Removing Services & Port from Firewall Server - Lab Session
· Add Services Permanently in Firewalld - Lab Session
· Add HTTP Service in firewalld - Lab Session
· Port forwarding - Lab Session
· Conceptual discussion about Masquerading, Packet Flow in Firewalld
· Masquerading with Port Forwarding - Lab Session
· About Rich Rules in Firewalld
· Specifically allow a Server using Rich Rules - Lab Session
· Allow Telnet Port, SSH with log-prefix using Rich Rule - Lab Session
· Accept, Reject, Drop - Lab Session
Network File System (NFS) on Linux
· Overview of NFS Server
· Installation and configuration of NFS Server
· Lab-1
· Lab-2
Automating Installation using Kickstart
· Overview of Kickstart Server
· Features of Kickstart Server
· Configuration & Installation of Kickstart Server
· Configuration of dhcp, tftpd, nfs for Kickstart Server
· Configuration of kickstart config file using graphical mode
· PXE Boot Environment
· Lab Session
· Unattended Client boot and do the installation via network
Networking Concepts in Linux
· New Sets of commands introduced in RHEL 7 for managing the network interfaces.
· Check the status of ethernet interfaces
· Add and configure the new ethernet interface
· Activate the network services
· Commands to change the network properties of an existing interface
· Delete the ethernet interface
· Learning various new commands related to managing network interfaces.
· Overview of Routing Table
· Understanding the output of netstat -rn or route -n output
· Lab
Linux Performance Monitoring
· Introduction about Performance monitoring in Linux
· Important four subsystems that need to be monitored.
1. CPU
2. Memory
3. IO
4. Network
· Familiar & understanding with CPU Utilization
· Like Context switches, Run Queue, CPU utilization & Load Average
· Familiar & understanding with Memory Utilization
· Familiar & understanding with I/O Analyses
· Familiar & understanding with Network Monitoring
· Familiar with various Commands to manage performance issues in Linux Servers
· top
· vmstat
Managing SELinux Security
· Introduction - SELinux
· SELinux Security Concepts
· Changing SELinux Modes
· Practice Lab Sessions
· Changing SELinux Contexts
· SELinux Booleans
· Audit logs & troubleshooting SELinux
Backup and Restore
· Overview of Backup
· Various commands for backup
· Types of backup
· Full backup, Incremental backup, and differential backup
dump command to take backup & restoration
Advanced Linux Commands
· dig, nslookup, rsync, scp, ssh, sftp, find, grep, locate, df, du, lsof, ps, top, who,cut, sort, vi, sed, awk, tar, gzip, bzip2 etc
· useradd, userdel, usermod, groupadd, groupdel, id, chage, chroot, chown etc
· mount, umount, fdisk, mkfs, fsck,/proc, uptime etc
· ping, nslookup, telnet, ifconfig, ifconfig-a, netstat -a etc
· systemctl -at service, systemctl -t service --state=active, systemctl start name.service, systemctl enable name.service etc
· pvs, vgs, pvdisplay,lvs, lvdisplay, pvcreate, pvremove, vgcreate, vgrename, vgremove, vgextend, vgreduce, lvcreate, lvextend, lvreduce,fdisk, vgexport, vgimport, vgcfgrestore, vgcfgbakcup, watch, whoami, passwd, su etc.
Linux Bash Shell Scripting: A Practical way of Learning
Introduction of Shell Programming
· What is Bash Shell?
· Types of Shell available in Linux
· About Shell Scripting
· Bash Shell Startup Scripts
· User’s Home Directory - .bash_profile, .bashrc & .bash_logout
· Shebang
· Create a simple Shell Script
· Setting up permissions on a script
· Debug a Script
The Shell Variables & Environment
· Bash Variables
· Environmental Variables
· System Variables
· Assign values to shell variables
· Customize the bash shell environments
· set, env & export command
· Rules for naming the variable name
· Simple Script using the echo command
· Quoting
· There are three Type of quoting
· The double quote
· The single quote
· The Backslash
· User's Input via Keyboard
· Read Command
· IFS
· Practice Lab Session
Arithmetic Operations
· Performing Arithmetic Operations
· Create an integer Variable
· Create the Constants Variable
· Path name expansion
· Wildcards [*], ?, [..] etc
· Create & use aliases
· Practice Lab Sessions
Industrial Project to Completely Automate the Pre-validation report
· A Shell Script to collect the required information from a server
· The Bash Color
· Writing Color Text
· Various Color Codes for Foreground & Background Text
· Lab Session on Bash Color
· Script to fetch the system information i.e system_details
· Schedule the script via cron
· Final Script to fetch the environment report with a single click
· Lab Session
Conditional Statements (Decision Making)
· Overview of conditional execution
· What is Condition?
· Boolean value (True & False)
· If else statement
· Lab Session on if..else..
· if..elif..else..fi statement
· test command
· Logical AND &&
· Logical OR !!
· The exit status of a command
· Numeric Comparison
· String Comparison
· File Attributes Comparison
· Shell Command line parameters
· Positional parameters via special shell variable
· Practice Lab Session
Bash Loops
· Overview of loop statement
· for loop statement
· Lab on for loop
· for loop using C like Syntax
· for loop using command-line arguments
· Nested for loop statement
· Chessboard using a nested loop statement
· While loop statement
· Lab Session - read a text file line-by-line or using IFS
· infinite while loop
· case statement
· Lab session on case statement
· Create a simple menu-driven program or automation tool Using Case Statement
· Industrial Project
· Discussed various scripts using for or while loop
Shell Redirection & Process Management
· Input Output Redirection in Linux
· Lab Session on redirection
· Pipelines in Linux
· tee command
· file descriptor (fd) to file for output
· file descriptor (fd) to file for input
· file descriptor (fd) for reading & writing
· Practice Lab Session
· Overview of a Process
· Foreground & background Process
· Various Stats of a process
· Lab Session
Functions
· Defining functions
· Displaying functions
· Nested functions
· Lab Session - writing functions
· Calling functions
· Local & global variables
· Passing arguments into a function
· return statement
· Practice Lab Sessions
AWK
· Introduction Awk
· Pattern matching
· User-defined variables in awk
· Awk pre-processing
· Awk post-processing
· Practice Lab Session
SED Stream Editor
· Introduction
· Replacing or substituting string.
· Replacing the nth occurrence of a pattern in a line
· Replacing all the occurrence of the pattern in a line
· Changing the slash (/) delimiter
· Using & as the matched string
· Duplicating the replaced line with /p flag
· Replacing string on a specific line number
· Replacing string on a range of lines
· Replace on lines which match a pattern
· Deleting lines
· Add a line after a match
· Add a line before a match
· Last Lecture