Lab Review/Reflection:

Lab 1 – Install Linux VM

This lab was about setting up the Linux virtual machine. I installed the VM and made sure it was running correctly so I could use it for the rest of the course.

At first, I had some trouble getting everything to run smoothly and understanding how the virtual machine actually works behind the scenes, especially with things like settings and booting it up correctly. It took some time to follow all the setup steps carefully and make sure everything was configured the right way.

This lab helped me understand how to properly set up a working Linux environment and gave me a strong starting point for the rest of the labs, since everything we did later depended on having the VM working correctly.


Lab 2 – Working with Command Line

In this lab, I practiced using the Linux terminal with commands like ls, cd, and pwd. I learned how to move through directories and find files.

One challenge was remembering all the commands and typing them correctly without mistakes, especially when switching between different directories and trying to understand how file paths work. I also got confused at times when I ended up in the wrong location and had to figure out how to get back.

This lab helped me become more comfortable using the command line and understand how important it is to navigate the system correctly, which is a basic but very important skill in cybersecurity.


Lab 3 – Working with vi Editor

This lab introduced me to the vi editor. I learned how to open files, switch between insert mode and command mode, and save changes.

The hardest part was remembering how to switch between modes and exit the editor, because it does not work like normal text editors and can be confusing if you press the wrong keys. I got stuck a few times trying to quit the program and had to retry multiple times.

This lab taught me how to edit files directly in the terminal and showed me why tools like vi are important for system administrators who work without a graphical interface.


Lab 4 – Group and User Management

In this lab, I created and managed users and groups using commands like useradd, passwd, and groupadd.

It was confusing at first to understand how users and groups are connected and how permissions are applied between them, especially when trying to figure out who has access to what. I had to really pay attention to how each command affected the system.

This lab helped me understand how systems manage multiple users and control access, which is very important for maintaining security and preventing unauthorized access.


Lab 5 – Password Cracking

This lab focused on password security and cracking techniques. I learned how weak passwords can be broken and why strong passwords are important.

One challenge was understanding how the password cracking tools worked and what the results meant, since there were many steps involved and it was not always clear what was happening at first. I had to take my time to understand each part of the process.

This lab helped me understand how attackers can break weak passwords and why it is important to use strong passwords and good security practices to protect systems.


Lab 6 – File Permissions

In this lab, I learned how to use chmod, chown, and chgrp to change file permissions and ownership.

The hardest part was understanding the numeric values like 755 and how each number controls different permissions for users, groups, and others. It took practice to fully understand how these numbers translate into actual access rights.

This lab helped me understand how Linux protects files and how to properly control access, which is important for keeping sensitive data secure and preventing unauthorized changes.


Lab 7 – Storage Management

This lab focused on managing storage and disk usage. I used commands like df and du to check how much space is being used.

One challenge was understanding how storage is organized and how to read the command outputs correctly, since they include a lot of information that is not immediately easy to understand. I had to take time to figure out what each column meant.

This lab helped me understand how to monitor and manage disk space, which is important for keeping a system running efficiently and avoiding problems caused by low storage.


Lab 8 – Shell Script

In this lab, I created basic shell scripts to automate tasks. I learned how to write simple scripts and run them in the terminal.

It was challenging because even small mistakes in the script, like missing symbols or incorrect syntax, could cause the script to fail completely. I had to carefully check my code and fix errors step by step.

This lab helped me understand how automation works in Linux and how scripts can be used to save time and make repetitive tasks easier.


Lab 9 – Task Automation

This lab built on scripting by automating tasks. I worked on creating scripts that could perform actions without needing to type commands every time.

One challenge was making sure the script worked correctly in different situations and didn’t break if something unexpected happened. I had to think more carefully about how the script runs.

This lab helped me understand how automation is used in real-world systems to improve efficiency and reduce human error.


Lab 10 – Networking Basics

In this lab, I worked with networking commands like ifconfig, route, netstat, ping, and host. I connected my VM using NAT mode and checked things like IP address, routing table, and network connections.

It was difficult at first to understand all the information shown in the terminal, especially with commands like netstat that display a lot of detailed network data. I had to take time to identify important parts like IP addresses and connections.

This lab helped me understand how systems connect to networks and how to test and troubleshoot connections, which is a very important skill in cybersecurity.


Lab 11 – Basic Network Configuration

In this lab, I continued working with networking by editing system files like /etc/hostname and /etc/resolv.conf. I used commands like cat and nano to view and change configurations.

One challenge was using sudo and making sure I edited the files correctly without making mistakes, since changing system files can affect how the entire system works. I had to be careful and double-check my changes.

This lab helped me understand how system configurations control network behavior and how small changes can affect connectivity and system performance.