1. 32

If you are into self hosting your stuff at home then what are some tools that you use and what type of hardware do you use to host on ?

  1.  

  2. 14

    My server is currently hosting:

    • My own mail server, using postfix+dovecot+rspamd + postgresql, adapted from https://workaround.org/ispmail/stretch/managing-users-aliases-domains
    • A web server serving a personal website (written with hugo)
    • Server monitoring with netdata
    • Some Python Telegram bots
    • Some Golang Telegram bots
    • A mumble server, a bit like teamspeak/skype but selfhosted
    • TheLounge, an IRC client (hosted as a server because irc is a shit protocol)
    • Databases, postgres and mysql
    • A small wordpress website, which needed mysql
    • An instance of Google’s Battery Historian
    • Digital Ocean monitoring tool called do-agent
    • My own git server called [Gitea[(https://gitea.io), containing my dotfiles, my website and some more stuff
    • PHP for some web pages, with php-fpm
    • A tmux instance running gnuchess as a user with username chess and a simple password, so that I can play chess with friends by attaching to the same tmux instance remotely and typing one-at-a-time into the same terminal
    • A tmux instance running htop, and looping df -h and free -h, because I never changed that
    • apt unattended-upgrades

    I think that’s about it, maybe some small stuffs but this is the most interesting stuff. This is all running on DigitalOcean’s smallest droplet with 1G RAM. It runs consistently with ~600M RAM in use and 200M swap in use, because rspamd needs ~200M statically which are never used (I don’t send a whole lot of email).

    On the todo list:

    • A proper backup solution (oops)
    • Some Nextcloud-like functionality. However that requires disk space, which I don’t have a whole lot of at the moment.

    Hosting your own mail is doable but difficult. I thought I was fairly okay at sysadminning, but it took a whole lot more time than I expected. I think atm I’ve got over 100 hours trying to get a mailserver operational. Tried a docker-container-based server first, but that’s just a bad idea. I kinda agree with @eloy that your email should always work. But it was fun to do and people are amused/impressed by it sometimes. Hosting Nextcloud is less fun because it’s a bit more resource intensive, so it probably won’t fit on this VPS in addition to the rest. But a spare 2G RAM laptop with a harddrive should do fine, if you backup your stuff properly.

    1. 14

      I don’t host my email, because I think it’s too much of a risk. Email should always work, period. With a self hosted environment I can’t assure that.

      1. 18

        That’s exactly why I do self-host. If you rely on somebody like Google, you’re at their mercy as far as what actually gets through or not.

        1. 7

          You’re always going to be at the mercy of 3rd parties when running your email. If your IP ends up on a blocklist you’re doomed, every provider will blackhole your email. You’re one person, you’ll struggle massively to get it lifted, if at all - meanwhile your email is being blackholed. Google end up on a blocklist, they’ve huge leverage and will have it fixed instantly.

          Email operates on trust, its really hard to gain trust when you’re one person with no history. Especially when you don’t even own the IP space, so you’re relying on the trust of your untrustworthy ISP members.

          1. 8

            That’s my point. Google and other providers are silently blocking incoming emails. I’d rather be in charge of what gets through to me. Of course you’re always at the mercy of third parties regardless, but self-hosting makes it one less.

            By the way, I have a side-project that sends several thousand emails everyday. I’ve had to deal with blocklists a few times, but it’s really not that bad. It’s also trivial to switch outgoing IP addresses.

            1. 6

              I agree. I’ve recently noticed that Google is being way too aggressive in dropping the mail, including from some mailing lists, not to mention the private domains.

              As for your second point — apparently, I actually have had my domain name itself blocked by Gmail, expectedly due to sending myself some lists of domains through crontab, so, I’ve actually had to switch my domain for outgoing mail for now.

        2. 7

          When self-hosting, you at least have access to logs. You can see, if other side greylisted you or accepted mail immediately. Mail service providers are hiding all kind information, both about incoming and outgoing connections. I have self hosted my email long-long time, over 15 years. Sometimes there is little bit trouble, but nothing too serious. Most practical advice: don’t use well known cheap VPS providers. Those IP-s are bad neighbourhood, most problems with delivery are going from that.

        3. 5

          I started self-hosting services when I got a fixed internet connection, first by using a server stuck in my office hanging off an 4mbit line (this was 1995), later by installing a server ‘under the stairs’ in my home (1997) hanging off a cable modem (which was not ideal due to the extreme asymmetry of the up- and download rates), followed through several speed hikes on the cable modem, a move to another country (Sweden), ADSL and since a few years a gigabit fiber line here on our farm in the Swedish countryside. I’ve self-hosted mail (etc) for about 24 years now.

          Until recently I used one of a pair of ageing Intel SS4200’s (Pentium E2220, 2GB) to host mail, web, file, media (with local player through wireless audio connection) and other services. I migrated most functions to a HP DL380g7 [1] (2 x X5675, 128GB) running Debian stable, managed through Proxmox:

          mail: mail services

          • exim (mta)
          • dovecot (lda, imap)
          • spamassassin, greylistd, managesieved (filter)

          The mail container does not run any other services. The same host runs several containers for other services:

          serve: web and web-related services (e.g. Libreoffice Online (lool)).

          • nextcloud (file and application services, CODE for ‘office’ style applications)
          • peertube (federated video)
          • pixelfed (federated media sharing)
          • airsonic (audio, music)
          • searx (search)
          • roundcube (web mua)
          • various other services

          auth: authentication and authorisation, certificates

          base: database and cache (PostgreSQL, Mariadb, Redis)

          build: build server (started on demand)

          It also runs a VM for routing and firewall using pfSense, currently only used for testing but meant to replace the ageing consumer router which now sits between the gigabit fiber and the DL380g7. The machine has far more capacity than needed for the current load but is in need of more storage, this will be remedied by adding a Netapp DS4243 storage cabinet (24 x 3.5” SAS/SATA) in the not too distant future. Once this has been added and the last remaining services have been migrated from the pair of SS4200’s I’ve used for the past 10+ years these can finally be switched off for good.

          [1] https://lobste.rs/s/47mpry/apple_is_trying_kill_web_technology#c_fhg7k0

          1. 4

            I do host my Gopher and Gemini servers along with some git repos on a raspberry Pi with a cluster hat and 4 Pi zeroes on top. I want to self-host as much as I can but I’m just at the beginning. I’d like to add a BBS, a mastodon/pleroma instance among other things. I also have a NAS at work that I use for cloud storage not to have all my eggs in the same basket and make proper backups. For mails I use a small vultr instance under OpenBSD.

            1. 4

              A week or two ago, I set up a Raspberry Pi hooked up to a 2TB HD running:

              • a Nextcloud instance, hosting music, videos, photos, books, contacts, calendar, etc. It’s my iCloud replacement.
              • Emby, for streaming video to browser / Apple TV / iPhone.
              • Duplicacy, backing everything up to a different local HD and Wasabi. I have the rest of my machines backing up to the same Wasabi bucket, so I can be lazy about excluding sync’d folders on each machine and take advantage of deduplication.

              It’s sitting behind WireGuard, so I can access it from the outside world without opening HTTPS. I’m using CloudBeats on the iPhone to stream music from it, and selective sync + webdav with the Nextcloud app on desktop / laptop machines. I’ll probably move personal git repos to it at some point soon, those are on a linode right now.

              I hosted my own email for about 10 years. I stopped the third time an OS upgrade broke it.

              1. 4

                I self host these user-facing services:

                1. Seafile for cloud storage, with each user (me, my partner, some close friends) having their own accounts, and some shared libraries
                2. Jellyfin for audio/video/ebooks, with the shared libraries from seafile mounted into jellyfin (don’t ask how, it’s hacky)
                3. GitLab for git and container registry, as well as CI
                4. A veeeery custom mailu solution, for mail
                5. Rainloop for webmail
                6. Quassel core for IRC
                7. A custom image host, which actually scales images gamma correct
                8. Websites and fdroid repos for my own projects
                9. Minecraft
                10. Some IRC bots
                11. API proxies for e.g. German railway APIs (German railway APIs are almost all exclusively horrifyingly painful XML with no namespace and single-letter names and arrays-in-attributes, my proxies provide the same APIs, but as nice, english, json with standard formats and timestamps)

                using the following infrastructure services:

                1. Keycloak for auth for everything
                2. Postgres for database, redis for job queues and caches
                3. an S3 clone for storage minio
                4. PowerDNS for DNS and reverse zones
                5. Prometheus, Loki and Grafana for monitoring and metrics

                and quite some more :)

                All of this is running on a self-hosted kubeadm-created kubernetes cluster

                (Almost) everything uses keycloak SSO for auth (soon it’s gonna be everything), and actually everything uses postgres for database, the same S3 for storage, and redis as cache and job queue. Combined with the unified metrics, monitoring and logging solution it’s actually quite nice to work with.

                Regarding email, I actually am 100% trusted and never considered spam for all mail hosts except Outlook. Google, Yahoo, Fastmail, etc all handle it fine, with Outlook it’s just a matter of training, I’ve started chatting with some friends who have outlook, instead of through e.g. IRC, almost exclusively through email in recent weeks, and asked them to mark each email as “not spam”, to help train outlooks spam filter :)

                1. 3

                  I use a Linode VM with 2 GB of RAM. Email and web alone barely need 1/4 of that but I also use it as a terminal server for several people. I used to self-host at home with a small Atom board and it worked fine, but then I moved four times within a year and a VM is way nicer for that. To host at home I needed a business-grade internet plan with a static IP anyway and a VM is frankly cheaper and more convenient. That said, if you want to host at home, it’s educational.

                  What it hosts:

                  • email with Postfix, Dovecot and PostgreSQL – ran with static users and no DB for a long time, but for hosting one’s own email the ability to use simple vhosts and aliases is pretty nice.
                  • SSL certs with Let’s Encrypt, for email and web.
                  • Static website with nginx
                  • Wiki with gitit, which is great but unfortunately getting long in the tooth. Nobody seems to have made good wiki software in the last 10 years though.
                  • Setup and maintenance scripts with Ansible – definitely worth the learning curve.
                  • Backups with borg to a NAS sitting in my living room
                  • A bunch of git and mercurial repo’s via SSH – I’ve considered setting up srht on it, but haven’t felt like it yet.

                  Uptime so far: basically 100% over the last year or so. Postfix and Dovecot seem essentially bulletproof.

                  Things I should be doing and am not:

                  • Performance monitoring with collectd and stuff. I keep setting this up, and then not paying attention to it for a year and it bit-rots, so I’ve kinda given up on it.
                  • Downtime alerts with, idk, nagios or something. Haven’t needed it yet, and I’m often SSH’ed into the thing for IRC anyway
                  • Spam filtering. Hasn’t been super necessary so far, will be sooner or later.
                  1. 3

                    Data Center

                    Dedicated FreeBSD 11 server on a ZFS mirror, from OVH. The host is very slim and really just runs ezjail, and unbound as a local resolver. All the action happens inside jails.

                    • MySQL jail - provides database in a “container” for the other jails
                    • PowerDNS jail - Authoritative DNS server, backed by MySQL
                    • LAMP stack jail - a place to host web pages with apache and PHP, for the most part. Using PHP-FPM with per-vhost chroots and UIDs. Containers within containers! Very happy with this setup. Notably hosts:
                      • Ampache - which the whole family uses for mobile-friendly music streaming.
                      • Chevereto - image hosting
                      • NSEdit - Web app for managing our DNS server.
                      • WP Ultimate Recipe - recipe database built on wordpress
                      • Wallabag - read-it-later article saver like Pocket
                      • Lots of WordPress sites for friends and family and assorted custom scratch-built things and experiments
                    • NextCloud jail - NextCloud on nginx + php-fpm. In it’s own jail to keep it completely separated. The whole family uses it for files, calendars and contacts.
                    • Minecraft server jail
                    • Email jail - Custom email hosting setup built on Postfix, Courier-IMAP, Maildrop, MySQL, Apache, PHP. I’ve been hosting my own email since the 90s.
                    • Legacy jail - Really just the old server, that went P2V two or three server moves ago - so easy to do when everything lives in ZFS jails. This is deprecated and I have been moving things off it (very slowly).

                    Home Network

                    PoS old FreeBSD 11 server with a ragtag collection of hard drives on ZFS. It’s mainly our home NAS, storing our media, but also hosts:

                    • Nagios jail - Network monitoring and notification
                    • Asterisk jail - Home and office VoIP
                    • Assorted experiments and goofs

                    Raspberry Pi 3B - Kodi in the living room, playing media from the NAS

                    Raspberry Pi 2B - Custom dashboard app showing server/network status and weather and stuff.

                    Raspberry Pi 1B - Running sprinklers_pi to control our lawn sprinklers.

                    1. 1

                      What’s jail

                      1. 5

                        I’m assuming OP is talking about these types of jails.

                        1. 1

                          Yep. No-overhead containers.

                          1. 1

                            Oh i see never heard about them before

                      2. 3

                        I don’t want to be one of those people, but we had several threads like this in the last months

                        And no, none of those focused on hardware per se - but a lot of comments about email setups :)

                        That said, I self-host postfix+dovecot on a VPS. Used to use my own config, then wanted to switch to mailcow, but couldn’t (not their fault, I still like it very much) and now I use https://github.com/tomav/docker-mailserver/ and my home server runs FreeNAS with ZFS, but I don’t host a “cloud” per se - if I need files, I copy them via SCP or syncthing and don’t use seafile or nextcloud/owncloud.

                        1. 3

                          FreeBSD 12.1 server at ARP Networks (big fan!).

                          • Email (postfix, dovecot, rspamd, clamav, mailman, procmail) using past experience and ideas from here: https://www.c0ffee.net/blog/mail-server-guide/
                          • Web services via caddy
                          • zfs snapshots and sync to a FreeNAS system at home via sanoid/syncoid.

                          I update the base system via freebsd-update.

                          I build my own set of packages from the ports tree with specific options set, via poudriere and install/update via pkg.

                          1. 1

                            Running OpenBSD here, but also on ARP (their servers in Frankfurt). Stable as a rock so far, no issues.

                            Email is not nearly as important to me as it was a few years back, so I don’t really care if sending sometimes wouldn’t work. But in practice it always does anyway.

                          2. 2

                            Self hosting on 2 rented kvm vps instances (1 backup):

                            • email: opensmtpd, dovecot
                            • sip: asterisk (renting DID (direct inward dial) numbers, using voip providers for outgoing calls, I only have a data SIM in my phone)
                            • xmpp: prosody
                            • irc: irssi
                            • stun/turn: coturn (mostly for voip availability on mobile devices)
                            • http: nginx, searx
                            • git: gitolite
                            • file sync: unison (automated), sshfs (automount), occasional rsync or scp but using syncthing more and more, maybe i will eventually set it all up and perma host it)
                            • various pieces of custom code for automating/processing stuff (sms2email gateway. “bots” (code interacting regularly with 3rd party apis or websites), backup scripts, etc)
                            1. 2

                              I wrote my own tool for doing my self-hosted infrastructure:

                              https://github.com/sumdog/bee2

                              I currently host e-mail on an OpenBSD VM on Vultr, but I’d like to migrate it over to running inside Docker containers instead at some point, so I can consolidate things.

                              1. 2

                                Raspberry π and a NAS, in my case a Synology, although I might pick a QNAP if I were to buy one now, for the encryption. Being able to throw away broken drives without a worry is so nice.

                                The key for me is fanless operation (to the degree I have servers at home any more). An rπ is quite fast, really, if you compare it with nineties hardware/software, and if you don’t particularly care to do deepfakes or reencode videos it might serve you well.

                                  1. 2

                                    Poste seems nice.

                                    1. 2

                                      I am hosting an email sever for me, friends and family (separate server, dedicated hardware):

                                      • OpenBSD
                                      • OpenSMTPD
                                      • Dovecot
                                      • rspamd
                                      • procmail
                                      • Roundcube

                                      Before that I used a tiny (512mb) vserver:

                                      • Debian
                                      • Postfix
                                      • Dovecot
                                      • Spamassassin
                                      • OpenDKIM
                                      • OpenDMARC
                                      • procmail
                                      • Roundcube
                                      • some other services

                                      I also host (on FreeBSD, dedicated server):

                                      • XMPP (prosody)
                                      • Blogs (nginx, wordpress)
                                      • Buildbots
                                      • NextCloud
                                      • Mumble Server
                                      • Git Repositories (really just SSH)

                                      Regarding maintenance I think there is huge amounts of FUD regarding especially hosting email. Emails are not something that will require big amounts of work, once its up. There are multiplier reasons for that:

                                      • E-Mail delivery will be retried, so a 100% uptime is not needed, but of course it should not be down all the time
                                      • The part that people often mention about emails not getting through is often related to initial configuration issues. Make sure SPF and DKIM work, maybe also add it to some Spam whitelists, that get used by many spam filters.
                                      • Don’t use your personal email server (that is domain and IP) to send out newsletters, etc.
                                      • E-Mail-Software doesn’t rapidly change, so once you’ve got your setup that setup will do a great job in 15 years, which is unlike various websites and providers
                                      • You will get a returned email if there is a rejection, so you’re very unlikely to not notice a problem. In worst case you send an email with another account

                                      I’ve been running a private email server since I was a teenager, there’s no big setup and I certainly did not get everything right from the beginning, yet I never ended up in a situation where email isn’t working. It’s just there.

                                      The highest maintenance are web applications in my opinion. There is just too much that can go wrong. Especially around things like major PHP version upgrades. Many web apps also have plugins, which might break with version changes and what do you do if your popular plugin ends up unmaintained? Happens.

                                      The rest is somewhere between these.

                                      Also don’t overcomplicate things. Simply use a package manager to avoid manual labor. Oh and use official documentation rather than just copy pasting. It’s nice to look at them, especially to get an overview on steps, but there’s also much stuff that’s outdated or simply plain-wrong.

                                      For people that would like to try this, but feel unsure: Why not just set up an email server, just for fun and run it next to what you already use, for stuff where you don’t think it matters enough. Even if you end up deciding against it there’s things to be learned from this.

                                      1. 2

                                        I have a virtual server on which I host my email, website, gopher site, gemini site, qotd and DNS (although semi-private—the authoritative DNS entries I have registered with my registrar are slaved to my DNS server). Email is postfix with a custom greylist daemon I wrote (which stops the majority of spam), the web server is Apache, custom gopher server, custom qotd server and a custom Gemini server.

                                        I was involved in the web industry since the mid-90s to about 2010 so none of this is foreign to me, and I’ve been running my own server since 1998 (and the same IP since … oh … 2005 or so). I realize I have might have it easier than most when it comes to hosting email.

                                        1. 2

                                          I host an email server using simple-nixos-mailserver, which means my system configuration contains something like this:

                                          mailserver = {
                                              enable = true;
                                              fqdn = "mail.example.com";
                                              domains = [ "example.com" "example2.com" ];
                                              loginAccounts = {
                                                  "user1@example.com" = {
                                                      hashedPassword = "$6$/z4n8AQl6K$kiOkBTWlZfBd7PvF5GsJ8PmPgdZsFGN1jPGZufxxr60PoR0oUsrvzm2oQiflyz5ir9fFJ.d/zKm/NgLXNUsNX/";
                                          
                                                      aliases = [
                                                          "info@example.com"
                                                          "postmaster@example.com"
                                                          "postmaster@example2.com"
                                                      ];
                                                  };
                                              };
                                            };
                                          

                                          https://gitlab.com/simple-nixos-mailserver/nixos-mailserver

                                          Actually I wrote a configuration that loads the account details from JSON which is manipulated by some scripts so it’s super easy to add new accounts.

                                          1. 1

                                            Interesting replies from everyone. I am looking forward to selfhost my stuff very soon

                                            1. 1

                                              I have two pi’s with hdd’s attached, one in my house runs a few extra services like nextcloud, minidlna and some odd and ends. Then I have syncthing syncing files from local computers to my local pi, and the local one to remote which is in another city.

                                              I used to run additional machines at home, when I had a stable connection and a static IP but am now rural so websites/git and some bits (like the reverse ssh so I can login to the remote pi) run on an OpenBSD vps with Vultr.

                                              I’ve been meaning to migrate email to the OpenBSD vps for ages. Seeing so many people doing just that means it is now my weekend project. Does anyone run a seconday mx?

                                              1. 1

                                                Host my own email and websites. OpenBSD, OpenSMTP, httpd on small vultr vps’s Home fileserver running freenas on an older desktop.

                                                1. 2

                                                  I also do this (save for Home server freenas). Gmail blocks a good deal of my outgoing mail, but honestly, this has been covered a lot recently, so I won’t rant here about is worth it or not. (Yes, it’s worth the risk of having undelivered email, but not having google handle all my email needs.)

                                                2. 1

                                                  I’m trying to work toward this direction, but would prefer some “integrated” approach, where developers make sure the individual solutions for everything (mail, contacts, storage, archiving, media server, etc.) work together.

                                                  Probably a bit like NextCloud, but not in PHP.

                                                  1. 1

                                                    Public-facing, I’m hosting my website, my Gogs instance, and a Sparkleshare service (keep intending to move that to a more mobile-friendly service, but never manage to). These are all on a single virtual server at my hosting company.

                                                    In-home, I’m hosting FreeNAS, which I use for personal backups (BackInTime for linux, OS-provided for Mac & Windows), and a media server (Emby, though looking forward to moving to Jellyfin). I also occasionally use it to spin up VMs for dev/test purposes.

                                                    1. 1

                                                      I can’t host much stuff at home because I live in a remote-ish place with no landline Internet. I only self-host a few services on an RPi and a (discontinued) Chip board to stream music, and “daily” jobs about the weather, work, or local news.

                                                      Email (postfix, dovecot, …), plus a bunch of other services (nextcloud, znc, some ruby/go things) run on an old Kimsufi server (1 core, 2gb RAM, 1TB disk) ; a.k.a. SoYouStart in the new world.

                                                      1. 2

                                                        a (discontinued) Chip board

                                                        I have a cluster of 7 (+3 on the way) CHIP running Docker Swarm. I hosted my DNS infrastrcuture (DoH proxy + unbound + ELK + custom scripts that I am going to migrate to DoH proxy + know resolver + Prometheus + custom scripts), motion to control webcams, Home Assistant, an Instagram bot, a Wiki and a Mercurial repository for my scripts. Next step is adding public blogging, ELKflow and an RSS reader (problably Miniflux).

                                                        1. 1

                                                          Which firmware are you using these days on the Chip?

                                                          1. 1

                                                            I am using this: http://www.chip-community.org/index.php/Flash_from_command_line

                                                            The main problem that I have is that several repositories are not available anymore. Anyway I found some mirrors that are working fine. If you want I can share my first setup.

                                                            1. 1

                                                              Thanks, but I found the same resources. I was wondering if there was more advanced community projects around that little board.

                                                      2. 1

                                                        Im hosting a two user instance of nextcloud on an cheap intel NUC[1].

                                                        I am running latest nextcloud on Ubuntu LTS.

                                                        It has a celeron processor, 4GB of RAM and 120GB SSD. I have an USB disk attached with 2TB of space which is where all of the nextcloud files actually live. The box hums along without any issues.

                                                        I am lucky because I have webpass as an ISP and a netgear nighthawk router which comes with free dynamic DNS that makes serving things up very simple.

                                                        I make daily backups and ship them off to backblaze.

                                                        Overall I am very happy with this setup and it works well for me at home and while traveling (even internationally).

                                                        [1] https://www.intel.com/content/www/us/en/products/boards-kits/nuc.html

                                                        1. 1

                                                          Floodgap hosts my email (sendmail: I’m one of those people), web (https://www.floodgap.com/httpi/) and gopher (gopher://gopher.floodgap.com/1/buck) services. I own the AIX POWER6 that runs it and it’s sitting about 20 feet from the couch I’m writing this on. I used to run my own DNS, but I outsourced that.

                                                          I have a small VPS slice that handles mail redundancy and acts as a backup depot. That’s the only part of my core network I don’t actually own or physically possess.

                                                          I’m weird and you probably shouldn’t do what I do. 8-)

                                                          1. 1

                                                            I host my own email on an OpenBSD box hosted on Vultr. It was surprisingly easy to set up! OpenSMTP and spamd ship with OpenBSD, and work great.

                                                            Though, I have a kind of wonky setup: I fetch mail by rsyncing files from the server to my local computer. The files are deleted from the server once fetched. Mail is also encrypted on the server with a public key, and decrypted locally with the private key. It’s odd, but I think it’s simple and it works well for me. There are no IMAP or POP3 servers in OpenBSD base, but I’ve considered adding IMAP support with dovecot.

                                                            1. 1

                                                              I currently host email, VPN, ZNC and web on a $5 Digital Ocean VPS. It gets the job done for now, but I’d love to transition into a fully self-hosted homelab setup someday. My config is like so:

                                                              • email using docker-mailserver
                                                              • VPN using OpenVPN
                                                              • and caddy for my web server (public file host)

                                                              I’ve written about my email setup here. It’s been a very pleasant experience so far.

                                                              1. 1

                                                                I have a mid-sized VPS (low price tier VPSes probably won’t suffice for the kind and quantity of stuff I put on). For email, I have the usual suspects: Postfix & Dovecot. Sieve + client-side filtering for spam. Roundcube for webmail. Nextcloud (with some plugins/extensions) for file sharing.

                                                                Setting up Postfix & Dovecot is definitely non-trivial, to say the least, but once you finish that setup, maintenance is really minimal, mostly just version bumping and SSL cert renewal (LetsEncrpt / certbot). You do have to invest some time and effort into educating yourself about mail hosting, so that your offering is sufficiently secure, and also so that you don’t get your domains and/or IP onto spam blacklists, etc.

                                                                But I’ve hosted my own email for many years, and haven’t had any major problems, so it’s definitely doable. The freedom from being at the mercy of a third-party mail provider is nice.

                                                                1. 1

                                                                  Email I don’t trust myself enough and use posteo.de.

                                                                  Cloud I run nextcloud on a scalway DEV1-L running arch linux. The Nextcloud uses multiple s3 buckets from wasabi.com as storage backends, because I want more durability there than the single SSD in the VPS.

                                                                  At home I have a network scanner that scans to a share on an rpi, which then runs OCR on the PDF and categorizes it based on keywords (invoice, insurance, etc…), then uploads it to a folder that fits the keywords on the wasabi s3. This is done using this python script: https://gitlab.com/youRFate/docsss that uses OCRmyPDF. That s3 is also accessible from nextcloud.

                                                                  It also runs my IRC bouncer setup and some gameservers from time to time, like minecraft, openttd, factorio etc.

                                                                  1. 1

                                                                    I have some physical servers at Hetzner, which I am in the process of migrating to my own local colocation. But i’ve been running my own e-mail on there (Postfix, Courier-IMAP) on there for at least 10 years. Besides that I self-host all my own websites (lighttpd, h2o and slowly moving to nginx), gitea, DNS. Besides that it’s mostly a large NFS/SMB/HTTP fileserver for hosting media for the various playback devices in my house. Backups using BorgBackup go offsite, either from home to my colo, or from my colo to my home (FTTH FTW). Most of my work is done in a terminal, so there’s also various screen sessions running IRC, mail (mutt) and linux shells for various tasks. I’m a sysadmin by profession, so the colo also runs some customer machines which I admin, so the investment to also run some personal stuff if minimal.

                                                                    1. 1

                                                                      yep, openbsd with opensmtpd \o/ (and mutt as client)