School labs

Linux networking lab — 2 routed networks + internet access

  • Built two LANs (192.168.33.0/24 and 10.13.37.0/24) connected via a router network (172.16.32.0/24) using 4 Linux VMs.

  • Configured DHCP + DNS distribution for clients, NAT for internet access, and firewall rules allowing only ICMP + SSH between LANs.

  • Ensured services and network configuration persisted across reboots.

  • Used FRR/BGP for route exchange between routers

Windows + Linux mini-infrastructure lab — file sharing + log monitoring

  • Windows Server 2025: created AD user/group, SMB share with group-based read/write access, and basic password/lockout policy.

  • Automated failed-login monitoring via PowerShell, wrote output to the share, scheduled hourly via Task Scheduler.

  • Linux: SSH hardening, auth log parsing via shell script + regex, scheduled hourly via cron.

  • Mounted the Windows SMB share on Linux and verified outputs.

Virtualisation lab — reproducible app environment (Vagrant + Docker Compose)

  • Vagrant: AlmaLinux 9 VM with CPU/RAM settings, synced app folder, port forwarding, and provisioning of dependencies.

  • Docker: containerized the app and deployed with Docker Compose + PostgreSQL, persistent volume, health checks, and startup ordering.

School labs — Project

Linux networking lab — 2 routed networks + internet access

  • Built two LANs (192.168.33.0/24 and 10.13.37.0/24) connected via a router network (172.16.32.0/24) using 4 Linux VMs.

  • Configured DHCP + DNS distribution for clients, NAT for internet access, and firewall rules allowing only ICMP + SSH between LANs.

  • Ensured services and network configuration persisted across reboots.

  • Used FRR/BGP for route exchange between routers

Windows + Linux mini-infrastructure lab — file sharing + log monitoring

  • Windows Server 2025: created AD user/group, SMB share with group-based read/write access, and basic password/lockout policy.

  • Automated failed-login monitoring via PowerShell, wrote output to the share, scheduled hourly via Task Scheduler.

  • Linux: SSH hardening, auth log parsing via shell script + regex, scheduled hourly via cron.

  • Mounted the Windows SMB share on Linux and verified outputs.

Virtualisation lab — reproducible app environment (Vagrant + Docker Compose)

  • Vagrant: AlmaLinux 9 VM with CPU/RAM settings, synced app folder, port forwarding, and provisioning of dependencies.

  • Docker: containerized the app and deployed with Docker Compose + PostgreSQL, persistent volume, health checks, and startup ordering.

School labs — Kristoffer Salander