Hey. I really like the idea of the fediverse and Lemmy and would want to know as a beginner/not so experienced regarding selfhosting what would be the best way to get started? I saw there are vps options, but don’t know of I’m looking in the right direction.
What I’m curious about is running a server only for myself. Am I gonna have problems with being defederated? I’m wanting to run Matrix right next to it on the same domain but they seem much more open to the concept of personal servers.
it’s alright, i run a personal server with closed registrations. looking for new communities is a bit glitchy, you might need to search a few times before it appears.
e: one thing i have to note is that docker-related documentation is somewhat inaccurate and, in my opinion, their setup is a bit overcomplicated.
Using their docker set up as well and I thought it was quite lean. Out of curiosity, what do you think is overcomplicated about it?
it’s all minor stuff, really, but it adds up and people who are not particularly savvy might give up on self-hosting lemmy because of if. so some polish and cleanup might be a good idea.
i know there’s an ansible role too but i haven’t looked through it. i have to do way too much ansible code review & refactoring at work. :)
I’m planning on self-hosting an instance (and some other web apps) on my local server at home, but over a VPN on a public VPS. I feel like that’s gonna make an overcomplicated setup even more overcomplicated lol
i’m hosting lemmy on a vds using an S3 storage hosted at home (over wireguard). :)
i’ve decided against hosting lemmy at home because there’s no way to setup a proxy for outbound connections (or i couldn’t find it) so any federation request your lemmy instance makes reveals your home IP to owners of that particular instance.
Wait, how would that work? If I’m using OpenVPN, would it not be using the source and/or destination IP as my OpenVPN client IP, and not my home IP? After all, OpenVPN is completely bypassing my routing and NAT from my home connection, and it just tunnels traffic through the VPN instead.
I believe the source IP would be the IP of any server trying to contact my server, and then the destination IP would be my VPN client IP because of the DNAT rule I have on my VPN server (say 10.0.0.2) so it would not expose my home IP, or is that not correct? If both Lemmy and Nginx are either using a local docker IP (not on my home network) or the OpenVPN client IP from tun0, how would they even be aware of my home IP which would be on a separate network interface?
Are you saying I’d be exposing my IP if I tried my home-based VPN port forwarded setup? I am pretty sure it wouldn’t be exposing my home IP, but maybe I am mistaken.
if you pass all outbound connections through vpn you’ll be fine.
Good to know, thanks!
I also asked ChatGPT because I was curious, and ChatGPT said since I am using a VPN, when my home server makes outbound requests, they will first go through the VPN tunnel and emerge from the VPS which means that to external systems (like the servers receiving my federation requests), the source IP will appear to be the public IP of my VPS, not my home IP.
Very cool stuff! It makes sense that VPNs can be used to mask home IPs even in this way, since VPNs are literally designed for security and privacy lol
I’ve followed the official guide on how to set it up using docker. I had to tweak the compose file in a way it was not mentioned in the docs. Also I have an already set up nginx web server and while I was able to set up a reverse proxy vhost to the reverse proxy that was defined in the compose I wasn’t able to get websocket working. I thought of removing the proxy entirely from the compose file and configure the “main” nginx server for lemmy, I just gave up and removed everything because I felt like it doesn’t worth the time.
I had the exact same problem – preexisting proxy server to integrate (caddy). fiddled for a while… could not get it to work… gave up.
No, I don’t think so. I’ve just been adding sub…“lemmys” and the flow is a little wonky but it seems to be working well after a few days.