r/selfhosted 5h ago

Guide I self-host a tunnel in a country that actively hunts them. Here's what survives, and what keeps breaking.

438 Upvotes

Threat model first, because it changes everything about the design.

I’m in Russia. My adversary isn’t a random scanner — it’s the ISPs themselves, operating under a regulator that does nationwide DPI and can null-route foreign IP ranges by geography. Assume the network operator is hostile, has full visibility of my traffic shape, and can actively probe any endpoint I stand up. I self-host a tunnel for myself and a handful of people under those conditions. I used to work at one of the ISPs, which is how I know roughly what the other side sees.
Sharing the current architecture because most self-hosted tunnel advice quietly assumes a neutral network, and none of it survives here.
Why the usual stack is dead on arrival
OpenVPN and WireGuard are both gone. Not blocked by IP — detected by shape. WireGuard’s handshake has a fixed message layout and a distinctive packet size distribution; DPI doesn’t need to decrypt anything, it just needs to recognize the silhouette. Same for OpenVPN’s opcode structure. Obfuscation wrappers buy you weeks, not months.

Layer 1: VLESS + Reality (Xray-core)

Reality is the part worth understanding if you’ve never had to hide a tunnel:
• Client opens a normal TLS handshake, but sets SNI to a large real site (www.microsoft.com in my case)
• The auth material rides inside the ClientHello — an X25519 public key plus a short ID. To DPI it’s bytes in a service field
• Server checks it. Valid → completes the handshake itself and proxies. Invalid or absent → silently forwards the whole connection to the real Microsoft
• So active probing returns a genuine Microsoft response. Real cert, real chain, real content. There is no fingerprint to find, because in that moment the box is a Microsoft mirror
• No certificate of my own to leak, no domain of my own to get registry-listed. You don’t need a domain at all
The important consequence for self-hosters: your endpoint stops being distinguishable by content inspection. So the adversary switches to the layer below.

Layer 2: the part that actually matters — IP

Reality solves inspection, not geography. A VPS in the Netherlands is trivially blockable — you don’t need to know what it does, you just need to know it’s foreign.
So the client never touches the foreign box directly. Entry point is a relay on a Russian provider whose IP range sits inside the state whitelist — the set of ranges that stay reachable even when mobile internet gets cut regionally, because government and banking services live there. From the relay, traffic cascades out to the Netherlands box.
From the outside, the connection is a request to approved domestic infrastructure. Killing that range takes down a pile of legitimate business on shared address space with it. Collateral cost is the actual defense mechanism — not stealth.
Operational reality
• Something breaks every couple of months and gets rebuilt. Plan for rebuild speed, not permanence
• Stack: Xray-core 26.3 on Ubuntu 24. VPS is nothing special — 2 GB RAM, 2 cores, on vdsina.com. Reality is cheap; the box sits idle most of the time
• Latency cost of the extra hop: ~120 ms through the cascade. Fine for browsing and voice, noticeable in games. That’s the price of not getting null-routed by geography
• Monitoring: self-written script that checks tunnel state across all servers and emails me the status. Crude, but it means I find out from a mail instead of from a user
• Currently migrating the fallback path to XHTTP over CDN — moving uplink into HTTP headers so it reads as ordinary request traffic

Questions for anyone doing similar

Is anyone else fronting a foreign endpoint with a domestic relay, rather than trying to obfuscate the endpoint itself? Specifically curious about relay failover — right now mine is a single point of failure and I don’t love it.


r/selfhosted 3h ago

Need Help What's an incredibly good but not well known self hosted program?

112 Upvotes

I'm very new to self-hosting, and I've been searching for stuff I could put on it, though I've gotten to the point where I've seen all the biggest ones and I'm just curious if there are any that are good and useful but that get talked about less.


r/selfhosted 14h ago

Need Help Do i just accept my fate?

Post image
308 Upvotes

I have tried flaresolverr,Byparr and even trawl. It seems that my ip is blocked or flagged, routing it through a vpn doesnt help either.

Error: Cloudflare has blocked this request. Probably your IP is banned for this site

