diff --git a/External-Webserver-use:-Reverse-proxy.md b/External-Webserver-use:-Reverse-proxy.md
index d1819aa..f953645 100644
--- a/External-Webserver-use:-Reverse-proxy.md
+++ b/External-Webserver-use:-Reverse-proxy.md
@@ -8,8 +8,14 @@ Main use-case for use with Plan is easier https set-up and removal of `:PORT` fr
> :warning: **Limited support notice** :warning:
> If things on this tutorial don't work for you, consult documentation of your webserver. Very limited support will be provided for configuration issues of reverse-proxies.
->
-> There is a debugging checklist at the bottom of this article to help you figure out where the issue is when you're setting up.
+
+**Table of contents**
+
+- Nginx
+- Apache
+- Cloudflare
+- Password bruteforce -guard and whitelist support (X-Forwarded-For)
+- Debugging checklist
# Nginx reverse-proxy
@@ -120,9 +126,43 @@ certbot certonly --apache -d plan.example.com
After installing HTTPS on the Apache, you can [set up proxy settings for Plan](https://github.com/plan-player-analytics/Plan/wiki/SSL-Certificate-%28HTTPS%29-Set-Up#if-behind-a-proxy)
+# Cloudflare Reverse-proxy
+
+Credit to [**Person0z**](https://github.com/plan-player-analytics/Plan/issues/3365) for this section
+
+## Steps:
+1. Create a tunnel on [Cloudflare Zero Trust](https://dash.teams.cloudflare.com/).
+2. Get your tunnel token and set it into your VM.
+3. Map to http://localhost:8804.
+3. Done.
+
+## Step by step
+
+1. Go to [Cloudflare Zero Trust](https://dash.teams.cloudflare.com/).
+2. `Access` > `Tunnels` > `Create Tunnel`
+
+
+
+3. Type a `Tunnel name` such as `Plan` and save tunnel.
+4. Click the token to copy it.
+
+
+
+6. `Terminal` > Copy the code that Cloudflare gave you, or the install app, and paste it into terminal and activate it!
+7. Check if it installed successfully from the terminal output.
+8. Go back to `Cloudflare Zero Trust`, if you see your connector, then click `Next`
+
+
+
+9. Choose your favorite domain name and map to `http://localhost:8804`
+
+
+
+10. Click `Save` and go to your domain name `https://` and done!
+
# Password bruteforce -guard and whitelist support (X-Forwarded-For)
-To keep stuff that relies on IP of the requester functional behind reverse-proxy.
+To keep stuff that relies on IP of the requester functional behind reverse-proxy. This may not be supported by Cloudflare.
- Make sure reverse-proxy is passing request IP in `X-Forwarded-For` header
- Make sure Plan can't be accessed without connecting through reverse proxy