this post was submitted on 25 Feb 2025
57 points (93.8% liked)

Selfhosted

42858 readers
548 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

Greetings,

my current ISP refuses to provide me a static IP and they also blocks incoming connection to my ipv6 so I can't host services on just ipv6 too. I will be changing my ISP when the plan expires.

without public IP I can host my own IRC bouncer but I would like to know what else can I self host? Thanks in advance!

top 50 comments
sorted by: hot top controversial new old
[–] corsicanguppy@lemmy.ca 1 points 47 seconds ago

softwares

That's like 'traffics' and 'manies' and 'mails', right?

[–] Voroxpete@sh.itjust.works 1 points 9 minutes ago

I just use a DDNS updater. That's honestly good enough for most purposes.

Alternatively, you could use a service like Zerotier, Tailscale or Netbird to create a virtual private LAN connection to a free Oracle VPS, then route the traffic from the VPN to your home network.

[–] billwashere@lemmy.world 9 points 4 hours ago

Tailscale or Cloudflare will solve your problems.

[–] ikidd@lemmy.world 9 points 4 hours ago* (last edited 4 hours ago)

Put everything behind Tailscale or another VPN and use it that way from outside devices. There should be very little need to have a public IP, and if there's something that has to be exposed, use ngrok, cloudflared or Tailscale Funnel.

[–] Evotech@lemmy.world 2 points 3 hours ago

Anything

I use cloudflare / cloudflared agent to provide features hosted locally

[–] Shimitar@downonthestreet.eu 9 points 5 hours ago (1 children)

Rent a VPN, setup a wire guard tunnel and fuck your ISP!

Anyway having a real public IP on a residential block is basically impossible anywhere but in the USA, I guess.

[–] Darkassassin07@lemmy.ca 2 points 3 hours ago

Public IPV4 here. It's not static, but very rarely rotates. DDNS ftw.

Telus Residential in Canada.

[–] MangoPenguin@lemmy.blahaj.zone 22 points 6 hours ago

Basically everything. Self hosting doesn't rely on public access.

[–] _cryptagion@lemmy.dbzer0.com 8 points 6 hours ago (1 children)

Literally anything you want. You don’t need a static IP, any dynamic IP with a software updater will work. For example, I have some public sites proxied through Cloudflare, and I use the DDNS updater for Docker that keeps my DNS correct.

[–] Shimitar@downonthestreet.eu 3 points 5 hours ago (2 children)

The ISP is blocking his ports too, it seems.

[–] Darkassassin07@lemmy.ca 1 points 3 hours ago* (last edited 3 hours ago)

Should check which ports.

Mine blocks 80 inbound and 25 outbound, but everything else I've tried works. (so no default http, and no outbound email)

I only really want 443 for simplicity, everything else can be random ports.

[–] _cryptagion@lemmy.dbzer0.com 2 points 5 hours ago (1 children)

That’s an odd thing to see these days. I didn’t know ISPs still did that. I bet they offer a more expensive tier for businesses is why.

[–] Shimitar@downonthestreet.eu 2 points 4 hours ago

In my country no ISP will offer you a real IP address anymore. Not on IPv4 at least. So doesn't matter if your ports are blocked or not, you are CG-NATted in any case.

[–] bdonvr@thelemmy.club 5 points 7 hours ago

I just have a script that checks my IP every few minutes and changes the DNS record as necessary

[–] StaticFlow@feddit.uk 19 points 9 hours ago

Self host all your stuff and use tailscale if you just want to provide private services to yourself

[–] just_another_person@lemmy.world 44 points 11 hours ago (1 children)

Anything. You don't need any services to be public unless you choose for them to be.

[–] kionite231@lemmy.ca 7 points 11 hours ago (2 children)

actually I was thinking about hosting my own fediverse service to own my data but I can't do that without a static public IP and domain name.

[–] rtxn@lemmy.world 26 points 11 hours ago* (last edited 11 hours ago) (2 children)

