Linux System for Cybersecurity
This course introduces the basic operations in major Linux distros for cybersecurity using both graphical interface and command-line interface. Students will learn about the basic installation and configuration, file systems management, shell scripts, and user authentication in Linux systems. The learning outcomes for this course are as follows:
1: Introduce the basic concept and knowledge about different Linux distros, including the most popular distribution for cybersecurity, Kali Linux.
- Install and operate different Linux distros locally and remotely (on AWS cloud)
- Understand the ownership and permissions of the files and directories
- Understand the shell scripts
2: Perform essential system administration functions, such as network configuration,
process and log administration, and software management.
3: Perform security tasks, such as foot printing, firewalls, and tools in relation
to Intrusion Detection.
Labs
In Lab 1, we created a virtual Linux machine and practiced basic commands. The lab itself was simple, but I found the Linux setup and and learning how it worked to be the most challenging part of this lab.
Lab 2 involved working with the command line and learning fundamental Linux commands. The most challenging part of this lab for me was interpreting the error messages and determining how to fix them.
Lab 3 introduced vi editor and the basic modes, functions, and commands involved. Understanding the differences between modes was the hardest part of this lab for me, as I would often use commands in the wrong mode and have trouble fixing my mistakes.
Lab 4 focused on managing groups and users within the system. In this Lab, I had trouble understanding some functions/commands and what they did; for example, in Task B, step 12, I couldn’t figure out why the user wouldn’t delete.
In Lab 5, we tested the strength of different passwords using the John the Ripper password cracker. I found this lab enjoyable, however, I ran into trouble when I discovered that the Rockyou text file was not included with my personal Linux version. As a result, I had to switch to the school’s version of Linux to complete the lab.
In Lab 6, we practiced adding and removing file permissions for users and groups. I found this Lab to be pretty challenging, especially when I reached Task C. The file permissions did not behave as i thought they would; I later discovered that I had used the wrong command, and it turned out to be an easy fix.
In Lab 7, we worked with local storage systems. We used commands to check the file system and create virtual disks, partitions, and filesystems. I didn’t run into much trouble during this lab, but the most challenging aspect for me was finding and highlighting the differences when making changes.
Lab 8 introduced skills and techniques used with shell scripting. I enjoyed this lab because it combined skills I’ve learned previously, like programming in Python/Java and working with the vi editor. I did have some formatting issues when the tasks would run, however, they were easily fixable.
In Lab 9, we used shell scripting as a foundation to explore task automation using tools like crontab. This lab was more difficult for me than the previous one because it had many steps and several new commands, and I faced more challenges when resolving errors.
Lab 10 differed from the previous labs by shifting the focus away from Linux operations and instead prioritizing networking concepts and binary fundamentals. I enjoyed this lab because the values were easy to figure out once I knew the pattern. The most challenging part of this lab for me was discovering how to get one value from another.
Lab 11 was the final lab of CYSE 270, and also one of the most challenging for me. I encountered multiple issues because my personal Linux did not include the necessary tools. As a result, I switched back to the school’s Linux system to complete the lab, however, I could not change the network connection from NAT to bridged in this Linux system.
Reflection
Overall, I thoroughly enjoyed CYSE 270 at Old Dominion University, where I gained foundational, hands-on technical skills in Kali Linux/Virtual machines, secure system administration, and cybersecurity operational tools that support my career goals. The course was engaging, challenging, and reinforced principles from previous courses, giving me confidence in my ability to apply essential cybersecurity skills moving forward.