My Projects

Home Lab

Made up of a home-built OPNsense router, 2x Dell PowerEdge R610, an HP 10gig switch, and various other pieces

R610 "Alpha"

This server is running VMware ESXi 6.5 and hosts two VMs; trueNAS Scale and a Minecraft server

R610 "Pickles"

This server is also running ESXi 6.5 and hosts my Docker VM, as well as my Ubiquiti Controller for my UAP-AC-Pro Access Points

Docker

Located on "Pickles" server, my Docker instance hosts a piHole DNS Ad Blocker, as well as everything required to run this website! (Reverse Proxy, DDNS, Database, and WordPress)

OPNsense Router

Made out of old PC parts, I wanted to get more familiar with managing a router that isn't from BestBuy, and also have the ability to learn how to use and manage Access Points.

Switches

An HP A5820X switch gives 10 gigabit connectivity to the servers and router, allowing for zero bottle necks. A Dell PowerConnect 5524 connects all other conventional devices.

Future Plans

I plan on acquiring a JBOD to easily expand my storage capabilities, building a more competent CPU/RAM node, and building a GPU node.

Capstone Project

As a part of finishing my degree at LSC, my Capstone Project is Hacking a Car. Here is my original proposal:

Approaching the turn of the century, and continuing since then, automobiles have become more and more electronic in nature, and computers in them have become common place. Modern vehicles are almost entirely reliant on their electronic systems, but not many people know how fragile these systems really are. The steering wheel is longer directly connected to the steering rack, and in some cars, the taillights might not even have a direct wire leading to the engine. Cars communicate with networks, and these networks are vulnerable.

Having little to no verification of signals, spoofing signals in a car’s electronic control systems is relatively simple to do. The process is well documented, and the tools are easily accessible. My goals with this project are as follows:

  • Research the development of car hacking.
  • Learn how to read and decode vehicle signals.
  • Learn the extent to which these signals can be exploited.
  • Experiment with various vehicle makes and models and model years.
  • Learn to what extent gaining remote access to a vehicle takes.”
Things were not as they seem, though, and the project took a much different direction. In this video I go through all of my findings and my thoughts on the project. https://app.vidgrid.com/view/7H52cDyl6Die

Hosting my own website

I wanted to host my own website to prove myself since all my previous job experience is mechanical or machining. Here’s how I did it.

I started with this video

This video showed me the basics of getting a domain named registered, getting DNS setup, and the setup and config of a reverse proxy.

The Docker Stack

After looking online I found a Docker-compose stack that deployed a MySQL database and a WordPress website, while separately making a container for phpMyAdmin. I took those and combined them into a single stack. If you’d like to use it as well, here’s the stack code. All you need to do is make your own passwords for the database, and credentials for the phpMyAdmin. I take no credit for writing any code, I just combined what I found online to suit my own needs.


version: "3" 
services:
  db:
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: StrongPassword
      MYSQL_DATABASE: dataBase_name
      MYSQL_USER: dbuser
      MYSQL_PASSWORD: StrongerPassword
  phpmyadmin:
    image: phpmyadmin/phpmyadmin:latest
    restart: always
    environment:
      PMA_HOST: db
      PMA_USER: dbuser
      PMA_PASSWORD: StrongerPassword
    ports:
      - "8181:80"
  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    restart: always
    ports:
      - "8000:80"
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: dbuser
      WORDPRESS_DB_PASSWORD: StrongerPassword
      WORDPRESS_DB_NAME: dataBase_name
    volumes:
      ["/path/on/computer:/var/www/html"]
volumes:
  mysql: {}