As long as you're not behind CGNAT, you can use a dynamic DNS provider (like duckdns.org) and its web API to keep a record pointed at your IP. If you're behind CGNAT, Tailscale also has a service (Tailscale Funnel) that can expose an internal service to the internet.

You could also pay for a small VPS with a static IP, and set up a Wireguard tunnel to your home server and an HTTPS proxy to forward traffic through the tunnel.

Also, just in general, use Tailscale. It's serious black magic fuckery on the firewall.

[–] Confused_Emus@lemmy.dbzer0.com 1 points 2 hours ago

I tried using DuckDNS for a while for DDNS, but noticed it seemed to have frequent periods of a few minutes each when it just wouldn’t resolve. Also was unable to get a matrix/synapse setup working behind it. It’s handy as a free service and nice if you just need basic DDNS, but it’s not the most reliable for hosting stuff from my experience.

I eventually settled on buying my own domain. Was much cheaper and easier to figure out DNS management than I was expecting, and my hosted services run so smoothly now.

[–] kionite231@lemmy.ca 4 points 10 hours ago

Yeah I am behind CGNAT so I guess I have to use either Tailscale or wireguard as other users also suggested.

Thank you for the reply!

[–] sk@hub.utsukta.org 3 points 10 hours ago (1 children)

@whoareu cloudflare tunnel can easily help you do that. the only limitation is your domain will need to be from cloudflare. It works well, I am hosting an instance without any public IP and without exposing any ports.

[–] lordnikon@lemmy.world 3 points 4 hours ago

Your domain need to be tied to cloudflare you don't need to buy one from them. I just moved mine to them didn't pay them a dime

[–] qaz@lemmy.world 9 points 9 hours ago* (last edited 9 hours ago) (1 children)

You can use Tailscale, you can access your personal services with it but also expose public services with their Funnels system.

Keep in mind that while the clients are open source, their servers are running proprietary software.

[–] lorentz@feddit.it 7 points 7 hours ago

I started using headscale (the opensource reimplementation of tailscale server) on a private vps. It is incredibly better compared to plain wireguard. I regret waiting so much before switching.

Something that really made my life easier: wireguard is poor at roaming: switching to and from my wifi created issues because the server wasn't reachable anymore from its public ip and wireguard didn't bother to query the DNS again to check the new IP. Also, configuration is dead simple because it takes care of iptables for you (especially good when you enables forwarding to a node).

Since the server just sends small messages for the control plane and all the traffic is p2p between the devices, the smallest vps with the smaller connectivity is more than enough to handle it.

[–] fiddlesticks@lemmy.dbzer0.com 12 points 10 hours ago

As someone in a similar situation I'd recommend using a free tier oracle vps with a wireguard tunnel to connect to you services. Effectively just using the vps as a proxy for your own network. Here's a guide that should work for your purposes https://github.com/mochman/Bypass_CGNAT

[–] SexualPolytope@lemmy.sdf.org 11 points 10 hours ago* (last edited 10 hours ago) (1 children)

The best way would be to use a VPS to proxy your traffic to you. You can achieve this for pretty cheap, just set up an wireguard tunnel to a cheap VPS. That's exactly how I access all my services from outside my home. As long as the VPS has a publicly accessible IP (most of them do), you being behind CGNAT should not be an issue.

[–] kernelle@0d.gs 3 points 9 hours ago

This is the way OP

[–] Xanza@lemm.ee 9 points 10 hours ago (4 children)

my current ISP refuses to provide me a static IP

So then use dynamic dns? HurricaneElectric offers DynDNS now and it's great. You can update it right over curl if you want. I have it mapped to a cli function;

~\downloads
❯ ddns
HTTP/1.1 200 OK
Cache-Control: no-cache, must-revalidate
Content-Length: 18
Content-Type: text/html
Date: Tue, 25 Feb 2025 09:24:18 GMT
Email: DNS Administrator <dnsadmin@he.net>
Expires: Wed, 25 Feb 2026 09:24:18 GMT
Server: dns.he.net v0.0.1

