PeerTube can do this (yes, out of the box!).
I have a Turris Omnia. Very happy with it personally. It comes with OpenWrt but you can put anything you want on it.
Declarative configuration of services and the rest of the entire system, and everything that brings with it.
nginx -t
, otherwise the system build fails and you can’t switch to it)services.foo.enable = true;
in your configuration. And, if you remove that line, the service is gone, so you’re never left with “the random package or file you installed once to test something and has been forgotten about”. That’s the biggest thing it has over any kind of imperative solution IMO.I feel like even if I want to distro hop again and end up putting something else on my desktop, NixOS is going to stay on my servers indefinitely. It’s pretty much a perfect fit for servers.
You don’t need Safari unless it’s for Apple Pay integration or something. WebKit is open source. Use Epiphany or some other browser that uses it.
NixOS uses this, works well for me.
Seconding what others have already said. You should ABSOLUTELY NOT directly back up /var/lib/postgresql if that’s what you’re doing right now. Instead, use pg_dump: https://www.postgresql.org/docs/current/backup-dump.html
This should also give you smaller and probably more compressible backup sizes.
Since you mention nginx, I assume you’re talking about proxying HTTP and not SMTP/IMAP… For that, you have the X-Forwarded-For header which is exactly for that, retaining the real source IP through a reverse proxy.
You should be able to add proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
to your location block.
Alternatively, looks like there’s a Forwarded header (RFC from 2014) which I’ve never seen before but it seems cool: https://www.nginx.com/resources/wiki/start/topics/examples/forwarded/
I guess it comes down to what mailu supports, I have never used that.
If you are talking about SMTP and IMAP, I don’t think there’s a standard way to do this. You’d have to set up port forwarding on the VPS for the SMTP ports and IMAP port, and set up your home server to accept connections from any IP over the wireguard interface.
That’s exceedingly horrible though and there’s a better option for SMTP at least: set up an MTA (e.g. Postfix) on the VPS and have it forward mail to the real destination server. And for outgoing mail it never has to touch your home server (except your client copying it into the Sent inbox over IMAP), just send it out over the VPS directly. Or if you’re using some builtin web client, I guess do set the MTA on your local server to send mail to the VPS’s MTA.
No. (Of course, if you want to use it, use it.) I used it for everything on my server starting out because that’s what everyone was pushing. Did the whole thing, used images from docker hub, used/modified dockerfiles, wrote my own, used first Portainer and then docker-compose to tie everything together. That was until around 3 years ago when I ditched it and installed everything normally, I think after a series of weird internal network problems. Honestly the only positive thing I can say about it is that it means you don’t have to manually allocate ports for those services that can’t listen on unix sockets which always feels a bit yucky.
systemd-analyze security UNIT
.I could probably list more. Unless you really need to do something like dynamically spin up services with something like Kubernetes, which is probably way beyond what you need if you’re hosting a few services, I don’t think it’s something you need.
If I can recommend something instead if you want to look at something new, it would be NixOS. I originally got into it because of the declarative system configuration, but it does everything people here would usually use Docker for and more (I’ve seen it described it as “docker + ansible on steroids”, but uses a more typical central package repository so you do get security updates for everything you have installed, and your entire system as a whole is reproducible using a set of config files (you can still build Nix packages from the 2013 version of the repository I think, they won’t necessarily run on modern kernels though because of kernel ABI changes since then). However, be warned, you need to learn the Nix language and NixOS configuration, which has quite a learning curve tbh. But on the other hand, setting up a lot of services is as easy as adding one line to the configuration to enable the service.
I’m eying servercheap.com and it says in description “1 IPv4”, but then it offers “Add’l Ipv4 Addresses” for 9$. I’m bit lost here and I’m not even sure do I need IPv4 address. Maybe I can run duckdns or ddclient to avoid additional cost?
You should have an IPv4 address unless you’re sure everyone who needs to access it has working IPv6 access or you don’t mind setting up 6to4/6in4 at the locations that don’t (or complain to ISPs until they fix it). The one should be fine.
Never not going to mention NixOS. :)
You just need to set services.jellyfin.enable = true;
in your system configuration and that’s it. It’s not containers, but it’s better than containers.
My condolences :(
CGNAT but no IPv6? Despicable
I have a Turris Omnia (https://turris.com). Comes with their custom OpenWrt out of the box so can do everything that can, with some extra features. Hardware is pretty good: two wifi cards, one of which can do 802.11ax, 6 GBit ethernet ports, 1 SFP port, 2GB RAM, 8GB EMMC flash, supports adding a PCIe SSD. You can also pretty easily install your own OS on it if you want to, personally I have it booting off of a PCIe SSD with NixOS on it.
Ouch, that’s awful. Yeah tbh I wouldn’t quite trust it to do encryption well. I haven’t had any actual problems with Nextcloud but it does feel like it’s held together by duck tape.
Bare metal (using the NixOS module, so the manual stuff like database upgrades after an update and such is automated). Only containers that go on my servers are Pterodactyl because it requires it ;)
Really? Nextcloud has been pretty set-and-forget for me.
People host stuff on Raspberry Pis, so why not a laptop. One limit you might have is USB speeds, especially if you want to add more drives.
tunnelbroker.net since I don’t have static IPv6 currently. Otherwise, that.