From 464994cdea1b173186cb496c525cb48deafcdb63 Mon Sep 17 00:00:00 2001 From: Lucas Mathews Date: Sat, 13 Dec 2025 17:04:34 +0100 Subject: [PATCH] Remove html files --- .obsidian/workspace.json | 10 +-- Public/Guides/reverse_proxy.html | 129 ----------------------------- Public/Guides/windows_upgrade.html | 26 ------ 3 files changed, 5 insertions(+), 160 deletions(-) delete mode 100644 Public/Guides/reverse_proxy.html delete mode 100644 Public/Guides/windows_upgrade.html diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json index c69da43..c47f59d 100644 --- a/.obsidian/workspace.json +++ b/.obsidian/workspace.json @@ -13,12 +13,12 @@ "state": { "type": "markdown", "state": { - "file": "Templates/blank-template.md", + "file": "Public/Guides/reverse_proxy.md", "mode": "preview", "source": true }, "icon": "lucide-file", - "title": "blank-template" + "title": "reverse_proxy" } } ] @@ -191,12 +191,12 @@ "obsidian-git:Open Git source control": false } }, - "active": "bbdb625e70da8213", + "active": "c892fa5f5c3f77ba", "lastOpenFiles": [ + "Public/Guides/windows_upgrade.md", + "Templates/blank-template.md", "Public", "Public/Guides/create-shh-keys.md", - "Templates/blank-template.md", - "Public/Guides/windows_upgrade.md", "Public/Guides/rdp-with-microsoft-account.md", "Public/Guides/reverse_proxy.md", "Public/Guides/generate-wireguard.md", diff --git a/Public/Guides/reverse_proxy.html b/Public/Guides/reverse_proxy.html deleted file mode 100644 index 47de411..0000000 --- a/Public/Guides/reverse_proxy.html +++ /dev/null @@ -1,129 +0,0 @@ - - -

This is a guide to create a reverse proxy using a Virtual Private Server, or VPS so that you can access internally hosted services. 

-

My Situation

-

I host some services from my home lab that I access remotely, such as Home Assistant. 

-

In my previous house, I was the account owner for the internet. I was able to get a static IP, and have the ISP open incoming ports 80 and 443 for web traffic.

-

Now I lived in shared accommodation which has an included internet connection, in the form of an Ethernet cable coming out the wall. Everyone just uses the same LAN.
I do have access to the router, but to maintain an environment that I can ‘home lab freely' in, I wanted to set up my own LAN. 

-

I can do this while still utilising the shared connection. We have fiber and my services are not bandwidth heavy. 

-

I have configured a router of my own with, with all traffic sent via Mullvad VPN.

-

Now I need to be able to access my internal services externally, using this same internet connection.

-

The Plan

-

There are some ways I can do this:

- -

Instead, I am going to build my own cloud reverse proxy host.

-

This makes use of a Virtual Private Server (VPS) to run Nginx Reverse Proxy Manager. The VPS will have access to the services running on my internal network via a WireGuard VPN.

-

This will connect to my home network with a WireGuard VPN, and will run Reverse Proxy Manager to manage incoming web connections. 

-

To make this, I need a few things:

-
    -
  1. A VPS. There are many to choose from. In the end I went with a server from OVHcloud.
      -
    • WireGuard is efficient compared to other VPN protocols, so the server does not have to be too powerful.
    • -
    • Be sure to check how much network traffic the VPS allows. Lots have limits, which may or may not be enough for your use case. I am streaming 4k video so I am looking for unlimited bandwidth.
    • -
    -
  2. -
  3. A router that allows for new VPN interfaces to be created. I use opnSense for my router which does allow this.
  4. -
-

VPS Setup

-

First I need to find a VPS provider. As I said before, I went with a server from OVHcloud.

-

The server I chose (VLE-4) costs $11 US per month.

- -

 

-

Once I purchased the server and it had provisioned, I connected and set up a few things. 

-
    -
  1. Updated to Ubuntu 23.10
  2. -
  3. Enabled Key-Based only login: See this guide: How To Configure SSH Key-Based Authentication on a Linux Server
  4. -
  5. Enable UFW Firewall
      -
    • Allow port 22(SSH), 51820/UDP(WireGuard), 443(HTTPS)
      sudo ufw allow <PORTS>
    • -
    • Enable UFW
      sudo ufw enable
    • -
    -
  6. -
  7. Enabled the edge firewall on my hosting provider. 
  8. -
-

VPN Setup

-

After this it is time to install WireGuard VPN on the VPS.

-

For this, I mostly followed this guide: How To Set Up WireGuard on Ubuntu 20.04

-

I recommend reading that guide as there are some decisions I made that I do not explain, but at a high level, I followed through the steps up to the end of step 6:

- -

I was then able to start the WireGuard server, however I have still not yet added any peers. The guide explains how to do this on another Linux server, but in this case, I do not want to do that. Instead of step 7:

-

This is done in the WireGuard Instance settings in my Router:

-
-

 

-
-

Be sure to check the ‘Disable routes’ option in the Instance, as I will do this manually
For the gateway, it does not matter, just as long as it is unique.

-

 

-

Then in the Peers tab:

-

The Pubic Key is the Public key from the WireGuard Server on the VPS

-

The Endpoint Address is the public IP of the VPS.

-
-

After this we can continue with the Digital Ocean guide from step 8.

-

The below command is then run to add the new opnSense peer to the Wireguard server.

-

sudo wg set wg0 peer <PUBLIC KEY> allowed-ips 10.0.20.2

-

After doing this, I can see the VPN connection is up:

-
-

 

-

In the end, my /etc/wireguard/wg0.conf file looked like:

-
[Interface]  
-Address = 10.0.20.1/24  
-SaveConfig = true  
-PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE  
-PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE  
-ListenPort = 51822  
-PrivateKey = <SERVER PRIVATE KEY>
-
-[Peer]  
-PublicKey = <PEER PUBLIC KEY>
-AllowedIPs = 10.0.20.0/24, 10.0.10.0/24  
-PersistentKeepalive = 25
-

 

-

Network Setup

-

Now an interface needs to be created on my router for the new VPN connection so that I can configure firewall rules to allow and deny access. 

-

For opnSense, this is as simple as going to Interfaces > Assignments, and adding the new interface 

-
-

Then configure the settings as below:

-
-

You do not need to configure a IPv4 address, as this will automatically get the IP address specified of the Instance Tunnel Address.

-

 

-

After this, I created the below firewall rule so that the new WireGuard interface could access the LAN.

-
-

 

-

If you have any strange issues, check the routing table (System > Routes > Status) to see if there are any old entries that need to be deleted. 

-

 

-

Reverse Proxy

-

For the reverse Proxy I am using Nginx Reverse Proxy Manager running in a Docker container.

-

First, install Docker: Install Docker Engine on Ubuntu

-

Then I installed Portainer to give a nice webUI to manage Docker: Install Portainer CE with Docker on Linux

-

Then in Portainer I made a new stack (docker compose). 

-
-

 

-

I was then able to log into Reverse Proxy Manager and create the my domains in Reverse Proxy Manager

-
-

 

-

I also needed to point these domains to the public IP of my VPS. 

-

 

-

Once this was done, I was able to access the internal services via my domain name. 
For example, this website!

-

 

diff --git a/Public/Guides/windows_upgrade.html b/Public/Guides/windows_upgrade.html deleted file mode 100644 index e207e7d..0000000 --- a/Public/Guides/windows_upgrade.html +++ /dev/null @@ -1,26 +0,0 @@ - - -

 

-

When trying to update a Windows 10 or 11 install to Pro, by going to Start > Settings > System > Activation > Change product key, and entering a valid Windows Pro edition product key, you may get the below error:

-

The product key you entered didn't work. Check the product key and try again, or enter a different one. (0x80070057)

-
image
-

 

-

To get around this, you will need to use a Windows Generic Key first to upgrade it to Pro

-

 

-
    -
  1. The key for Windows 11 Pro is: VK7JG-NPHTM-C97JM-9MPGT-3V66T
    - Other versions can be found here: Windows 11 Generic Keys for All Editions (winaero.com)
  2. -
  3. Before entering this key, disconnect the device from the network
  4. -
  5. Then go to the Activation settings and Select Change Product Key
  6. -
  7. Enter the generic key from above and press OK. This will then prompt for an upgrade to Pro. Press OK
  8. -
  9. This will then reboot and once it has powered on again, it will be Windows 11 Pro
  10. -
  11. Now you need to reconnect it to the network and navigate to the activation settings, and select Change Product key.
  12. -
  13. Now enter the product key purchased by the customer. The device will now be activated correctly.
  14. -