I just recently started playing around with an old pc as my homeserver and am curious of any recommendations for lesser known self hostable foss software that you would recommend
Here are a few I like:
- Jellyfin - a media server software that allows you to organize and stream your personal media collection.
- NextCloud - a self-hosted file sync and sharing platform. Not as good as Google Drive (of course), but it can do the job.
- Bitwarden (with a Rust-written alternative named vaultwarden) - a password manager for storing and autofilling login credentials.
- Matrix - an open network for secure, decentralized communication. WhatsApp, but in the Fediverse.
- PiHole - a DNS sinkhole that blocks ads and other unwanted content.
- Mycroft - an open-source voice assistant. You can make your own Google Home with it.
- OctoPrint - web interface that allows you to control 3D printers. Pretty handy if you have one!
- Gitea - a lightweight self-hostable GitHub
- Home Assistant - an open-source home automation platform. Can integrate a lot of other things in your house, including some of the things I mentioned above.
- The X-arr initiative - a collection of tools for managing and organizing media libraries. Pretty good if you deploy your own media server:
- Sonarr - Select TV shows and it will automatically download episodes for you.
- Radarr -> movies
- Lidarr -> music
Personally, as well as NextCloud, I’d host instances of LibreX, CloudTube, PiHole, Gitea, XMPP, and CryptPad.
If it’s fun you’re after, though, why not try hosting a Minecraft server? And how about XMPP or Matrix, to keep in touch with friends?
What’s your xmpp server of choice?
I haven’t really looked into it much, as I don’t currently have enough time or money to self-host anything, but I’d probably go with Prosody to start with.
Syncthing to replace Google drive and Photoprism for Photos. Both have a great functionality and run well on my 12yrs old home server with 2gb of ram.
I’m really happy with Photoprism as well, it’s great to have facial recognition without relying on Google Photos
Yeah, and syncing is so easy, I just press a button and don’t care about it.
I have two instances of BookStack. A public-facing one for bird stuff, and one for home stuff. I also self-host an instance of Plausible Analytics as a privacy-respecting alternative to Google Analytics.
Nextcloud, Bitwarden (vaultwarden is the name of the OSS server), Adguard Home / Pihole and Paperless-NGX might be some things which can have a pretty big impact in your daily life.
!selfhost@lemmy.ml
https://lemmy.ml/c/selfhost(still don’t know how to link communitys here)
Here are some I find really useful:
- Jellyfin (media interface)
- paperless-ng (document store with OCR, tagging, search, etc.)
- Miniflux (RSS reader)
Thanks, paperless will be really useful at uni
I use all of these and can confirm they’re really good! I can’t believe I used to just search through multiple email accounts instead of using Paperless.
First time hearing of Paperless. That’s super cool!
- Caddy - Reverse proxy
- Owncast - Twitch alternative
- Jellyfin - Home video streaming application
- Joplin - Note taking app that syncs
- Syncthing - syncs files from my LineageOS (Android) phones to PC
- PiHole - AD blocker
- Minetest - open source voxel game engine (basically Minecraft)
- Veloren - open source adventure game
- Invidious - frontend for Youtube
- Libreddit - frontend for Reddit (about to stop working)
- Proxitok - frontend for TikTok
- Nitter - frontend for Twitter
- Rimgo - frontend for Imgur
- Libremdb - frontend for IMDB
Edit: Fixed PiHole from saying “VPN” blocker to “AD” :-D
Are we sure Libreddit will stop working? The latest post from Reddit states that less than 100 api calls per second will remain free if you’re logged in. I’m not exactly sure how Libreddit works (I use a self-hosted Troddit instance) but it’s my understanding that API calls tied to your own user should be fine as long as you stick under than 100/sec limit.
Just going off what they said:
I’ve got a pretty booring setup compared to most 🤣. Ubuntu Server running the following in docker,
- Plex
- Audiobookshelf
- Komga
Audiobookshelf has come a really long way. The version out now is heaps and bounds better than what it was 1 year ago.
I’m using the following:
Plex for music/anime/tv/movies, calibre webserver for ebooks/manga, qbittorrent web+Prowlarr to search for and download content, SyncThing to keep things in sync between my server and desktop, and I’m also file sharing with nicotine++
On my 2 raspberry pi’s I am running Pihole, Pivpn, Syncthing, Photoprism, Unify controller, Heimdall (webpage that has all my servers…locally accessible, or non local via wireguard connection via pivpn) Might be more can’t remember! Prob more from other suggestions on here over next few days 😂
Might I suggest Dashy/Homarr? Heimdall has been abandoned I think. I went from Heimdall to Organizarr to Dashy/Homarr.
- Portainer server and agent for monitoring all docker hosts in one place
- Traefik as reverse proxy
- Dashy (complex) and Homarr (simpler) as dashboards
- Gluetun for VPN access for containers and proxy for everyone on the network
- Radarr/Sonarr for managing Movies and TV shows
- Navidrome for music
- Audiobookshelf for audiobooks
- Transmission/qbittorrent/rtorrent/deluge as torrent clients
- Pinhole for DNS
- Technitium for more advanced DNS and DHCP (might replace all piholes with this or blocky in the future)
- Plex/Jellyfin for media streaming
- JellyfinVue - awesome frontend to jellyfin
- Bazarr - for subtitles
Caddy is simpler for the reverse proxy. Just sharing for people that get scared when they try to set up Traefik.
Ngnix-proxy-manager is even simpler :) But along with the automatic router creation using labels, I’ve found traefik to be the most robust of all three.
The traefik syntax and configuration using yaml is really initutive. I can link a good guide here if someone wants it. The official documentation isn’t that good.
One of my favourite guides explaining the configuration files for traefik.
Nginx proxy manager is simple, but I can’t manage to make it work with https on porkbun. Nginx-proxy works just fine and it’s probably the simplest i’ve seen.
That is pretty cool :) I have a domain on porbunk too but even up putting DNS on cloudflare because porkbum uses cloudflare anyway but doesn’t expose most of the features. Kind of a loss loss. Cloudflare works with pretty much everything.
I’ll check out nginx-proxy. Have heard good things about swag too. How is the setup on nginx-proxy compared to other options?
I didn’t know that about porkbun.
Basically you run the container and then put a couple environment variables in the containers you want to proxy and it handles all of it for you, including certs. Just works.
Thanks. Seems pretty much identical to traefik which makes sense because I think most of reverse proxies just use LetsEncrypt underneath.
Please do! I have been trying to set up remote access to a server I have, and there seems to be so many solutions and all seem very complex.
Have linked one :) For remote access, I wouldn’t necessarily use traefik at the edge. The safest solution would probably installing zerotier/tailscale on the remote server and accessing traefik through that. That way you don’t have to expose unnecessary parts or worry about robustness of authentication etc.
If it is a single computer you can easily make a two computer network using the instructions from wireguard archwiki page and you’re all set :)
Ooh. I signed up for tailscale, but havent gotten the configuration right I think. Also signed up for NextDNS. Got some work to do but no longer have the time.
What I actually want to do is make it so I can give out accounts to services to my family and girlfriend so they can watch movies and whatever.
Tailscale is one step to many. I think I will need to purchase a domain name or set up a VPN, which seems a little scary to me.
Honestly I started using traefik first and I agree, the learning curve is steep. I’m only just now starting to understand what my labels are doing. But now, I’ve tried caddy and literally cannot get it to work, or find how to port what I have on traefik over to caddy lol.
Here are all the steps after installing Caddy to create a reverse proxy with SSL:
- Open the
/etc/caddy/Caddyfile
file - Add the following, replacing the domain and port with those that you want to use.
reverse_proxy localhost:8080
}
- Restart Caddy with
systemctl restart caddy
Super interesting. I’ll have to experiment with this, the guides I found were not this straight forward. Thanks!
- Open the
Home Assistant! You can host it inside a VM.
I attempted to use different home assistant softwares, but i always ended up deciding that i will wait till offline voice recognition is a bit more usable (not being a native englis speaker its a rougher experience). I will pobably try it again soon though.
Home Assistant, despite the name, isn’t an Assistant like Alexa or Google Home, it is actually a home automation integrator. It connects to practically everything, and then workflows can be triggered off the states of your IOT stuff. In my house, I use it to, among other things, turn down/off the light when grid power goes down and I’m running on battery power, as well as send me a notification that I’ve lost grid power.
- dokuwiki
- draw.io
- gitea
- woodpecker (ci/cd)
- minio
- postgres
- freshrss (rss server and reader)
- firefly3 (finance / budgets / expenses)
- calibre
- Pi-hole (primary on a pi, secondary on docker host)
Have you looked at Adguard Home instead of pi-hole? I had been on pi-hole for years and just recently switched to AGH. My primary is in docker and secondary on pi but I think I like your idea better so I’ll probably switch that around. I like AGH better so far.
I haven’t looked into it yet. What do you like better about it?
(I put my primary pi-hole on a pi because it’s practically the only thing on it - I can reboot it quickly if needed and not have a lengthy downtime on my DNS - the was before I had the second one running)
I find the user interface to be more intuitive and it seems like it’s a bit more effective than pi-hole at ad blocking. It also has built in adult content filter lists if you want that which includes forcing safe search on multiple search engines, which is interesting. One thing I’ll miss about pi-hole is the local dns config. I had stuff set like “pi.local” and “unRAID.local” so I didn’t have to type IPs over and over. Afaik, AGH does not have that feature.
I currently have a server running dnsmasq just for DHCP/local DNS, and have it set with Adguard Home as its upstream servers. That way I can set up custom blocklists, and have local resolution as well.
Thank you for the review. I’m using the dns config pretty heavily with my pi-hole at the moment, but perhaps I can find another approach to name my home lab services.
Jumping back on to correct myself: AGH does have local DNS ability. It’s under ‘DNS rewrites’ and behaves like a host file. Works perfectly!
Edit: well sort of. Doesn’t want to accept IP:port format. Damn. I’ll have to keep looking…
From the things I use:
- Uptime Kuna, for monitoring the availability of websites/services
- Gitea, for hosting code
- PicoShare, for sharing files
- Maddy, for email
How has your experience hosting your own email been? I often hear that the big providers (Google, Microsoft, etc.) will simply drop your sent mails.
I also host my own mail and there’s been little issues.
Microsoft is a pain in the ass if you’re in an IP space they don’t like like DigitalOcean. Which is ironic because they have the worst spam filter by far in the industry.
If you want to get through to everyone you will have to:
- Use a “good” TLD ( not .to, not .xyz, …)
- Don’t use cloud platforms that are regularily used for spam (mostly DigitalOcean)
- Use SPF
- Use DMARC
- Use DKIM
- Use a PTR record
- Don’t make an open relay by accident
- Use proper ports and certificates
- Register an abuse account at the big players (Google, Microsoft, …)
- Don’t use an dynamic IP
- Keep it up to date
- Minimize downtime
I can’t recommend mailcow enough, it makes setting up a mail server a breeze.
https://github.com/mailcow/mailcow-dockerized
Use the MXToolbox to verify your server(s).
I have had issues with it over the years. Many will blacklist entire cidr nets for a single bad actor. I get this on my linodes frequently if I proxy traffic through them. Ie: tons of captchas on google/YouTube.
When I ran my own mail it was similar. Often having to spend time getting IPs off rbls and the like because some other node on my subnet was malicious.
In the end, I just moved my email over to workspace. Not ideal. But it works.
One thing I did notice was that as soon as I registered my domain in workspace (but hadn’t even setup mx records or began moving mail) a lot of issues with google immediately stopped, and thus, same with Office.com. I actually ran this way for a while but then google axed freed accounts and I just moved my stuff to them and pay.
Maybe because I use a gTLD? I dunno. But it was a headache.