There have been multiple accounts created with the sole purpose of posting advertisement posts or replies containing unsolicited advertising.

Accounts which solely post advertisements, or persistently post them may be terminated.

vegetaaaaaaa ,
@vegetaaaaaaa@lemmy.world avatar

how networks work

tcpipguide.com/free/index.htm and lookup terms/protocols on wikipedia as you go.

But as others said, I think you would learn faster if you pick a specific project and try to implement it from scratch. A matrix server is a nice project, but it will have you dig into matrix-specific configuration which is not particularly relevant if you’re just trying to learn system administration and networking.

I would start with a more “basic” project and ensure you got the fundamentals right, and document or automate (shell scripts, ansible…) all steps:

  • install a virtualization platform (hypervisor)
  • create a VM and install Debian inside it, using LVM for disk management, and a static IP address
  • practice with creating/restoring snapshots, add/remove hardware and resources (vCPUs, RAM, disk storage) from the VM
  • set up an SSH server and client using SSH keys
  • setup a firewall with some basic rules (e.g. only accept SSH connections from a specific IP address and DROP all other SSH connections, forward all HTTPS connections to another IP address…)
  • setup monitoring with a few basic rules (alert if the SSH server is down, alert if disk space or free memory is low…)
  • automate security updates

Then you can work your way up to more complex services, lookup security hardening measures on your existing setup (as always, document or automate all steps). To give you some ideas, you can find ansible roles I wrote for these tasks here. The common role implements most of what I listed above. The monitoring role implements the monitoring part. There are a few other roles for middleware/infrastructure services (web server/reverse proxy/DNS server/…) and a few more for applications (matrix+element, gitea, jellyfin, mumble…). Start at tasks/main.yml for each role, follow the import_tasks statements from there, and reach the name for each task to get a good overview of what needs to be done, and implement it yourself from a shell in the first time. If you break your setup, restore the initial VM snapshot and start again (at this point you’ve automated everything, so it shuold not take more than a few minutes, right?) .

  • All
  • Subscribed
  • Moderated
  • Favorites
  • [email protected]
  • random
  • lifeLocal
  • goranko
  • All magazines