Cyber Security Engineering 230
Cyber Security Engineering 230 is titled “Introduction to Cyber Security Fundamentals” and is cross-listed as Computer Engineering 230 (CPRE230). This is the first class in the series of required Cyber Security classes at Iowa State University. This class is lab-based with most of the learning be done in lab, where over the course of a semester, built out a network, and deployed systems. We started out the semester with basic Linux usage, and setup inside our testing environment, and then moved into the rest of the semester where we set up variety of services including, LDAP, DNS, Firewalls, and a pair of different web stacks. While talking about the different web stacks, we also talked about some potential vulnerabilities, and how some of the best ways to mitigate the vulnerabilities. To end the semester we had a capstone lab, where we were given an already configured machine, and using the tools from prior labs, we had to find a set of vulnerabilities that exist, and write a small report, on how to mitigate them.
With this course being a primarily lab based course, there was a set of different material covered in each lab.
For a brief overview of the labs view below, and click on a specific lab to learn more about that specific lab.
Lab 1 - Installing VMs
This lab goes over the basic usage of creating a VM, inside ESXI
Lab 2 - Server Install and Linux File System
Installing a headless server, and using the Linux file system all from the command line!
Lab 3 - Accounts, Permissions, and Network Tools
Taking a looking at how users and permissions in Linux work, and testing out common network analysis tools.
Lab 4 - Network Firewalls
Creating a network firewall to secure the traffic coming to and from our network
Lab 5 - Packages and DNS
Taking a dive into the distributed networking ideas of DNS, and issues that arise with it.
Lab 6 - Install OpenLDAP
Setting a centralized directory service for Linux systems
Lab 7 - Install Postfix
Creating a basic mail server that can send and receive email between classmates
Lab 8 - Traditional Web Vulnerabilities
Building a LAMP web server, and learning about older web vulnerabilities
Lab 9 - Modern Web Vulnerabilities
BUilding a Django web server to demonstrate the vulnerabilities of modern web applications
Lab 10 - SSH / UFW / VPN
Setting up virtual tunnel with SSH, creating system firewalls with UFW, and setting up an openVPN server on pfsense
Lab 11 - Analyzing Log Files
Sending logs off to a centralized logging server, and monitoring for malicious looking traffic
Lab 12 - Capstone
A final capstone project where we are given a very vulnerable machine, and need to find the issues while describing potential fixes