CST Capstone
The CST capstone project was the final project I undertook at Niagara College in the Computer Systems Technician - Network and Cloud Technologies program. The project consisted of a client requesting a proposal for their IT infrastructure in their new building in St Catharines, ON - from the physical end-user drops to the demarcation point. It was divided up into two parts - a written formal proposal detailing my recommended solutions for their needs, and then making the proposal a reality by implementing my solutions. This capstone project was a culmination of all of the knowledge and skills that I have learned during my time at the College, from hands-on networking skills to communication dealing with a client.

My approach to this project was focused on building out redundancy with scalability in mind at all times. Implementing my recommendations consisted of configuring business-critical applications such as Microsoft Exchange and SharePoint, Distributed File Systems, Active Directory Domain Services, VoIP phone systems, firewalls, databases, and more. I was grateful for the flexibility alluded in the project as It allowed me to get hands-on experience in areas that interest me personally - such as containerization, network security with firewalls, and Cloud-based services such as Amazon Web Services. It allowed me to gather valuable experience working within a dynamic cloud network environment with both open-sourced and proprietary applications.
CloudStack

The CloudStack project involved the configuration and deployment of IaaS cloud computing services to clients. The project consisted of myself and 2 other classmates configuring a physical Dell PowerEdge server with an enterprise grade open-source operating system, CentOS. In order to configure it to work with CloudStack, we had to set it up as a hypervisor, so we decided to utilize KVM. We had divided up the project into separate components in order to manage our time while troubleshooting as a team as potential issues arose. We had segmented our network using Cisco routers and configured port forwarding rules towards our CloudStack server for clients to receive virtual machines from an outside trusted IP address.
Homelab
My homelab environment consists of projects that are constantly evolving and adapting as my knowledge base continues to grow. It began as an virtualized Ubuntu 22.04 server in, VMware Workstation, where I configured remote access through SSH with PKI authentication for security. As I continued to learn more at Niagara College about networks, security, and general IT - my home environment began to grow and reflect my developing interests and skills.

My current homelab environment has greatly expanded and now includes not only virtualized aspects - but physical aspects to it. I currently have a Raspberry PI 4 configured as a router using OpenWRT where I can further practise and develop my network skills and experiment in an isolated physical environment. As of recently, one of my interests has been utilizing Docker containers for running services. I’ve been diving into learning how containers can be segmented using Dockers internal network management.
A recent project of mine has been configuring a reverse proxy, using NGINX proxy manager, for internal website forwarding for services such as NextCloud that exists on my home network. Both my NextCloud service and my reverse proxy are containers that exist with persistent storage that I’ve configured using Docker compose yaml files. I’ve configured a VPN on my home network in order to securely remote into it and access my files stored on my NextCloud, creating my own personal cloud at home.
My Online Portfolio
This website has been quite the fun project to design/implement and I've learned a lot along the way. I had previously created an online portfolio for myself through Squarespace, Google's website builder and I liked how it had turned out but I was left feeling a bit unsatisfied. As a result, I had set out to create my very own website with me developing and configuring everything by myself. During my time at Niagara College, I took an intro to web development course that taught me a solid foundation to start with when it came to creating static websites using HTML5, CSS, and a little bit of JavaScript.
I decided to host this website through, Linode, a cloud service provider I've been wanting to explore. I've had lots of experience using AWS and their EC2 instances, but I wanted to branch out and try a new platform to develop my skills even further. For my web server, I went with an AlmaLinux 9 running Apache for it's cost-effectiveness and reliability - and I also like trying out new flavours of Linux as a way to help learn and develop my skills further. I configured Apache's configuration files to create virtual hosts, redirect the directory for my website, enabled HTTPS redirect, and more.
For my domain name, I decided to go with Cloudflare as my registrar. Cloudflare had a lot of services to offer, including SSL certificates for HTTPS. I decided to opt out of Cloudflare managing my SSL certificates due to the fact that this project was based on the idea that I wanted to build out everything independently, including the management and configuration of the SSL certificates. Therefore, I decided to use Let's Encrypt and configured my certificates myself.
I'm very satisfied with the end result of my website and the process of setting it all up myself from scratch. This project had taught me a lot about web hosting and web development, from developing the website to purchasing a domain name and setting up the server environment on a new cloud service provider. I've discovered a new hobby through this experience and plan to developing this site further as my career and projects grow, potentially making it more dynamic and scalable as my content grows.