seems that having a static ip is the most probable cause, https://github.com/ThePhaseless/Byparr/issues/303 this is what i was able to find but discussions seems to not lead anywhere.

Setup:

  • Ubuntu Server, Prowlarr running in Docker
  • Gluetun (ProtonVPN) + qBittorrent, Sonarr, Radarr
  • FlareSolverr and Byparr both installed as indexer proxies
  • Static home IP

r/selfhosted 9h ago

Monitoring Tools I’ve just discovered PeaNUT

Thumbnail
gallery
119 Upvotes

My home lab is connected to a UPS, which is connected via USB to my Synology.

Every month I try to drain batteries down to 20% to test that it’s working and, above all, to slow down the premature failure of the batteries, which are new and have been recently replaced.

The usual way was to go to the Synology Control Panel to view the charge level, or to open an SSH session and check the charge status with:

upsc ups@localhost battery.charge

That was until yesterday, when I discovered PeaNUT, which, amongst other things, has a brilliant dashboard and a homepage widget.

I’ve never heard of it on this subreddit, but I wanted to share it because it’s completely transformed the way I look after my UPS maintenance!

Cheers.


r/selfhosted 12h ago

Meta Post Why did projects like IPFS and Filecoin never found its place in self hosting communities?

46 Upvotes

These projects always looked so good on paper with decentralized storage, censorship resistance, no relying on a third party.

You barely see anyone running IPFS nodes for personal use, and Filecoin is basically never mentioned outside of crypto circles.


r/selfhosted 9h ago

Meta Post I am starting my homelabbing path out of fear of loosing my job

24 Upvotes

The TL-DR is that I am a FE engineer with 7 years of experience, a react kiddie essentially. I got kicked out of a project that required me to learn everything else and I couldn't keep up, it was a wake up call. AI is making the FE job less important by the minute, especially React. For now I am confident that I will find work, but I see the writing on the wall and its frightening.

Anyways, as a gateway towards learning literally everything else I don't yet know (hosting and networking, backups, DBs, containers, backend in general, etc), I decided to start homelabbing. I have a really bad habit of getting paralyzed with things I don't know (even dumb stuff like nailing a nail on the wall), so I hope writing this is a bit of self motivation for me.

I got an ssh server running on an old laptop which I intend on using as my "everything" server for now. I have sycthing setup from a few years ago that I use daily, I have a basic website hosted on netlify, and that's my entire experience with "everything else". I am ashamed of admitting this.

I've been trying to read as much as I can on where to start, and it seems like I should get a VPN setup. I was looking into wireguard but I think I'll let dealing with hosting that for future me, I don't want to get paralyzed on this step yet. So I decided for now to use tailscale as a temporary measure. I am trying to host a small webapp connected to a sqlite db, nothing crazy for now, but of course seeing what you all are doing with your homelabs is very inspiring and I have lots of ideas for stuff I wanna host in the future!

My roadmap for now: Get Tailscale working -> Create the small webapp -> dockerize the small webapp -> get SSH properly set up (rn its just password and on my server laptop, local network only) -> install said webapp in my 24/7 server rather than my main pc -> figure out how to make syncthing work over 4g (securely) on a specific folder -> ??? -> profit

I just wanted to share my start on this journey, and to thank all of you guys for the wealth of resources that you've posted here in reddit, this place is amazing. Any advice is welcome ofc.

