Access your homelab with SSH from the browser with Cloudflare
๐ Access your homelab with SSH from the browser with Cloudflare
Introduction ๐
This is a guide on how to access your homelab with SSH from the browser with Cloudflare. This is useful if you want to access your homelab from a computer where you can't install an SSH client, like a Chromebook or a computer where you don't have admin rights.
Guide from docs
Prerequisites ๐
- Have a Cloudflare account ๐ฉ๏ธ
- Having a server running with
cloudflared
installed you can follow this guide
Steps ๐
- Go to your Cloudflare dashboard and click on
Zero Trust
on the left menu - Click on
Access
thenApplications
and thenAdd an application
- Select
Self-hosted
Application Configuration ๐ ๏ธ
- Application name: you can put whatever you want, for example,
SSH-Blog
- Session duration: you can put also whatever you want, for example
24 hours
(I'll suggest you put a short duration for security reasons) - Application domain: Put the domain you want to use, for example,
ssh-blog.example.com
Application Appearance ๐จ
- Up to you; you can put whatever you want
Tags ๐ท๏ธ
- Up to you; you can put whatever you want
Block Pages ๐ซ
- I'll usually do something like this
Identity Providers ๐
I'll suggest you use at least 1 for this kind of application; you can choose whatever fits you better. For my case, I'm using One-Time PIN and GitHub.
Click on
Next
- Policy name + Allow + Session duration
- Assign a group (create one if you don't have any)
In my case, the group I'm using is a list of emails, so only people with those emails can access the application.
Create Additional Rules (Optional)
- Only necessary if your groups don't contain any rule or you want to add more rules.
Additional Settings ๐ ๏ธ
I'll leave this by default
Click on
Next
Setup ๐ ๏ธ
CORS Settings ๐ ๏ธ
- I'll leave this by default
Cookies Settings ๐ช
- I'll leave this by default
Additional Settings ๐ ๏ธ
- Here is one important thing: you need to select under
Browser rendering
the optionSSH
- Now click on
Add application
Configure Tunnel ๐
- Go into
Access
thenTunnels
and select your tunnel thenConfigure
- Select
Public Hostname
thenAdd a public hostname
- Use the same domain you used in the application configuration, for example,
ssh-blog.example.com
- Service type:
SSH
- URL:
localhost:22
Conclusion ๐
Now you can access your homelab with SSH from the browser with Cloudflare. You can access it by going to ssh-blog.example.com
and you'll see something like this: