1. 67

I’m getting in to running my own self hosted services and looking for other cool stuff I could run. What stuff are you all running on your personal server?

  1. 14

    Things I self-host now on the Interwebs (as opposed to at home):

    • NextCloud
    • Bookstack Wiki
    • Various sites and smaller web apps (Privatebin, Lutim, Framadate etc)
    • Mailu Mail Server
    • Searx

    Things I’m setting up on the Interwebs:

    • Gitea on HTTPd
    • OpenSMTPd
    • Munin
    • Pleroma
    • Transmission
    • DNS (considering Unbound for now)

    Over time I may move the Docker and KVM-based Linux boxes over to OpenBSD and VMM as it matures. I’m moving internal systems from Debian to Open or NetBSD because I’ve had enough of Systemd.

    1. 6

      Out of curiosity, why migrate your entire OS to avoid SystemD rather than just switch init systems? Debian supports others just fine. I use OpenRC with no issues, and personally find that solution much more comfortable than learning an entirely new management interface.

      1. 15

        To be fair, it’s not just systemd, but systemd was the beginning of the end for me.

        I expect my servers to be stable and mostly static. I expect to understand what’s running on them, and to manage them accordingly. Over the years, Debian has continued to change, choosing things I just don’t support (systemd, removing ifconfig etc). I’ve moved most of my stack over to docker, which has made deployment easier at the cost of me just not being certain what code I’m running at any point in time. So in effect I’m not even really running Debian as such (my docker images are a mix of alpine and ubuntu images anyway).

        I used to use NetBSD years back quite heavily, so moving back to it is fairly straightforward, and I like OpenBSD’s approach to code reduction and simplicity over feature chasing. I think it was always on the cards but the removal of ifconfig and the recent furore over the abort() function with RMS gave me the shove I needed to start moving.

        1. 4

          Docker doesn’t work on OpenBSD though, so what are you going to do?

          1. 2

            For now I’m backing up my configs in git, data via rsync/ssh and will probably manage deployment via Ansible.

            It’s not as easy as docker-compose, but not as scary as pulling images from public repos. Plus, I’ll actually know what code I’m running at a given point in time.

            1. 1

              Have you looked at Capistrano for deployment? Its workflow for deployment and rollback centers around releasing a branch of a git repo.

              I’m interested in what you think of the two strategies and why you’d use one or the other for your setup, if you have an opinion.

              1. 3

                I don’t run ruby, given the choice. It’s not a dogmatic thing, it’s just that I’ve found that there are more important things for me to get round to than learning ruby properly, and that if I’m not prepared to learn it properly I’m not giving it a fair shout.

        2. 6

          N.B. You can partially remove systemd, but not completely remove it. Many binaries runtime depend on libsystemd even if they don’t appear like they would need it.

          When I ran my own init system on Arch (systemd was giving me woes) I had to keep libsystemd.so installed for even simple tools like pgrep to work.

          Some more info and discussion here. I didn’t want to switch away from Arch, but I also didn’t want remnants of systemd sticking around. Given the culture of systemd adding new features and acting like a sysadmin on my computer I thought it wise to try and keep my distance.

          1. 2

            Fun fact: Ubuntu 18.04 also sports a 26 kilobytes executable pgrep requiring libsystemd.so.0

            A bit of digging revealed that procps utilities may print/use systemd-generated fields (lsession, machine, owner ouid, seat, slice, unit…) and containers.

            /* try to locate the lxc delimiter eyecatcher somewhere in a task’s cgroup

            1. 2

              The author of the article regarding pgrep you linked used an ancient, outdated kernel, and complained that the newest versions of software wouldn’t work. He/She used all debug flags for the kernel, and complained about the verbosity. He/She used a custom, unsupported build of a bootloader, and complained about the interface. He/She installed a custom kernel package, and was surprised that it (requiring a different partition layout) wiped his/her partitions. He/She complains about color profiles, and says he/she “does not use color profiles” – which is hilarious, considering he/she definitely does use them, just unknowingly, and likely with the default sRGB set (which is horribly inaccurate anyway). He/She asks why pgrep has a systemd dependency – pgrep and ps both support displaying the systemd unit owning a process.

              1. 5

                I’m the author of the article.

                ancient, outdated kernel all debug flags for the kernel unsupported build of a bootloader

                The kernel, kernel build options and bootloader were set by Arch Linux ARM project. They were not unsupported or unusual, they were what the team provided in their install instructions and their repos.

                A newer mainstream kernel build did appear in the repos at some point, but it had several features broken (suspend/resume, etc). The only valid option for day to day use was the recommended old kernel.

                complained that the newest versions of software wouldn’t work

                I’m perfectly happy for software to break due to out of date dependencies. But an init system is a special case, because if it fails then the operating system becomes inoperable.

                Core software should fail gracefully. A good piece of software behaves well in both normal and adverse conditions.

                I was greatly surprised that systemd did not provide some form of rescue getty or anything else upon failure. It left me in a position that was very difficult to solve.

                He/She installed a custom kernel package, and was surprised that it (requiring a different partition layout) wiped his/her partitions

                This was not a custom kernel package, it was provided by the Arch Linux ARM team. It was a newer kernel package that described itself as supporting my model. As it turns out it was the new recommended/mandated kernel package in the Arch Linux ARM install instructions for my laptop.

                Even if the kernel were custom, it is highly unusual for distribution packages to contain scripts that overwrite partitions.

                He/She complains about color profiles, and says he/she “does not use color profiles” – which is hilarious, considering he/she definitely does use them, just unknowingly

                There are multiple concepts under the words of ‘colour profiles’ that it looks like you have merged together here.

                Colour profiles are indeed used by image and video codecs every day on our computers. Most of these formats do not store their data in the same format as our monitors expect (RGB888 gamma ~2.2, ie common sRGB) so they have to perform colour space conversions.

                Whatever the systemd unit was providing in the form of ‘colour profiles’ was completely unnecessary for this process. All my applications worked before systemd did this. And they still do now without systemd doing it.

                likely with the default sRGB set (which is horribly inaccurate anyway)

                1:1 sRGB is good enough for most people, as it’s only possible to obtain benefits from colour profiles in very specific scenarios.

                If you are using a new desktop monitor and you have a specific task you need or want to match for, then yes.

                If you are using a laptop screen like I was: most change their colour curves dramatically when you change the screen viewing angle. Tweaking of colour profiles provides next to no benefit. Some laptop models have much nicer screens and avoid this, but at the cost of battery life (higher light emissions) and generally higher cost.

                I use second hand monitors for my desktop. They mostly do not have factory provided colour profiles, and even then the (CCFL) backlights have aged and changed their responses. Without calibrated color profiling equipment there is not much I can do, and is not worth the effort unless I have a very specific reason to do so.

                He/She asks why pgrep has a systemd dependency – pgrep and ps both support displaying the systemd unit owning a process.

                You can do this without making systemd libraries a hard runtime dependency.

                I raised this issue because of a concept that seemed more pertinent to me: the extension of systemd’s influence. I don’t think it’s appropriate for basic tools to depend on any optional programs or libraries, whether they be an init system like systemd, a runtime like mono or a framework like docker.

                1. 2

                  Almost all of these issues are distro issues.

                  Systemd can work without the color profile daemon, and ps and pgrep can work without systemd. Same with the kernel.

                  But the policy of Arch is to always build all packages with all possible dependencies as hard dependencies.

                  e.g. for Quassel, which can make use of KDE integration, but doesn’t require it, they decide to build it so that it has a hard dependency on KDE (which means it pulls in 400M of packages for a package that would be fine without any of them).

                2. 2

                  Why he/she instead of they? It makes your comment difficult to read

                  1. 1

                    tbh, I dunno. I usually use third-person they.

            2. 4

              I really wish the FreeBSD port of Docker was still maintained. It’s a few years behind at this point, but if FreeBSD was supported as a first class Docker operating system, I think we’d see a lot more people running it.

              1. 4

                IME Docker abstracts the problem under a layer of magic rather than providing a sustainable solution.

                Yes it makes things as easy as adding a line referencing a random github repo to deploy otherwise troublesome software. I’m not convinced this is a good thing.

                1. 4

                  As someone who needs to know exactly what gets deployed in production, and therefore cannot use any public registry, I can say with certainty that Docker is a lot less cool without the plethora of automagic images you can run.

                  1. 2

                    Exactly, once you start running private registries it’s not the timesaver it may have first appeared as.

                    1. 1

                      Personally, I’ll have to disagree with that. I’m letting Gitlab automatically build the containers I need as basis, plus my own. And the result is very amazing because scaling, development, reproducibility etc are much easier given.

                2. 3

                  I think Kubernetes has support for some alternative runtimes, including FreeBSD jails? That might make FreeBSD more popular in the long run.

                3. 1

                  How is the next cloud video chat feature? Does it work reliably compared to Zoom.us?

                  1. 1

                    Works fine for me(tm).

                    It seems fine both over mobile and laptop, and over 4G. I haven’t tried any large groups and I doubt I’ll use it much, but so far I’ve been impressed.

                  2. 1

                    Is bookstack good? I’m on the never ending search for a good wiki system. I keep half writing my own and (thankfully) failing to complete it.

                    1. 2

                      Cowyo is pretty straighforward (if sort of sparse).

                      Being go and working with flat files, it’s pretty straightforward to run & backup.

                      1. 2

                        Bookstack is by far one of the best wikis I’ve given to non-technical people to use. However I think it stores HTML internally, which is a bit icky in my view. I’d prefer it if they converted it to markdown. Still, it’s fairly low resource, pretty and works very, very well.

                    2. 8

                      Planning a bunch of other stuff as well - Firefox Sync Server, Self-hosted password sync, etc

                      1. 8

                        I’m running the following:

                        • SMTP, using Postfix with my own greylist software
                        • HTTP, using Apache
                        • GOPHER, wrote my own gopher server (source code available via said server)
                        • QOTD, again, wrote my own
                        • DNS, running bind but it’s not visible to the outside world. It’s authoritative for all my domains; the company serving up my zones slaves off my DNS server.
                        1. 8
                          • CVS source repo
                          • DLNA Server for the tunes
                          • DNS
                          • IMAP
                          • Mosquito to revive weather reports from remote sensors
                          • Mumble
                          • My MUD Server
                          • My MUD client software
                          • NextCloud
                          • NFS
                          • Password hashing app
                          • Roundcube Web Mail
                          • SMB
                          • SMTP
                          • Web servers for two domains
                          • Weewx Weather Station
                          1. 2

                            What’s your MUD?

                          2. 8
                            1. 6
                              • E-Mail (Postfix+Dovecot) + XMPP (Prosody) + TeamSpeak3 on one server
                              • websites and files (Syncthing) and misc shit (IRC bots, Discord bots) on another
                              • Syncthing on home NAS, also Subsonic (but I never really use it)
                              • OpenVPN and socks5-proxy via SSH on demand (I rarely need those)

                              Actually I think the only thing I’m not self-hosting is one Wordpress blog at wordpress.com (don’t want to have my real name associated with it, but it’s only a gaming blog, nothing super secret).

                              1. 3

                                What has your experience hosting your own email been like? I’ve idly considered it, but it’s a famously unfriendly service to deal with (spam, major providers deciding your messages are spam, all the onerous metaprotocols to combat spam) and I’m happy with Fastmail’s service.

                                1. 9

                                  I’ve been hosting email myself for 15+ years. Postfix made it easier to configure (Sendmail was… complicated, in comparison, in my opinion.) Dovecot works really well for IMAP/POP3. Finally Let’s Encrypt allows you to get a nice certificate relatively easily.

                                  Greylisting helped a lot to reduce spam, but spam is still a nuisance - especially if you don’t have good filtering in your mail client (I’m using crm114).

                                  Setting up SPF, DKIM and DMARC can be a little complicated, but it seems to work fine, as long as all email from your domain is sent from a well defined set of IPs.

                                  1. 6

                                    I’ve not had many problems, but there’s a bit of luck of the draw in getting a clean IP. I have SPF and DKIM set up (not DMARC), with the self-signed certificate that Debian auto-generated, and that seems to be enough to get mail delivered to the big providers.

                                    For incoming spam, I reject hosts that: 1) lack valid RDNS, or 2) are on the Spamhaus ZEN RBL. This seems to catch >95% of spam. Minor config hint if you’re using the free Spamhaus tier: you need to set up a local DNS resolver (I use unbound) so you query directly, otherwise your usage gets aggregated with whoever else is using your upstream DNS, which probably exceeds the free tier.

                                    Like the other commenters, I use Postfix, which is reasonably nice, and has good documentation.

                                    1. 6

                                      Mostly positive. I had that discussion this morning on IRC, so I’m gonna quote myself to not retype everything:

                                      [...] on a "decent" hoster blacklist-wise and not DO or something
                                      and it's been running for 10 years, I don't seem to have the typical 
                                      "gmail thinks I am spam"-problem
                                      usually.
                                      interestingly I had it yesterday when sending something to myself
                                      but dunno, empty body, 25mb-video.. who knows
                                      I hardly use my gmail-account
                                      

                                      But thinking about it, sending a job application in November ended up in the spam folder for 2 people and I only got a reply once I pinged them out of band. That was a shitty experience, but as I hate using GMail I prefer this to a years-long shitty experience using it :P

                                      If I was to “start over” these days I might go to a dedicated email hoster like FastMail, but I think it’s just too expensive. I have 4 people with their main email addresses on my server and it costs me 10 EUR /month and I get to host other “communication” services as well. For FM it would be 15-20 USD per month and I still haven’t found out if I could use “a low amount of” domains and not just “use your own (one) domain”. Sure it takes some maintenance work, but it’s part hobby, part learning experience and part keeping in touch how stuff is done as it touches on my dayjob, depending on which role at what company I do. (Been running my own mailserver for roughly 15 years I guess)

                                      1. 3

                                        if I could use “a low amount of” domains and not just “use your own (one) domain”.

                                        You can, I have 5 domains * under one, one-user account. It’s explicitly spelt out here: https://www.fastmail.com/help/account/limits.html

                                        № domains 100, plus 1 for every user in the account

                                        * – One with my AFK name, and four domain hacks, of which I have a guilty pleasure of buying ;-)

                                      2. 3

                                        Generally, problem free since I started doing it in the mid 2000s.

                                    2. 6

                                      Main home server:

                                      Jukebox:

                                      Tiny virtual servers:

                                      • DNS (bind9)
                                      1. 3

                                        Thank’s for the pointer to weeWX, I’ve more thought of using Grafana to display weather data. Are you able to create alerts (something is moving in your flat) with motion?

                                        1. 3

                                          Yes, you can tell Motion to run a command when motions starts, when motion ends etc. I don’t use that functionality at home, but at work I use it to send an XMPP message e.g. when somebody enters the serverroom and when the video is completed (including a link to the video), so I can keep track of who enters and what they do.

                                          I have had to fiddle a little with ignoring part of the image that constantly flickers in the server room; I can recomment Motion, it works well.

                                          weewx does enough that I haven’t bothered doing something with the data myself - I’ve only changed the display (colours and such) to integrate it into my website.

                                      2. 6

                                        Things I self host out of my home:

                                        • HardenedBSD-based NAS
                                        • OpenSMTPd + Dovecot + Rainloop as Tor Onion Services (once I write a little self-service web interface for creating/modifying/deleting users, I’ll open this one to the general Tor userbase)
                                        • GitLab in a HardenedBSD jail as a Tor Onion Service

                                        I plan to set up the following services out of my home:

                                        • Mastodon as a Tor Onion Service
                                        • IRCd as a Tor Onion Service

                                        It’s really easy for me to run various Tor Onion Services since my home has a special fully Tor-ified network. Just plug in a device and all its traffic automagically gets routed through Tor.

                                        1. 5
                                          • email (Postfix / OpenSMTPd / Dovecot / Roundcube )
                                          • websites
                                          • nextcloud (files / passwords / bookmarks / Rainloop)
                                          • WebDAV (Baikal)
                                          • openvpn
                                          • git (cgit)
                                          • DNS (nsd / unbound)

                                          Hosted on a mix of OpenBSD and FreeBSD on baremetal.

                                          1. 5

                                            Algernon, for serving Markdown files as rendered HTML over HTTP/2.

                                            1. 5

                                              I’m using some VPS, not (yet) a server at home. I use Debian or Arch Linux on these.

                                              I’m hosting:

                                              • my small websites
                                              • Mastodon (private instance)
                                              • Nextcloud
                                              • tt-rss (until I code my own replacement)
                                              • ZNC
                                              • Gitea
                                              • OpenVPN
                                              1. 5

                                                Similar to others, however:

                                                • Personal mail (Exim, Dovecot)
                                                • Various websites (mostly Nginx)
                                                • GitLab
                                                • Buildbot for CI on various platforms as most hosted things are Linux-only
                                                • Plex media server

                                                When travelling I spin up an Algo VPN on GCE or DigitalOcean.

                                                I used to run my own colo server but $DAYJOB has 6000+ physical servers and I got bored of having to do maintenance of yet another physical box :-)

                                                Now I run most of my things from a VPS at Mythic Beasts running FreeBSD with misc. other bits running on dedicated boxes from Hetzner which currently run SmartOS, although I’m considering moving to FreeBSD with bhyve sometime.

                                                I’m using Prometheus and Grafana for monitoring all of it.

                                                1. 5
                                                  • tt-rss
                                                  • The Lounge (IRC client)
                                                  • Some private git repositories
                                                  • Simple websites for me and family

                                                  I used to self-host my email (with Postfix, Dovecot and Rainloop most recently) but I ended up giving up and switching to Fastmail.

                                                  1. 5

                                                    I’m also using Postfix+Dovecot with Spamassassin for spam checking. I’m an Alpine user but keep a Roundcube instance (under nginx w/PHP-FPM) up for friends&family.

                                                    Some particulars on my setup:

                                                    1. I gotta have full text email searching and use a dedicated Solr machine for that. Apache Tika indexes the insides of attachments and classifies images. A search for “automotive” finds the Excel spreadsheet with insurance rates in it. A search for “dog” finds shots of the neighbor’s corgie.

                                                      Solr is resource intensive but worth it. I can search a 200K+ message inboxes in a blink, faster than I can get Gmail to do the same.

                                                    2. Several of my users are fellow Carnegie Mellon alum who used Sieve at school. So I’ve got Pigeonhole stuck on the side of Dovecot for that. Managesieve lets them set thier filters via Roundcube.

                                                    3. I’ve got a few other Roundcube plugins installed. sauserprefs lets users manage their own Spamassassin thresholds, whitelists/blacklists, rulesets and other config items. password lets them chat their account’s password via the web. Enigma handles email encryption.

                                                    4. I use policyd-weight. It’s a big help.

                                                    5. I moved to AWS from bare metal some years back (right after it become possible to do HVM installs of FreeBSD on EC2). All AWS datacenter IPs are on some blacklists and some of them are on many blacklists. Things that have helped keep Google and others from rejecting mail:

                                                    Getting my email service to a high level of quality has been a lot of work. But now my email system is faster and more responsive than Gmail. I also enjoy far more visibility and control and can do some tricky things (like per-origin email domains) that wouldn’t be possible using a “normal” email service.

                                                    1. 5

                                                      I use an AWS-hosted FreeBSD server as my main “desktop.” SSH/Mosh as my access method, Tmux as my windowing system, Alpine for email, Weechat+Bitlbee for IRC/IM/SMS, Emacs for editing. The SSH server also listens to ports 53, 80 and 3128 to aid in getting around various silly “firewall” “solutions”. I keep ttyd around for those times when all I’ve got is web access.

                                                      The same box that runs all that also runs my Asterisk server. And my email system. And a Lounge instance. And syncthing (w/syncthing-inotify), Prosody, MySQL, ZFS, a photo server and about 800 (very low-volume) web sites.

                                                      1. 5

                                                        Great idea for a thread!

                                                        I have a physical server in my house comprised of commodity PC hardware, running linux. This runs:

                                                        • irssi in a persistent tmux session
                                                        • sshd (and so anything that you can do over ssh, such as push to private git repos or ssh port-forward)
                                                        • diaspora instance (that I’m unfortunately not doing much with)
                                                        • cherrymusic music streaming instance, so I can stream my music library to anywhere with a browser
                                                        • nginx as a frontend for cherrymusic and a few webservices I run for personal experimentation
                                                        • an instance of a RSS feed reader called Miniflux. I’m not entirely happy with the UI this presents, but I don’t have

                                                        I plan to run a Matrix instance in the near future that I’d like to bridge to IRC and replace irssi+tmux, but haven’t gotten the software to work properly on my home server yet.

                                                        My ISP only provides a public IPv6 address, not a public v4 one, so I also have a small $5/month Digital Ocean droplet. The most important thing this does is run a socat instance, which listens for traffic on a select number of IPv4 ports and rebroadcasts it on v6 to my home server, so I don’t have to rely on a connection to the v6 internet existing in order to use my home services. I also run:

                                                        • nginx that proxy-passes web services to my v6-only home server
                                                        • a personal Mastodon server
                                                        • a Pleroma server
                                                        • a Gittea instance
                                                        • a bespoke web service for a friend of mine’s project
                                                        1. 5

                                                          I have a few private servers in total running various things.

                                                          • Apache/nginx/httpd for various blogs and websites, most also utilizing Let’s Encrypt
                                                          • MediaWiki powering https://anarchivism.org
                                                          • Bind9 running a few public OpenNIC DNS servers.
                                                          • Tor middle relay
                                                          • A few Tor hidden services
                                                          • A now-malfunctioning SKS keyserver (that I need to look into)
                                                          • 6 or 7 cjdns nodes
                                                          • fingerd running on a few cjdns nodes
                                                          • Opentracker for Bittorrent running on 1 cjdns node
                                                          • 1 or 2 Yggdrasil-go nodes
                                                          • Riot and Synapse for matrix chat at https://matrix.phillymesh.net
                                                          • Gopher at gopher://gopher.modem.city
                                                          • Quassel for IRC

                                                          Not public, but I’ve been setting up SILC servers and a few IRDCds as well.

                                                          1. 5

                                                            I currently self-host Nextcloud on a Debian VPS. I primarily use this for Contacts, Calendars, and getting Files between my various devices. My wife also uses the same installation. We haven’t yet used the “document sharing” stuff that’s integrated with LibreOffice, or similar. But I look forward to doing that.

                                                            I pay someone else to host my mail, but I’d like to host that myself: I’m just not ready to do that again yet.

                                                            My intention is to build all of the “self hosted” stuff around nextcloud: I’ll use Passman, I’m building a GTD application, and a budgeting application, and a few other things. Nextcloud gives me a nice platform for syncing and sharing, and I don’t really care about implementation language otherwise.

                                                            1. 3

                                                              If you are looking in to self hosting email, https://mailinabox.email/ is really easy. Main issue is it requires it’s own dedicated ubuntu install and doesn’t work in docker yet. But it’s super simple and just works. It also has next cloud packaged in.

                                                            2. 4

                                                              I’m running

                                                              • Redis, Postgres, Prometheus+Grafana for database, cache/queuing and monitoring
                                                              • Minio (an S3 compatible file store)
                                                              • Email (postfix+dovecot+spamassassin+opendkim, but moving towards Apache James)
                                                              • PowerDNS
                                                                • My own custom, still unfinished PowerDNS frontend
                                                              • Keycloak (for auth)
                                                              • Gitlab (for CI and source management)
                                                              • Seafile (for file storage and sync)
                                                                • A custom web music player that uses Seafile’s data under the hood (think Google Play Music)
                                                                • A custom web photo gallery that uses Seafile’s data under the hood (think Google Photos)
                                                              • i.k8r.eu, an (invite-only) image host running a custom software I wrote
                                                                (because imgur scales images wrong and doesn’t do hotlinking anymore)
                                                              • Quassel (as IRC bouncer)
                                                                • Quassel-Webserver (web frontend)
                                                                • Quassel-Rest-Search (web fulltext log search)
                                                                • Quassel-Logs (for public logs of certain channels)
                                                              • My own websites for my own projects and apps
                                                                (usually using nginx and syncing from the gitlab repos, sometimes also directly running docker containers built in CI, but always using nginx to serve files)
                                                              • An F-Droid repo for my apps

                                                              Planned in the long-term future are a custom password manager and a custom Firefox Sync Server (with better history sync + web fulltext history search). For the short-term a clone of Google Keep is planned.

                                                              A while ago due to a bug Google wiped my calendar and contacts. Shortly after that I lost access to one of my other Google accounts and only managed to get it back because I had a lot of luck (and help from the new owner of my old phone number). These two events, combined with the Snowden papers, have over the years been a major motivation for me trying to self-host everything.

                                                              1. 4

                                                                At home on a FreeBSD server:

                                                                • Gitolite (for my private repositories)
                                                                • Samba (exposing ZFS volumes to my Windows clients with ZFS snapshots exposed as “previous versions”)

                                                                On a KVM VPS running FreeBSD:

                                                                • Nextcloud (in a Jail)
                                                                • NGINX running my personal blog / website (Hugo) and proxy the Nextcloud installation
                                                                1. 4

                                                                  Self-hosting is for me a long term project and I’m working on it infrequently… I should probably write a blog-posting at some point. I really need to start using some provisioning/automation tool… I can’t decide which ‘container’ technology I’d like to use.

                                                                  Already hosting:

                                                                  • Monitoring
                                                                  • Music Player Daemon
                                                                  • NFS (I’ve a dedicated storage, which is physically seperated from the application hosting hardware)
                                                                  • WireGuard as transport-layer encryption and authentication for the seperate nfs-exports
                                                                  • WireGuard VPN
                                                                  • nginx

                                                                  Planned:

                                                                  • mail (not decided which setup)
                                                                  • radicale
                                                                  • a web photo view, hopefully with rich metadata
                                                                  • git-annex (I still haven’t figured out how I can have a git-annex non-bare-metal repo, which let non annex-aware application access the data)
                                                                  • some self hosted ‘dropbox’ alternative (not decided which tool)
                                                                  • some issue tracker
                                                                  • Firefox Sync Server
                                                                  • XMPP/Matrix
                                                                  • DNS
                                                                  • Offsite and/or cloud backup (I ‘only’ got 2.5 Megabyte/s upload, so 4TB to upload will take at least three weeks)

                                                                  The whole setup (three computers) are using constantly about 60W (I’ve an energy meter installed).

                                                                  The setup costs me about 30 Euro for the Internet, ~12 Euro for electricity and 5 Euros for some server in a datacenter.

                                                                  If I’d store backups on backblaze ‘B2’, it’d cost me at least 20 Euros per month to have cloud-backups. (0.005 Cent per GB for storing uploaded data) and 0.01 Cent per GB if I need to retrieve the data. I should probably not mention this in public, but another possibility would be running the Backblaze Personal Backup in Wine (which I’ve tried out in 2014) - but this would be clearly a violation of the terms, and you’d have to hack something together, that ‘transparently’ encrypts all files infront of the backblaze wine client, and still is able to support delta uploads.

                                                                  1. 4
                                                                    • Mail (postfix: dovecot, rainloop for the less technical also)
                                                                    • Chat (Prosody)
                                                                    • Calendar/Contacts (Radicale: caldavzap also for the less technical)
                                                                    • duplicity for backups over tor to server in house
                                                                    • Website/social network presence (IndieWeb, into silos via brid.gy)
                                                                    • Personal projects (cheogram.com, usetint.com, and others)
                                                                    • IPFS pinning for my video series
                                                                    • Bittorrent seeding for my video series
                                                                    • Syncthing on home server
                                                                    • Mumble for podcasting
                                                                    • DNS with adblocking
                                                                    1. 2

                                                                      Personal projects (cheogram.com

                                                                      checks most of his XMPP contacts

                                                                      I’m going to hope this is just the website.

                                                                      1. 2

                                                                        You’re a JMP customer? I’m the primary sysadmin for the main server – dedicated box with OVH in Quebec

                                                                        1. 2

                                                                          Yes. The phrasing above just makes it seems like you’re running this on an old shoebox you have. ;)

                                                                    2. 4

                                                                      I have two physical servers, one at home, one colocated, both running SmartOS. Split between them, I’m running:

                                                                      • Plex Media Server, for media hosting and streaming
                                                                      • Prosody, for Jabber/XMPP
                                                                      • ZNC, as an IRC bouncer
                                                                      • Software to remote control my house lights (via a RS-232 to Ethernet bridge, as I don’t have the correct ports anymore)
                                                                      • A WordPress site, at least until I export it to be a static site
                                                                      • Gerrit, for code hosting and review for personal projects
                                                                      • An SFTP/SCP Dropbox
                                                                      • Envoy for L4 and L7 load balancing

                                                                      Along with a miscellaneous legacy stuff on a Digital ocean droplet I plan on turning down soon.

                                                                      I’ll I’m looking to start self-hosting in the future:

                                                                      • Simplified music streaming with a read-only view of the underlying music, preferably with optional mpd and upnp support (currently using Plex, but it doesn’t respect metatdata tags, which I’m so careful to set)
                                                                      • VPN. Wireguard seems interesting, but I’m on the wrong host OS, I think
                                                                      • A secure and easy to use CA for my personal CA, to make provisioning TLS on other things easier.
                                                                      • Gopher and a BBS, for fun.
                                                                      • Grafana / Prometheus, because I should probably be a little serious
                                                                      • URL shortener
                                                                      • Buildbot for building and testing the projects on Gerrit

                                                                      Unlike many others in this thread, I’m not interested in self-hosted PIMs: Google and Fastmail do a much better job than I ever would.

                                                                      1. 4
                                                                        • my wedding website & my blog
                                                                        • PiHole
                                                                        1. 4

                                                                          I host a little box for my friends and I to play with. We’ve been running these services for about 18 months. I enthusiastically recommend both:

                                                                          1. 4

                                                                            I have a VPS with

                                                                            • nginx
                                                                            • a few instances of my blog engine
                                                                            • wordpress (for a legacy blog that I haven’t migrated)
                                                                            • git (various dev projects, content for the blogs, pass etc)
                                                                            • couchdb (sync for a quantified self Android app that I use)

                                                                            I used to run btsync, but have since switched to mega.nz. At some stage I’ll look at another self-hosted option.

                                                                            I also have a lowendspirit VPS or two that I use for VPN.

                                                                            1. 4

                                                                              I currently mostly host some websites and file backups on my current VPS. I’ve run a couple instances of an IRC bot in the past, but don’t host it currently.

                                                                              Websites Utilities
                                                                              • Linx as a file/pastebin server
                                                                              • Syncthing for my keepass file
                                                                              • Weechat for IRC purposes
                                                                              Code repositories (using Fossil)

                                                                              All of these various sites and services (other than weechat) are currently behind a single nginx instance.

                                                                              1. 3

                                                                                Currently hosting:

                                                                                • ZNC
                                                                                • Ghost blog

                                                                                I’m getting a lot of ideas from this thread though.

                                                                                1. 3
                                                                                  • Glowing Bear / WeeChat
                                                                                  • Prosody (jabber server)
                                                                                  • Proftpd
                                                                                  • FreshRSS
                                                                                  • Apache/MySQL/PHP for several Joomla en Wordpress sites
                                                                                  • Exim for outboud mail/forwarding
                                                                                  1. 3
                                                                                    • nginx
                                                                                    • postfix
                                                                                    • TinyTinyRSS
                                                                                    • synapse (matrix)
                                                                                    • postgres (dependency for e.g. synapse)
                                                                                    • gitea
                                                                                    • drone
                                                                                    • docker registry
                                                                                    • graylog
                                                                                    • kanboard
                                                                                    • icinga
                                                                                    • caddy
                                                                                    • etherpad
                                                                                    • matomo (piwik)
                                                                                    • freeipa
                                                                                    • mosh/weechat =)
                                                                                    1. 3

                                                                                      I run a SYS Dedicated Server with Proxmox as a VM Host. I recommend PM if you wanna get into virtualized hosting, it’s rather neat.

                                                                                      • Shaarli (Bookmarks)
                                                                                      • Rainloop (IMAP/SMTP Client, though I’m switching it off)
                                                                                      • Nextcloud
                                                                                      • Airsonic (Music Streaming)
                                                                                      • Cachet (Status Page, on shared hosting)
                                                                                      • Invoice Ninja (forsSide-business stuff)
                                                                                      • TinyTinyRSS (though looking for replacements, Feedly hasn’t been very pleasant, I have about 600 feeds on there)
                                                                                      • Postal (Internal Mail Infrastruture)
                                                                                      • YouRLS (URL Shortener, even got a neat Domain for it)
                                                                                      • Gitea (for my private projects or before I publish it to github)
                                                                                      • Skeletor (Selfwritten Analytics tool, currently not used)
                                                                                      • PFSense (VPN, DNS and Firewall)
                                                                                      1. 5

                                                                                        try selfoss for a RSS aggregator/reader. IMO the best user experience among self-hsoted tools in this regard

                                                                                        1. 2

                                                                                          Thanks, I’ll try and see if it can handle my workloads <3

                                                                                        2. 3

                                                                                          I was using Proxmox before but I found it easier and more efficient to use docker as there isn’t reserved memory for each container like you have with a VM.

                                                                                          1. 2

                                                                                            Hm, yeah, but I have lots of Containers in Proxmox too (LXC) which also works better for IPv6 connectivity. I need the VM mostly for PFSense, which is BSD and doesn’t run too well in a container (it doesn’t run at all).

                                                                                            PM also has a lot more functions that I like than Docker, especially towards failover with data persistence.

                                                                                          2. 2

                                                                                            RSS reader written in Python (and not PHP): newspipe. I haven’t test it out yet but it looks solid.

                                                                                            1. 1

                                                                                              I’ve experimented a bit. While it looks rather nice, the category functionality is probably not quite sufficient. I rely heavily on a hierarchy of categories to sort out my feeds…

                                                                                          3. 3

                                                                                            The things I use that haven’t been mentioned elsewhere:

                                                                                            • klaus for git http frontend (it’s the simplest one I could find, and I think it looks nice and tidy)
                                                                                            • umurmur for voice chat with friends (it’s a lighter-weight reimplementation of murmur, which is the server for the mumble client)
                                                                                            1. 3
                                                                                              • Miniflux (RSS)
                                                                                              • Jira (Kanban style project management (side projects, house renovation, etc.))
                                                                                              • Gitea (Git)
                                                                                              • Drone (CI)
                                                                                              • NetData (System monitoring)
                                                                                              • OpenVPN
                                                                                              1. 6

                                                                                                Jira, as in Atlassian’s?

                                                                                                1. 5

                                                                                                  Yeah, you can buy a license for $10 and self-host it. it’s a bit of a memory hog running on the JVM though. Unfortunately the alternatives I tried didn’t quite fit my use-case for house renovation project management.

                                                                                              2. 3

                                                                                                A PBX such as Asterisk might be fun. Connct it to a (handheld) SIP; perhaps use a VoiceXML interpreter, and you can implement custom voice-based applications.

                                                                                                1. 3
                                                                                                  • My blog, such as it is, served by nginx
                                                                                                  • A Minecraft server for me and a few friends
                                                                                                  • A private git server, access through gitolite/ssh and web frontend through gitweb/nginx
                                                                                                  • A private calendar, radicale through nginx

                                                                                                  All this is currently on one VPS (two until recently, but one of my hosts closed up shop), which is a little tight with the Minecraft server (which is a terrible memory hog), so I will probably migrate and upgrade in July when my current plan comes up for renewal.

                                                                                                  Additionally, I have

                                                                                                  • A private file server, ZFS on FreeBSD

                                                                                                  at home.

                                                                                                  The most useful single service is git, which aside from project hosting holds a dotfiles repo, password store (used by pass) and assorted other convenient document syncing repos.

                                                                                                  Some things I have vague plans to set up if I feel motivated and get around to it include

                                                                                                  • A VPN to my home LAN. I had this set up (using SSH) at one point, but never really figured out the client side (tunneling through SSH on Linux didn’t work well or at all at the time), and the state of the network has since changed enough that I pulled the DNS because it could no longer resolve.
                                                                                                  • Some way to dynamically start/stop my file server. It spends most of its time off (because otherwise it would spend most of its time idle), but I have to push a button on the front of the thing to actually turn it on or off, which is both inconvenient and not amenable to remote access.
                                                                                                  • Firefox Sync? I have its config in my dotfiles repo, but Firefox doesn’t play nicely with that sort of access pattern and likes to constantly tweak, rearrange and generally have sole access to its configuration.
                                                                                                  1. 3

                                                                                                    Mastodon, a Minecraft server, various Python web experiments.

                                                                                                    1. 3

                                                                                                      I wrote Bee2 which I use to host several things via Docker. Here’s an abbreviated list of my containers:

                                                                                                      CONTAINER ID        PORTS                                      NAMES
                                                                                                      2cfeca3febaf                                                   bee2-job-logrotate
                                                                                                      df7ac6394829                                                   bee2-job-awstats-generate
                                                                                                      d96e54344201                                                   bee2-app-ttrss-updater
                                                                                                      6353c83b9538                                                   bee2-app-redirects
                                                                                                      af5962b2418c        0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   bee2-app-haproxy
                                                                                                      379115d0785e        80/tcp, 8080/tcp                           bee2-app-nginx-static
                                                                                                      b7ff7c868b24        80/tcp, 8080/tcp                           bee2-app-ttrss
                                                                                                      1fc90a662c3a                                                   bee2-app-scheduler
                                                                                                      215c1f24cb69        8080/tcp                                   bee2-app-radicale
                                                                                                      733bb27741c6        80/tcp, 443/tcp, 8080/tcp                  bee2-app-certbot
                                                                                                      fa28c248001b        80/tcp                                     bee2-app-webmail
                                                                                                      a0a8abdf3c4a        80/tcp, 8080/tcp                           bee2-app-simpleid
                                                                                                      edb22207a289        80/tcp, 8080/tcp                           bee2-app-awstats
                                                                                                      25e045c8368d        5432/tcp                                   bee2-app-postgres
                                                                                                      e394afe4788b        3306/tcp                                   bee2-app-mysql
                                                                                                      

                                                                                                      I run Radicale (calendar/contacts with DavDroid/Thunderbird clients), my websites, awstats (log analysis), simpleid (although everyone is removing openid support, so this will probably be gone before long), certbot, roundcube (webmail) and ttrss (rss reader).

                                                                                                      I have a FreeBSD server that runs OpenVPN so I can connect to these two boxes via that and only have 80/443 exposed on the web hosts. This all runs on Vultr. My e-mail (postfix+dovecot+dkim+spamassissan) server is still on Linode and I plan on migrating it over.

                                                                                                      1. 3

                                                                                                        I own a Synology Nas.

                                                                                                        • Gitlab CE via Docker
                                                                                                        • A small bit rotting site on GRAV cms.
                                                                                                        • At work Prometheus monitoring stack, 2.2.0.
                                                                                                        • Other odd scripts here and there.
                                                                                                        1. 3

                                                                                                          Good thread idea. I am not an expert at this stuff so suggestions and feedback most appreciated:

                                                                                                          • git server via gitolite
                                                                                                          • dns authoritative server for my primary domain with maradns
                                                                                                            • This is only because my domain provider’s API for manipulating managed DNS is awful
                                                                                                            • I do want to look into setting up a caching server as well, but I have very few cases and the effort doesn’t seem worthwhile. Please prove me wrong.
                                                                                                          • A custom file-sharing/upload thing written in Go
                                                                                                            • I wrote my own because I wanted one without any client-side JS, lightweight markup, file tagging support etc. and none of the existing solutions worked for me
                                                                                                          • OpenSMTPD
                                                                                                            • It receives email and relays to gmail and stores a local copy in a maildir
                                                                                                            • Don’t have a way to send email yet. I don’t like mutt, and really would like to avoid another ncurses app. I would really like a well written email client on top of notmuch.
                                                                                                          • ZNC and weechat for IRC
                                                                                                          • A medium proxy (example link: http://med.awalgarg.me/p/ee98c180100)
                                                                                                            • Based on @tedu’s code, thanks tedu!
                                                                                                          • aria2c for torrents

                                                                                                          Stuff is rather unorganized right now. I’d like to move to a BSD, setup a proper VPN (wireguard looks neat, hope it works on BSDs soon) to connect all devices, make it easier to manage multiple domains and servers together and throwaway email accounts with domain rotation etc. The overall broken state of computing makes me loose motivation towards even trying to build my utopia of personal computing, though.

                                                                                                          1. 3
                                                                                                            • My own trading platform
                                                                                                            • Minecraft server
                                                                                                            • Homeassistant
                                                                                                            1. 3

                                                                                                              Right now, just a (Ghost) blog and a couple other things, all on docker. I need to port over some tools for my seedbox and plex servers. I recently started consolidating everything on a single baremetal machine so it’s a bit of work to move things around. I’d like to migrate off of dropbox + all the other proprietary stuff, but I have minimal time and it’s not a trivial thing to move a decades worth of setup. My current plans are to get a VPN, Monitoring, and CI set up, then probably Plex + some torrenting solution + whatever FOSS filesyncing system looks good. I’ve already ported over my blog, but I need to rebuild the way I’m doing routing because it’s pretty ancient magic at this point (and doesn’t really support SSL easily).

                                                                                                              1. 3
                                                                                                                • OpenVPN with DHCP options to point to my own CoreDNS with custom ad-blocking filters
                                                                                                                • Ghost blog instance with an nginx frontend that plugs directly into Let’s Encrypt for SSL
                                                                                                                1. 3

                                                                                                                  I stopped hosting my own email when I realized that I wasn’t reading my personal email because of the spam. And yeah I tried greylisting and spamassassin and all kinds of shit. At that time I was running my own DNS too (primary & secondary on different continents).

                                                                                                                  These days I’m only really self-hosting web stuff though I’m pretty sure that’s a bad idea. Nobody offers the web hosting flexibility I want at the price I want to pay, though I think letsencrypt’s ubiquity may start to change that.

                                                                                                                  1. 3
                                                                                                                    • Opensmtpd / dovecot
                                                                                                                    • XMPP (prosody)
                                                                                                                    • pastebin (my own written in CHICKEN Scheme / fiche as a gopher hidden service)
                                                                                                                    • gopher (geomyidae)
                                                                                                                    • git sources via stagit
                                                                                                                    • syncthing
                                                                                                                    1. 3

                                                                                                                      On my personal servers only OpenBSD httpd(8) for now.

                                                                                                                      1. 2
                                                                                                                        • some smaller personal (mostly static) websites
                                                                                                                        • a bigger forum for a community I was active couple of years ago
                                                                                                                        • mail (postfix / dovecot)
                                                                                                                        • a private gitlab instance
                                                                                                                        1. 2

                                                                                                                          I want to run a self-hosted issue tracker, which is my favorite thing about GitHub. I do NOT want a replacement for GitHub. This has nothing to do with the Microsoft/GitHub merger. This is purely about the fact that I do not like fork-and-PR workflow/s and I don’t like the way that GitHub has implemented code reviews. So I’m not looking to run GitLab, Gitea, Gogs, or any other GHE clone.

                                                                                                                          I’d rather host my own raw Git server (possibly using Patchwork to manage patches). I just need some sort of issue-tracking software that has the ability to link to specific patches and commits in my Git repos.

                                                                                                                          Does anybody have any suggestions please?

                                                                                                                          1. 1

                                                                                                                            There are plenty of standalone issue trackers. Bugzilla is the godfather of them all; Request Tracker is similarly venerable but is more often used for IT helpdesks, and only occasionally OSS projects (e.g. Perl).

                                                                                                                            The trouble with standalone issue tracking software is that since issue tracking is the focus of its existence, they tend to end up a lot more complex than something like GitHub issues, if something that simple is what you’re looking for. If you want something GitHub issues-like, I wonder if mild modification of Gitea to shut off the code hosting aspects would be productive.

                                                                                                                            Another thing I’ve been thinking about lately is tracking issues in a branch of the repository (similarly to how GitHub uses an unrelated gh-pages branch for website hosting). This would have the not insignificant advantage that the issues would then become as portable as Git itself, and be versioned using standard Git processes. I think there are some tools that do this, but I haven’t looked at them yet.

                                                                                                                            1. 1

                                                                                                                              If those issue trackers are too complex for your needs, I reckon it’d be about an afternoons work to throw together a simple one (which might be why there isn’t one packaged - it’s not big enough!). Of course, within a few months you’ll start wanting to add more features…

                                                                                                                              Agree that tracking issues in a git repo is great.

                                                                                                                          2. 2

                                                                                                                            IRC server at Digital Ocean

                                                                                                                            Zoneminder on raspberry pi at home

                                                                                                                            1. 2
                                                                                                                              • Syncthing
                                                                                                                              • nginx httpd (just static home page)
                                                                                                                              • Subsonic
                                                                                                                              • weechat!
                                                                                                                              • backups of all the other machines (home-grown script using btrfs+LUKS with snapshots; one big usb disk at home and one at my parents house rotating; has so far saved us from deleting family photos many times)

                                                                                                                              I used to have Owncloud, but got sick of having to (re-)configure the same stuff every update, and Syncthing covered my file syncing needs, while I mostly use git+emacs org-mode for my calendar (and bbdb with Syncthing for contacts).

                                                                                                                              1. 1

                                                                                                                                Currently running my personal website, Mediawiki and Nextcloud. A mailserver based on OpenSMTPd and Dovecot is WIP. Together with some friends, we host an XMPP server based on Prosody.

                                                                                                                                1. 1

                                                                                                                                  The only thing that has changed since last year is the addition of a Gemini server, which again is a self-written server. And I have since release the code to my gopher server.