nochg {ip}
load more comments (4 replies)
[–] hendrik@palaver.p3x.de 11 points 11 hours ago* (last edited 10 hours ago)

I mean you can host anything. It's just not reachable from the outside. And Fediverse or anything that gets data pushed in, won't work. The common method to handle all of this is to use some tunnelling solution.

[–] sirico@feddit.uk 10 points 11 hours ago (1 children)

If this is just for personal use, I'd see if you can put their router in modem mode and go get a better router, then I'd just use tail-scale or WireGuard.

[–] kionite231@lemmy.ca 4 points 11 hours ago (1 children)

tailscale is looking good I might try that

load more comments (1 replies)
[–] Greg@lemmy.ca 5 points 10 hours ago (1 children)

Use Cloudflare's free tier tunnel

[–] Krik@lemmy.dbzer0.com 1 points 8 hours ago (1 children)

They'll shut it down if you send more than a few megabytes down that tunnel. It's ok if you just need a connection (for ssh and stuff) but anything that generates a lot of traffic will be blocked.

[–] Greg@lemmy.ca 1 points 7 hours ago* (last edited 7 hours ago)

I haven’t checked the ToS in a while but last I checked it was 50mb upload limit for the free tier and a loosely policed no video streaming. And they don’t shut you down if you send files larger than 50mb, the upload just fails. I served over 8 million requests through the free tier last month.

[–] possiblylinux127@lemmy.zip 0 points 5 hours ago (1 children)

Why do you need to expose a service publicly?

[–] Shimitar@downonthestreet.eu 4 points 5 hours ago (3 children)

Why do you need to make a question questioning OP needs, when he is looking for a solution to a problem?

[–] possiblylinux127@lemmy.zip -1 points 1 hour ago

Because they are trying to blow off there own foot.

[–] vithigar@lemmy.ca 6 points 5 hours ago (2 children)

Because of the XY problem. The problem OP is stating may not actually be the source of the issues OP is experiencing.

Finding out what OP is trying to do will better inform a solution and may make the stated problem irrelevant.

[–] Shimitar@downonthestreet.eu 2 points 4 hours ago (1 children)

Good point, but did it solve anything?

[–] vithigar@lemmy.ca 1 points 2 hours ago

OP doesn't seem to have responded, so no, but that's not the fault of the question.

[–] Jakeroxs@sh.itjust.works 1 points 4 hours ago

The question behind the question

[–] bluGill@fedia.io 3 points 4 hours ago (1 children)

Because too often people are asking for a solution to the wrong problem. I can tell how to setup a car to drive from the Hawaii to Iceland, but odds are that is not your actual goal. (most often the correct answer is fly to iceland and rent a car, or perhaps just public transit in iceland. You can also put your car on a ship. It is possible to modify a car to drive on the ocean if that is really what you want to do)

[–] Shimitar@downonthestreet.eu 2 points 4 hours ago (1 children)

Darn, i really wanted to drive to Iceland, now, you are downplaying my needs. I feel offended! /s

[–] bluGill@fedia.io 1 points 3 hours ago

I'm not stopping you. However make sure you understand what you want to do and why it isn't recommended in general. It looks like an interesting project that I hope to read about sometime (hopefully not as a you sunk to the bottom of the ocean)

[–] nitrolife@rekabu.ru 3 points 10 hours ago* (last edited 10 hours ago) (1 children)

Look:

  1. you can buy any VPS server or use free VM in Amazon cloud
  2. then connect your home PC to this VPS with VPN tunnel After that you have public IP address (on VPS) linked with you home server.
  3. configure VPS for pass through incoming ports to you home server After that you can host anything for anyone in v4 or v6 internet.
[–] possiblylinux127@lemmy.zip 1 points 5 hours ago

Just make sure you secure everything

load more comments
view more: next ›