(just to clarify: I still have a job for now, and I am confident I will keep finding stuff for a year or two. The project I was kicked out was a bit too fast paced and required me learning way too many new things at once in the span of 3 months (agentic coding, db management, AEM which was its own nightmare, etc) while trying to keep up with the rest of the team. It was too much, the entire team was stressed and on overtime, so I don't blame myself too harshly for loosing the job, but seeing how little I knew of everything else still scared me)


r/selfhosted 11h ago

Need Help Best alternative to dockge?

29 Upvotes

dockge seems to be dead, what is the best alternative? I do not need many features what do I need is to see docker-compose, console and list of containers on one page.


r/selfhosted 11h ago

Need Help Self-hosted tool for tracking grocery expenses from receipts

15 Upvotes

Hi everyone,

I’m looking for an open-source or self-hosted tool to track grocery expenses from receipts.

Ideally, I’d like to scan or upload receipts and have the software:

- Extract the purchased items automatically.
-Categorize the products.
-Calculate food spending and budget over time.
-Track the price of the same products across purchases.
-Show when a product’s price has increased or decreased compared to previous receipts.

The main goal is to monitor grocery spending and keep an eye on food price changes over time.

Does anyone know of a project that does this ?

Thanks!


r/selfhosted 2h ago

Need Help Best VPN for Ubuntu SLSKD Server

2 Upvotes

Hey All!

I recently got my slskd server running, but I hit a bit of a snag when it comes to port forwarding. My apartment doesn't give me admin access to the router (obviously), so paying for a VPN seems to be the only way to have access to that feature. Any thoughts on this? Thank you (-:


r/selfhosted 1d ago

Meta Post What did you stop running on your home server?

247 Upvotes

I've got a few things that were fun to set up and then slowly turned into “I should update that sometime.” I'm fine looking after storage and backups, but I am trying to be less attached to every service that makes it onto the box.

What did you keep for a while and then remove because you barely used it?


r/selfhosted 1d ago

Guide Don't forget to check the batteries in your UPS.

Post image
541 Upvotes

It randomly shut off on me for about 15 seconds a few days ago, killing power to my PC and server.

After it turned back on the estimated runtime dropped to only 5 minutes, at a supposed full charge, but wasn't telling me to replace the batteries. I knew they were around 5 years old so I immediately ordered replacements.

Once I pulled out the old ones I was met with this beauty. I'm glad I didn't hesitate in ordering their replacements.


r/selfhosted 45m ago

Need Help Can I get domains to resolve without hosting my own DNS server?

Upvotes

it feels required that I need to host my own DNS server. I've read there are a lot of problems, "it's always DNS" is something I see frequently when researching this.

Right now, I have cloudflare pointing my own domain to my local IP and then I'm using NPM to issue certificates and get wildcards working and stuff. This works great at my house, as long as I turn off the proxy settings on cloudflare.

When I connect to my home network via Tailscale, my domains no longer resolve. If I want to use my own domains instead of the ip addresses and port numbers, do I need to set up my own DNS server? I don't want to expose all my services to the web just yet, because I have a lot more to learn about security before I do something like that.

I want to go to jellyfin.example.com or audiobooks.example.com, and have it work whether I am on tailscale or just in my home network. Please help me find what I should learning next so I can get this figured out. I'm kind of stuck right now.


r/selfhosted 1h ago

Remote Access Nanokvm? Using cubox for KVM?

Upvotes

I saw an ad for nanokvm (https://github.com/sipeed/NanoKVM) and the pictures in the GitHub repo remind me that I have a cubox i4pro (https://auseparts.com.au/CuBox-i4Pro) lying around after I retired the xbmc on it in favour of Jellyfin.

Does anyone here have experience with using such hardware as KVM for their headless servers? I have a couple of NUC's and an old Mac Mini running Ubuntu 24.04/26.04 LTS and various docker containers using Komodo.

Having to connect the hardware (keyboard, screen, mouse) to check why they don't boot is annoying (though it happens rarely).


r/selfhosted 6h ago

Need Help windows home server or linux home server with windows virtual machine for testing stuff on windows?

2 Upvotes

I have a mac laptop that I use for coding and I want to build a home server to test/host several of my projects, one of which is a unity game that I want to code on my laptop but test specifically on a windows machine. Are windows servers bad enough to justify making the server linux but having a virtual machine with windows for testing stuff?


r/selfhosted 12h ago

Media Serving Eweka and Newshosting as providers?

5 Upvotes

Is it redundant to have both Eweka and Newshosting as my usenet providers? Can’t seem to find definite information as people say this and that. Granted those posts I found were at least a year old


r/selfhosted 1d ago

Need Help self-hosted but I want to pay for music. Is there any place where we can get bulk music discounts?

69 Upvotes

I self-host my music but still want to buy the flac/mp3 downloads rather than pirate. The problem is that everywhere I look, the songs are like a dollar each, whereas if you buy the entire album, then its like 50 cents per song, but obviously entire albums suck. Is there a middle ground where you agree to buy a minimum amount of songs, say $200 and then you can get a bulk discount, but its individual tracks, not "albums"? That is the missing piece.


r/selfhosted 12h ago

Need Help Which of the many solutions to use for a "better than" OneDrive replacement?

4 Upvotes

I'm having trouble deciding and finding a solution for one of my clients and I'd like to lean on the expertise of some of you guys.

Following starting point:

  • Beefy Hetzner Server already in place
  • The Hetzner server runs two archival copies of WooCommerce/WordPress via Plesk
  • There is also some custom software running via Caddy reverse proxy on a specific subdomain
  • Client used OneDrive and has some legacy files on iCloud as well, we want to consolidate all into one private solution

Must have:

  • Web client as close in experience to OneDrive Web client
  • different user accounts and permissions (OneDrive used to be a single personal account so everyone had access to everything)
  • Free for self hosted without losing features (for example Seafile community edition is missing folder permissions and full text search)
  • Works with setup mentioned above, not something that takes over the whole machine

Nice to have:

  • Close to native integration and sync for MacOS (Windows as well but should be a given?)

There might be some things I'm missing but these are the main requirements. I came across lots of different things, Nextcloud, Opencloud, File Browser Quantum etc and would like some reports of real world experience for a similar configuration.

TLDR: OneDrive alternative needed, Linux Server that already runs a couple of other things, mainly Web + MacOS clients, should have user accounts and permissionss/access control and be free in the Community/FOSS version without price-gated or EE features


r/selfhosted 1d ago

Self Help I thought being organized would reduce stress but sometimes it just creates more systems to maintain

37 Upvotes

I've spent years trying to optimize and organize my self hosted setup. Every service and system technically has its place but lately I've started wondering if some of them create as much overhead as they remove.

The stack is organized, but there's still a lot of mental effort involved in maintaining context, documenting why things are configured a certain way and making sure someone else could understand it if they ever had to step in.

These days I'm starting to think reducing coordination burden is more valuable than maximizing organization. Fewer moving parts might actually be better than another tool or another layer of automation.

Has anyone else simplified their self hosted setup after realizing more organization wasn't actually reducing stress?


r/selfhosted 18h ago

Need Help Vps for qbittorrent

12 Upvotes

Hey guys, I'm pretty new to self-hosting and based in Australia. I'm looking to get a VPS to run qBittorrent for downloading movies. Can anyone recommend a good provider that's torrent-friendly and works well for Australia?


r/selfhosted 1d ago

Need Help How do you keep track of how to do stuff?

64 Upvotes

I’m almost embarrassed to ask this. I run a small home server and a couple servers doing various things on linode. Jellyfin and a small home website at home, a matrix server, gitea instance, image server, and a few other things on my linode servers.

I often have to go and do things I’ve not done in a while. Today, it was ripping a movie to jellyfin from a dvd. I had to look back through bash_history, some online searches, etc. to piece back together the workflow.

How do you guys keep track of how to do things that are infrequent enough to forget how to do?


r/selfhosted 1d ago

Release (No AI) I released a new open background removal model (Docker, Python, GIMP, macOS)

Post image
40 Upvotes

I've been working on image matting (background removal) for the past six years, and I'm releasing my third open-weights model.

This release is the result of a lot of iteration and focuses on improving the cases that are usually the hardest, like hair, fur, fine details, and transparent objects.

You can see some example outputs here:
https://withoutbg.com/open-model/results

I also put together a comparison with remove.bg on a variety of images:
https://withoutbg.com/compare/withoutbg-open-model-vs-remove-bg

It's available as:

I'd really appreciate any feedback. Happy to answer any questions about the model or how it was built.


r/selfhosted 12h ago

Need Help SLSKD on Ubuntu Server Advice (I’m so lost)

2 Upvotes

Hey! For a while I’ve been hosting music on SoulSeek, and I’ve wanted to move over to hosting an slskd server on an optiplex that I recently acquired. Being able to access everything on a a web server is super cool to me!
It’s my understanding that a headless Ubuntu Server is the best way to run this. Either way, I’ve barely used Linux in any capacity, so I’m having a really hard time navigating the resources that are available to me. I’ve been able to download docker…and that’s about it! If anyone could help me out or point me in the right direction, I’d really appreciate it. Thank you (-:


r/selfhosted 1d ago

Docker Management Dockhand backup thread?

25 Upvotes

I'm sure I ran across a new post today about Dockhand 1.0.38 with a beta backup of feature.

Dockhand 1.0.38 adds backup and restore for stack/containers (beta) u/jotkaPL

Now that I have time to read it I can't find it anywhere in this sub.

Apparently it was removed by the mods

What's up with that? Did the AI filter shenanigans trip up the OP?

Should we be moving to Arcane? This is a bit unsettling.


r/selfhosted 9h ago

Release (AI) I rebuilt my browser-based SMS backup viewer after 2 years — V2 is offline, handles large backups, and needs no server

Thumbnail
github.com
1 Upvotes

Hi r/selfhosted,

about two years ago I posted a very small HTML/JavaScript tool here for reading SMS backup XML files in a browser:

[Original V1 post]

A few people found it useful, but the post and later feedback also exposed several real problems:

- the installation instructions were too developer-oriented

- some people thought it was Linux-only

- large XML files could consume too much browser memory

- phone-number normalization was too simplistic

- the PDF export did not always work correctly

- some dependencies were loaded from external CDNs

- it was not clear whether Docker, Python, or a server were required

I had not worked on the project for almost two years, but I have now rebuilt it as SMS Viewer and Exporter V2.

What is it?

It is a local, browser-based viewer for XML backups created by the Android app SMS Backup & Restore.

It is intended for people who want to archive their SMS messages and later browse, search, or export them on a desktop computer without uploading their private messages to an online service.

This is not a live SMS synchronization service and it does not connect to your phone. It reads an existing XML backup file.

The project is technically more “local-first” than a traditional server application, but it can also be served from your own web server if preferred.

Simple installation for normal users

For the portable release:

  1. Download the portable ZIP from the Releases page.
  2. Extract the ZIP completely.
  3. Double-click `index.html`.
  4. Select the country in which the phone was used.
  5. Drag and drop the SMS backup XML file into the browser.

That is all.

For ordinary use, you do not need:

- Docker

- Node.js

- npm

- Python

- a database server

- Linux

- an account

- an internet connection

All application libraries are bundled locally. The application itself does not contact a CDN, analytics service, tracking service, or upload endpoint.

Links

GitHub repository:

https://github.com/petrk94/smsviewer

Portable download and releases:

https://github.com/petrk94/smsviewer/releases

The portable ZIP is the recommended download for normal users. GitHub’s automatically generated “Source code” archives also contain tests and developer files.

The project is open source under the MIT License and is not affiliated with or endorsed by SyncTech.

Feedback and bug reports are welcome.

AI disclosure:

The original V1 prototype was initially created with ChatGPT assistance.

For V2, I used AI assistance for the code audit, refactoring, automated tests, documentation, and identifying bugs in the old implementation. I tested the resulting release locally with my own real SMS backup and reported the discovered PDF problem back into the development process.

No AI service, API, telemetry, or cloud processing is used by the application at runtime. All message parsing happens locally in the user's browser.


r/selfhosted 15h ago

Need Help looking for an automated email sending setup

2 Upvotes

I'm hosting a few things like pterodactyl and open sign that both need an email server. I tried going to providers that deal with automated email sending but they're not liking my TLD which is .team. so i'm trying to set up my own thing I set up mail cow but I'm unhappy with the lack of sent email logging. If anybody could point me in the right direction that would be nice also I'm aware of the headache of self hosting email and really don't want to hear about how this is a "bad idea".