Would you buy "self-hosted in a box" hardware?

EliRibble@lemmy.world to Selfhosted@lemmy.world – 121 points –

I'm considering a business plan for people getting in to self-hosting. Essentially I sell you a Mikrotik router and a refurbished tiny x86 server. The idea is that the router plugs in to your home internet and the server into the router. Between the two they get the server able to handle incoming requests so that you can host services on the box and address them from the broader Internet.

The hypothesis is that $150 of equipment to avoid dozens of hours of software configuration is a worthwhile trade for some customers. I realize some people want to learn particular technologies and this is a bad fit for them. I think there are people out there that want the benefit of self-hosting, and may find it worth it to buy "self-hosting in a box".

What do you think? Would this be a useful product for some people?

110

How will you provide long term maintenance of their server for a one time payment of 150$?

How will you provide long term maintenance of their server for a one time payment of 150$?

My current thinking is the margin on the hardware would be intentionally low, essentially the cost of the hardware %+10 for configuring it a bit, installing NixOS, etc.

The business would survive on support and hosted services. Something like $20/month which gets you access to support to answer questions, help configure applications, troubleshoot issues, etc. Possibly rolling upgrades of your installed software on your behalf. Alerts on urgent security vulnerabilities. Could also handle tricky things like custom DNS (email servers, certificates) and off-site backups. I'm not totally sure what all would be included, but the goal is to make money while providing value, not build a garden or rent-seek.

$20 per month would be enough to discourage me. It's another relatively costly computer-related subscription and I already feel like I'm losing a battle to keep those minimal. There would have to be some very clear benefits for that price.

There would have to be some very clear benefits for that price.

Agreed, it would need to be very clear, and additionally we'd need to plan that a certain percentage of customers would grow out of a basic support offering, either by becoming experts or by growing their install size and complexity.

$20 per month would be enough to discourage me. It’s another relatively costly computer-related subscription and I already feel like I’m losing a battle to keep those minimal.

Understandable. Is there a price you think would be reasonable? What would you want for that price?

So the problem with thin margins on the hardware side is what’s stopping a user from just installing their own OS once they figure out they can do the same thing you’re doing on the same hardware?

Nothing stops them, but that'd be fine. If they buy the hardware they should be able to do what they want with it.

Raspberry pi was able to do it with $35.

Raspberry Pi is not a server. That people use it as one does not mean it's fit for purpose.

While true I feel like your comment misses the point. A raspberry pi is just a computer, not a magic solution box that's kept maintained and updated by some guy. Their product isn't a service, it's just the device.

The fact that it's an option that even remotely works is my point. They sell hardware. They don't support software. The community does that. There is something to be gained from having a uniform platform for learning self hosting responsibly.

A Raspberry pi isn't particularly great at any one thing. It's greatest strength comes in bundling everything you need in a box at an affordable price. Once you know where your pain points are then you can build/design a system that overcomes those shortcomings.

Having a starter kit would be an easy way to get more people in the space. Would it cost $35 of course not. Level1Techs made their KVM to meet their own requirements and then the community benefits. To me, this project has that kind of energy. Or at least the potential for it.

Isn't that basically just a commercial NAS? Go buy a Synology NAS, or get fancy w/ TrueNAS. You don't need an entry-level enterprise-grade router at all, you can just plug the NAS in anywhere and you're golden. You can usually install a few services like Plex/Jellyfin or HomeAssistant alongside the data storage if you like.

If that's not going to work for you, you probably have a good idea of what will work for you. For me, a tiny x86 server isn't going to cut it, because I want a beefier CPU to run CI/CD for my programming projects, so a beefier, modern CPU is quite valuable. That's totally overkill if all you want is a simple streaming setup with 1-2 transcoded streams.

So I think there are two main markets here:

  1. just give me something that works - these will flock to pre-configured solutions, like Synology or TrueNAS
  2. I want something specific - they'll DIY components together to build their own custom solution

The only other group I can think of is the group that can't afford 1 and doesn't know enough to do 2, but I really don't think that's a particularly big group, and they'd be better off reusing something they already have instead of getting some off-the-shelf solution.

I could absolutely be wrong here, that's just my $0.02.

Isn’t that basically just a commercial NAS?

Is it? I haven't bought one, nor have I built a TrueNAS box. I've heard from folks that run applications on a NAS, particularly VMs and containers, but my understanding is that your price-per-unit-compute is really high since that's not what it's optimized for. I've got an old Zyxel NAS, it's quite low-end, and I can't run anything beyond NFS/Samba/audio streaming.

you can just plug the NAS in anywhere and you’re golden.

Do they have some kind of VPN or TURN system? I'm expecting that customers will want to access the device outside of their LAN.

For me, a tiny x86 server isn’t going to cut it, because I want a beefier CPU to run CI/CD for my programming projects, so a beefier, modern CPU is quite valuable

How beefy? Multiple CPU? If you could buy 4 boxes and have them load balance would that be interesting, or do you have a strong preference for single-box compute?

I could absolutely be wrong here, that’s just my $0.02.

Thanks, your $0.02 is exactly what I'm looking for!

price-per-unit-compute is really high

Well yeah, they're optimized for storage. And if you're starting from nothing, you're going to need storage.

Synology is your budget home cloud, and it's just good enough to handle basic cloud tasks and small-scale service hosting. If you grow out of it, you leave the Synology NAS for purely data storage, and add another box for heavier compute.

TrueNAS, on the other hand, is usually overkill for a home NAS setup because it's designed for small-ish business use-cases, so it has a lot more CPU and RAM than you'd need when you only have a handful of users in a home setting. So it can probably handle any CPU workload you throw at it, within reason. It probably wouldn't make a great compiling cluster, but it would do really well hosting things like NextCloud. If you're looking for transcoding, you need to check the hardware and drivers on FreeBSD (maybe it's not an issue, but it's good to check first).

Do they have some kind of VPN or TURN system?

How would the router help with that? If you're behind CGNAT, you'll need something external regardless. If you're not behind CGNAT, pretty much any router on the planet can do port fowarding, and many can handle a network-wide VPN if that's what you're after.

I'm behind CGNAT and I have a VPS that hosts my VPN and routes all traffic using HAProxy over the VPN to my internal devices, and my internal devices maintain a persistent connection to the VPN. It sounds complicated, but it's really just two config files that I'd be happy to share if anyone is stuck. I do have a Mikrotik router, but it's not needed for any of this, I only use it for static DNS routes so I don't hit the WAN when accessing my services by their domain names (and VLAN for ZeroTrust shenanigans, but again, not needed at all). If I didn't have that option, I could always just host a DNS server right on my NAS and do the same thing (any router can set the DNS server over DHCP).

How beefy? Multiple CPU?

No, I'm not that productive. I just want it to run builds of my Rust projects, and those can take some time. So 6-8 recent-ish cores is plenty. Right now I'm using a Ryzen 1700, and once I upgrade my PC, I'll move my Ryzen 5600 to it. I want my builds to finish somewhat quickly without interfering with other services on the machine (e.g. if I'm running a build while we're watching a movie, I don't want the movie to stutter).

If my project grows (i.e. I get outside contributors), I'll need higher specs.

And yeah, my preference for a single box is storage space. My NAS sits on my desk, and I'd really rather not get a rack setup. More machines means higher power and more space. I do have a couple of Raspberry Pis around for specific use-cases (e.g. one on my TV for RetroPie), but I'd really rather not have a handful of PCs running 24/7. Electricity is pretty cheap where I live, but even then, I'd rather not waste power just because I can get a good deal on servers. My single box uses something like 40-50W, and once I upgrade to my 5600, idle draw will drop another 10-20W (I have a 20-30W floor due to the drives).

I'm just skimming this thread, but paragraph 2 is basically fact. I'm on my second synology box, the UI is simple and I want reliability, I don't want shit to break because of a git push on some bullshit tool. But recently I snatched a Lenovo server and threw proxmox and Debian on it, and also got a vps.

The synology is actually pretty capable, especially if it can do docker, and if you are willing to venture into (as a beginner) copy/pasting commands from the internet into the task scheduler as a half-assed way to get at the terminal, it can do literally everything that I want. But I'm a geek, why should I keep a stable, reliable system as my only machine? :p

My synology does files, some docker stuff. Lenovo does a couple docker stuff, BOINC since it's just idling most of the time, and docker for game and related hosting on my vps. Hell, this entire thing could be 'just add a network folder, and install docker and dockge/portainer'.

Though (paragraph 3) I tried and didn't like TrueNAS. Maybe it's because the synology does it already, I was just exploring, but it has that 'foss feel' where you have no idea what you are doing, even when you know what all the pieces do, and it just kinda is like 'here you go, figure it out' and leaves. I remember the UI being equally... 'designed by a programmer' let's say. It might be powerful but oof, slick it ain't.

I think this needs to exist, but as a community supported system, not as a commercial product.

Pick a set of open technologies - but not the best, lightest weight, just pick something open.

Come up with a security architecture that’s reasonably safe and only adds a moderate amount of extra annoyance, and build out a really generic “self-hosted web hosting and VM company-like thingy” system people can rally around.

Biggest threat to this, I think, is that this isn’t the 90s and early 2000s any longer, and for a big project like this, most of the oxygen has been sucked out already by free commercial offerings like Facebook. The technical family friend offering to self-host email or forums or chat no longer gets gratitude and love, they get “why not Facebook?”

So… small group effort, resistant to bad actors joining the project to kill it, producing a good design with reasonably safe security architecture, that people can install step by step, and have fun using while they build and learn it.

We already have that, the first problem is we have like a dozen of them, a few are even well supported. The second problem is that usually the technical knowledge required to set up the systems are still lower than the technical knowledge required to keep it running.

I’ve been struggling to wrap my head around a good security architecture for my mspencer.net replacement crap. Could I bug you for links?

I figured out a while ago to keep VM host management on a management VLAN, and I put each service VM on its own VLAN with heavy, service-specific firewalling and a private OS update repo mirror - but after hearing about ESXi jackpotting vulns and Broadcom shenanigans, I’ve gotten really disheartened. I’d love some safe defaults.

It sounds like you're getting into the keeping it running phase.

First, going back to your previous comment, self-hosting email is difficult. It's not hard for a small provider to end up blacklisted and you're probably kind of just done at that point and it will feel very unfair. I get that it's a fun set of technical challenges, but you couldn't pay me enough to help someone self-host email.

Second, guessing, but it sounds like you may be trying to expose your services directly and doing a lot to make that work which goes against what most would recommend for hosting your own services. Big companies don't expose their intranet like that, follow their example. Almost every guide or system is going to warn against that. If you're going to host more than one thing, highly recommend focusing on minimizing entry points and looking into a VPN-like solution for accessing most if not all of your services. Still spend time on securing your intranet, but most of your risk is going to come from how hard it is for people to get past the front door (or doors).

Thank you for your reply, but to be clear, I’m not looking for individual details to be spelled out in comments. What you said is absolutely correct, thoughtful, and very helpful. But emotions are running a little high and I’m worried I’ll accidentally lash out at someone for helping. Apologies in advance.

But do you have any links? Beyond just the general subjects of security architecture, secure design, threat modeling, and attack surface identification, I’d love to see this hypothetical “generic VM and web application housing provider in a box” come with a reasonably secure default architecture. Not what you’re running, but how you’re running it.

Like, imagine decades in the future, internet historians uncover documentation and backups from a successful generic hosting company. They don’t necessarily care what their customers are hosting, their job is to make sure a breach in one customer’s stuff doesn’t impact any other customer. The documentation describes what policies and practices they used for networking, storage, compute, etc. They paid some expensive employees to come up with this and maintain it, it was their competitive advantage, so they guarded it jealously.

I’d want to see that, but (a) a public, community project and (b) now, while it’s still useful and relevant to emulate it in one’s own homelab.

If I can get some of that sweet, sweet dopamine from others liking the idea and wishing for my success, maybe I can build my own first version of it, publish my flawed version, and it can get feedback.

I think this needs to exist, but as a community supported system, not as a commercial product. ... The technical family friend offering to self-host email or forums or chat no longer gets gratitude and love, they get “why not Facebook?”

I think this is a great point, it doesn't help much to create a business that ends up with the same incentives and the same end-game as the existing systems.

So… small group effort, resistant to bad actors joining the project to kill it, producing a good design with reasonably safe security architecture, that people can install step by step, and have fun using while they build and learn it.

That is precisely what I'm looking to build. I don't want to get rich, I want people without 10 years of industry experience to get some of the benefits we have all been able to build for ourselves.

I think a possibility is a series of open source anvil or nixos scripts that you can run on most hardware with minimal changes, in an extendable architecture of some kind to add or remove functionality and they perhaps get maintained by the community or some structure of the kind of Linux distributions.

This could enable people with minimal skills set up and maintain a reasonably useful but secure environment just by changing a few variables.

nixos scripts

What's a nixos script?

Nixos is an os that’s defined by its config stored in .nix files. Everything is defined here all the software and configurations. Two people with the same script will have the exact same os.

Any changes you make that aren’t in the scripts won’t be present when you reboot.

You could maintain a very custom linux distribution (kinda) by just maintaining these config scripts.

So a user wouldn’t need to install all required software and dependencies. They could get a nixos and the self-host config and adjust some settings and have a working system straight after install.

A viable alternative is Guix, which uses Scheme for its scripts and could also use the Hurd kernel instead of Linux, but works the same.

I'm probably an ideal candidate for something like this but I'd much rather have someone walk me through setting my own thing up, rather than them handing me a bunch of preconfigured stuff that leaves me just as clueless.

If it came bundled around a bunch of DIY guides explaining the hows and the whys, it'd be far more appealling

If it came bundled around a bunch of DIY guides explaining the hows and the whys, it’d be far more appealling

Interesting, so if you got hardware and it came with guides, what kind of guides would you want? I would assume something layered. At the top is just "I want to install these 5 apps and use them, I don't care how it works" and in the middle is "I'm ready to SSH into the router and create some VLANs for fun" at the bottom is something like "I want to flash my own firmware with appropriate certificates for secure boot and my own root chain of trust on the server hardware".

The guides, basically a quick and dirty walkthrough on setting it up, hopefully a few explanations about things, and a handful of common troubleshooting tips. Also pointers to a handful of communities that have helpful info in case something obscure pops up.

Basically, teach a man how to fish, as opposed to giving him a couple.

I think a lot of people who would otherwise dabble with a DIY home server never try because it's pretty technical (beyond typical 'build a pc' stuff) so I think the education that would come with the hardware would be appreciated by many. Help them get their foot in the door by making the dive a little less scary. Nothing too over the top but point them to the places where people hang out discussing the more technical crap for when that day comes

I could see this being a use case for a NixOS deployment where your company manages the configuration file and versioning of the system, as well as providing support. Over time, I’d you’re diligent about building documentation based off of each support request, you’ll end up with a personalized guide. And if your customer decides take a break or quit entirely, they have a configured system that doesn’t lock them in into something too esoteric.

Disclaimer: I only know of Nix, never used it because I just don’t manage that many machines to be worth my while to learn it.

Hard agree. In fact, I think there’s a market for JUST the guides. It’s true that there’s a TON of guides out there already, from old blogs to YouTube, but the issue is: all of them start or end with: “your use case might differ, so perhaps this solution isn’t for you.” Or “make sure this setup is compatible with your specific hardware”

For example: I want to set up some sort of backup/cloud storage type system. Well there’s about 1400 ways to accomplish that. I can easily just grab one and go, but I’ll always wonder- should I have done this a different way? Would my life be easier/more secure if I chose a different set up?

So offering hardware that is compatible with whatever “stack” of services included would be a huge plus. Sorta like getting a raspberry pi and following a specific raspberry pi tutorial- you know the issues you get aren’t gonna be due to incompatibility.

I think it really boils down to the scale of one’s home lab- are you just tinkering to get some skills and make something cool? Or are you hoping to do something much much bigger? Different software solutions fit those extremes differently.

Sorry, got off rambling there. I guess I’ve been down the home lab hardware/software wormhole for too long these last few weeks.

Sorry, got off rambling there. I guess I’ve been down the home lab hardware/software wormhole for too long these last few weeks.

Not at all, I found your comment insightful. What you're describing to me sounds more like a business of consulting with people rather than getting access to a knowledge base. One of the things I'm curious to learn is if there is a body of people out there that give up with self-hosting because they don't want to learn everything, but just want to create something that works, and our resource are optimized for training professionals.

I’ve thought more on this yesterday, and I think my issue is-

I don’t want something that ‘just works’, I want to BUILD something that ‘just works’

The distinction is that I don’t want to buy premade solutions. I want to make them. Not because of the customizability, but because the fun is in the building. Think Lego- hundreds of people build the exact same product in the end, but why are they sold in pieces? Just assemble the damn things and sell them complete (with markup). You think more people wanna buy that?? I’d bet against it.

Hi, I'm your customer base.

I'm a complete novice, no network or coding experience, but not afraid of computers either. I'm pretty worried about messing up something serious due to lack of knowledge.

In the end, I didn't choose Synology or the like due to:

  • lack of robust community support. I've noodled around with Linux for years and learned that community support is essential.

  • price. I'd pay 10% or 50% more for a good pre-configured system, but not 3-4x more (which is just the general feeling I get from Synology)

  • lack of configurability. I'm still not sure what I would like to do (and be able). I know I want to replace some storage services, replace some streaming services, control my smart home, maaaaybe access my files remotely, and probably some other stuff. I may want to have email or a website in the future, but that's not on my radar right now.

If there were some plug-and-play hardware/software solution that was still affordable and open, it would be a good choice for me.

I appreciate your thought process here! Where did you end up as far as self-hosting?

I'm currently about halfway through setting up a home server on an old/refurbished Dell PC. It has enough compute to transcode if needed, but no more. I'll have to upgrade the storage to set up RAID. For software, I am running xubuntu, which offers the benefits of the great community and documentation of Ubuntu. It is very beginner friendly, but is a bit simpler and lighter than gnome. I'm running everything I can as Docker containers.

Nice. That's similar to what I'm doing: Ubuntu LTS server running containers, orchestrated by Docker Compose, with a Traefik reverse proxy in front of everything. I'm curious about TrueNAS SCALE though, wondering if that would suit my needs.

What's the value-add over just buying a SFF PC?

I assume "SFF PC" means "Small form-factor personal computer".

The value add is not having to make a large number of technical decisions. IPv4 vs v6, which firewall rules to use, port-forwarding vs DMZ, flavor of Linux, partition scheme, filesystem type, application packaging system, and on and on. For many people they don't care about these decisions, they want "to put something on the Internet" and do it safely. While safety isn't a binary, and engineering is full of tradeoffs, an experienced practitioner can answer many of these questions reflexively and come out with good enough answers for some customers.

In the end the customer should be able to dig in and change whatever they want. But I want to see if flipping the decision dependency around will help. IE, start with stuff that works, then change things, rather than start with parts and make all the decisions before anything works.

Probably not much for people on a self hosting community, but those that want to get away from subscriptions and steal your data as a service cloud providers that might need some reassurance that they’ll have a working system.

The idea is that the router plugs in to your home internet and the server into the router. Between the two they get the server able to handle incoming requests so that you can host services on the box and address them from the broader Internet.

Why would I need a separate router for that? I'd need to configure the main router anyway.

I would absolutely want the extra router because most people have one from their service provider. For self hosting, you want an additional router with your own software.

No. People who want the benefit of self housing without worrying about hardware will rent a vps or something simpler. The hard part of hardware isn't the purchase, it's the maintenance.

Also, why the separate router?

I agree with this. Self-hosting requires the user to understand their network, their software, how it all interacts.

If you provide a hardware product and call it a solution, people are going to expect a turn-key solution like a plug-and-play router.

You're going to end up supporting a bunch of newbies who, by no fault of their own, can't tell you an error code in the console let alone whatever UI you give them.

I think a better solution would be a course that walks newbies through self hosting.

People who want the benefit of self housing without worrying about hardware will rent a vps or something simpler.

That's certainly an option. I think of dedicated hardware as working for several different people, some of which care a great deal about not using a VPS provider because they don't trust them with their data, or don't trust them to be around for a long time, or don't trust them not to raise the prices.

The hard part of hardware isn’t the purchase, it’s the maintenance.

I'm inclined to agree, but I've been doing hardware for a long time as a hobbyist and I sometimes forget how far I've come. It sounds like you might be somewhat like me in that regard. I'm often surprised when people see assembling system parts and flashing an OS as a complex, inscrutable task.

What do you see as the hard part of maintenance? Scheduling time to do it? Unexpected errors or failures?

Which problem(s) are you trying to solve? The networking issue of firewalls and port forwarding? The admin tasks of installing and configuring applications? The task nobody does of maintaining software and keeping it up-to-date?

Which problem(s) are you trying to solve? The networking issue of firewalls and port forwarding?

Within the scope of this question, yes. Also properly configuring IPv6, though that's just to achieve the same things that port forwarding enables.

The admin tasks of installing and configuring applications?

That's also on my list, but I was trying to keep the question focused. Do you think the answer makes a difference? In other words, if it was just networking would it be not worth it, but networking and application management would make it worth it?

I don't think the networking part is part that needs solving. Modern AP/routers are pretty easy to configure and setup securely. Dunno - I'm definitely not in the target audience for what you're doing though.

I would be happy if I could pay you to just set up and periodically check my setup. I only say that because I would probably want to put together something that cost more than $150. But I am absolutely overwhelmed by what I don't know. Every tutorial I read gives me more questions than answers.

I just want to self host, share it with a close circle of friends, and keep everyone else's noses out of my business.

I am absolutely overwhelmed by what I don’t know. Every tutorial I read gives me more questions than answers.

I felt that in the very core of my being.

Looking at my setup, sometimes I look back and wonder how tf I've made it this far. Dozens, if not hundreds, of hours of searching, reading, watching YouTube tutorials, and I feel like little has stuck with me. If the boot drive in my proxmox server takes a shit on me before I manage to figure out how to properly back everything up before that inevitable failure occurs, I'll be back at square one (as in, still clueless and destined to spend dozens/hundreds of hours getting things set back up and configured).

I can say that I am a bit more familiar with the linux terminal now than I was a couple years ago when I first started, so there is some learning and growth taking place. But I'm still just a wee lad still trying to figure out how to simply stand up on my own. And heaven help me if an actual problem arises.

Would you rather pay a higher price per single instance ($100 to fix something you broke on accident) or pay a lower constant price ($10-$20/month) like insurance?

Would you rather get help in the form of a conversation, a custom script someone wrote for you, or by giving admin access to the company to directly fix things?

I would be willing to pay an initial setup fee followed by some maintenance fee. I would expect the initial fee to be significant due to a custom setup/requirements. (I am talking just setup, not cost of hardware/ physical installation).

Unique home network with 2 managed switches.

Self hosted security DVR, automated computer backup, photo backup, network drive for document storage and then self hosting a Jellyfin server along with a torrent service.

(I am sweating just thinking about trying to set that up)

Storage will be a RAID setup where I can just upgrade by throwing a new drive into an open slot and replace (as necessary) existing drives by just swapping them out and server automatically handles the data management.

I have a VAGUE idea of what that takes

Maintenance would cover service calls to resolve problems due to security updates/patches, end of life upgrades, normal planned maintenance type of stuff.

User caused issues should be extra :) (i.e. I was just trying to install a Minecraft server)

Couple hundred bucks, at least, for setup. And that seems cheap.

I would pay $10-20 a month for a maintenance fee after an initial setup fee.

I would MUCH rather give my money to an individual sysadmin than a corporate megalith that will use my membership to force an arbitration clause to any future service of theirs I use. Fuck the mouse. Fuck em all. I tried to do it right and that still want enough for them.

If I don't have to fail to understand another "Docker's not that bad | complete beginners' tutorial" video, I'd sign up.

Although any commercial business will be dead or the new problem to avoid in 15 years.

Docker's secret that most "getting started" tutorials seem to miss is docker-compose.yml. Who wants to type these long-ass commands to start containers? I always just create a compose file, and then docker compose up -d.

Dockerfile is for developers, you shouldn't need more than a docker-compose.yml for self-hosting stuff.

Although any commercial business will be dead or the new problem to avoid in 15 years.

This sounds like an interesting point, could you expand it a bit? Are you saying that there's no way this kind of business will last that long, or if it does it'll become something bad?

what's your plan on teaching these people to maintain their selfhosted instances? Are you selling support? I mean you could script pulling and recreating containers, but without eyeballs on it, that stuff will die eventually.

I’d buy your services to configure my TrueNAS server right now.

Is that just a dig on TrueNAS, or is it just a particularly daunting hill in the march up the difficulty curve?

Just an admission of incompetence on my part. I got the NAS up and running, but for the life of me, couldn’t set up a single docker service. No Jellyfin, Immich, pihole, nada.

Btw I’m serious about hiring. If this interests you, we can work details.

Oooohhhhh boy. Another one of these 🤣

It's not like a package thing you can sell if you're not supporting it. Then you're just selling hardware at an inflated price. It's not even self-hosting at that point. Why wouldn't you just pay a regular company for a product?

Good point, I should have mentioned the plan is to sell support.

Then I'm not sure what the product you're selling is though. Tech Support? That's going to be a hard sell.

If I wanted that I would just buy Synology/QNAP/Zima, etc.

It would make more sense to sell a management service

If we did, would you be comfortable giving the company a root SSH login to manage your system, or would you prefer a more limited method of access?

Neither honestly. However, I am also not really the unskilled user trying to self host

Okay, fair enough, any thoughts on what a good 'management service' might look like?

Ansible honestly. You can use Ansible to report on facts. Outside of that you Aldo could use Telegraf+influxdb+grafana

Dual Core ARM Cortex-A7 processor running at 1GHz

1GB DDR3 RAM memory

Doesn't seem like you could self-host a whole lot with that...

Coming from someone who started selfhosting on a pi 2B (similar-ish specs), you’d be surprised. If you don’t need anything fast or fancy, that 1GB will go a long way, and plenty of selfhosted apps require very little CPU. The only real problem I faced was that all HTTPS-related network tasks were limited at ~3MB/s, as that is how fast my pi could encrypt the data (presumably, I just saw my webserver utilising the entire CPU and figured this was the most likely explanation)

I'm currently hosting like 5 vms on a proxmox host (mostly ubuntu vms- pihole, nextcloud, home assistant, etc), which is an i5 4590 with 32 gb ram and I'm running up against the limits of how much ram I can provision and if 2 or more of my vms are doing something intensive at the same time I'm pinning the CPU. I don't think my use-case is that crazy for someone doing a little self-hosting.

Luxury! My homeserver has an i5 3470 with 6GB or RAM (yes, it’s a cursed 4+2 setup)!

Interesting, I also run Nextcloud and pihole, and vaultwarden, jellyfin, paperless-ngx, gitea, vscode-server and a minecraft server (every now and then).

You’re right that such a system really does show its age, but only when doing multiple intensive tasks at the same time. I try not to backup my photos to Nextcloud while running minecraft, for example, as the imagine identification task pins my CPU at 100%. So yes, I agree, you’re probably not doing anything out of the ordinary on your setup.

The point I was trying to make still stands though, as that pi 2B could run more than I would’ve expected beforehand. I believe it once even ran jellyfin, a simple file server, samba, and a webserver with a simple HTML website. Jellyfin worked just fine, as long as the pi didn’t have to transcode (never got hardware transcoding to work).

It is funny that you should run out of memory, seeing as everything fits (albeit, just barely) on my machine in 1/5 the memory. Would de overhead of running VM’s account for such a large difference?

I'm running the recognize app on nextcloud which I think requires at least 4-5 GB RAM, so I have 6 dedicated to that VM. I'm pretty sure the recommendation for Ubuntu in general was 2 GB RAM so I gave my pihole half that. Home assistant wanted 4 GB, but I gave it 2. I think my Jellyfin server has like 6 and I have another VM with like 4. So that's a total of like 19gb RAM provisioned. Plus I have a 2 TB zfs pool for my nextcloud VM. When I go into proxmox it tells me I'm using like 29.5 GB.

I suspect if someone was using docker or some other sort of containerization one could expect better performance than what I am getting with VMs.

It was ok at the time, and if it isn't ok now, that means you want to run something that is too bloated for its own good.

Really though, special hardware for this doesn't make too much sense. A raspberry pi with two ethernet interfaces would be great, but if you can live with ethernet plus wifi, the current rpi's will do it. Otherwise there are lots of similar boards that really do have two ethernet.

I have not really felt much use for self hosted server hardware at home. I use VPS's for that and it's less hassle. Maybe it doesn't count as completely self hosted, but conceptually it's a miniature colo box.

Was my first impulse too, but looking at their app selection now, it seems kind of ... inutile? Unsexy? Old?

Market to tax funded institutions. If you can market "self hosted" as cheaper and easier than mother solutions you'll have guaranteed clients for a long time.

That's an interesting idea I hadn't thought much about. I've been more focused on individuals than organizations. Do you have experience with tax-funded institutions? I assumed they generally have strict procurement rules and long support contracts with large established players by policy.

Their procurement policy is basically "has it been recommended? Is anyone else using it? Is it cheap?"

I work in public sector.

150$ is rather ambitious for what you are describing as a custom made low power server. Managing to build something... Anything commercial out of new, hell even refurbished parts that has enough horse power to run anything more than a pihole/DNS server at this price point would be a challenge and a half. If you're going refurbished/2nd hand, you're likely gonna spend half of that on just shipping the parts to you.

I believe you are vastly underestimating the price of new low end parts and vastly overestimating the capabilities and availability of old micro servers. I'd say something like this would work at a price range of around 300~400$ (and even that's ambitious imo).

And even then, that's a NICHE audience you'd be targeting. It would be people who don't wanna pay subscriptions, but also don't wanna be bothered to spend a day or 2 figuring out how to set up a simple linux box on an old computer they have. I'm not saying that audience doesn't exist, it's just veeeeery niche.

Thanks, yeah, there's a lot of work for us to do in testing hardware and understanding what a common workload (if such a thing exists) would need.

Do you have any particular evidence that causes you to think the audience would be niche or wouldn't want to pay subscriptions? I can understand if this is just an opinion you hold, but if there's data or experience behind it, that would be good to know.

Anecdotally, the majority of people I've seen who self host are doing it to replace subscription services. This ranges anywhere from piracy to libre office. So, they're not gonna pay you a subscription for something they can do themselves.

The audience is niche because you're aiming at a subset of a subset of a subset of people. You're looking to sell this to someone who:

  1. Doesn't want to pay for a service they can do by themself (self-hosters)
  2. Has the knowledge and desire to handle networking (no amount of preconfiguration will make them not have to set up which ports their services need while allowing freedom)
  3. But doesn't have the time/energy to do it themself
  4. Can afford to shell out a rather large amount of money ($150 is a lot to many people, and as the other person brought up; you'll likely end up selling it for much more than this after manufacturing costs)
  5. For a piece of equipment that is eclipsed by a 3 year old desktop computer from eBay

The amount of people who self host anything is already abysmally low - just look at the social media user count. There are more than twice as many people on r/pathofexile (which is already pretty niche) as on r/selfhosted. Obviously reddit isn't the end-all be-all of representation in that way, but you can definitely get an idea of trends from it.

Well put. On top of the 5 points about the target audience above, in order to make a sale they also have to:

  • Have heard of the product
  • Decide to buy it (many will research competitive products)
  • Spend the time to actually place the order

I'm not in the market, but I've actually had similar thoughts of building a project on top of NixOS that's focused on self-hosting for homes and small businesses. I recently deployed my own router/server on a BeeLink mini PC and instead of using something like OpenWRT, I used NixOS, systemd-networkd, nftables, etc.

DM me if you want to discuss more. I think the idea has potential and I might be interested in helping if you can get the business model right (even if it just ends up being some FOSS thing).

I admire the thought of lowering the barrier to entry to start self-hosting for "normies". Not sure where you are located, but where I am, this price point is not realistic even for used equipment, not including RAM or storage. I'm not really sure what value add you are bringing to the table that one wouldn't get from just buying used hardware from an office surplus and if one is very inexperienced in self-hostong, looking into something like LTT is partnered with like Hexos.

this price point is not realistic even for used equipment, not including RAM or storage

I'm doing experiments currently on a refurbished Intel i5-6500 with 8Gb DDR4 and a 0.5Tb SSD. It's tiny, quiet (~45 decibels) and so far runs ~8 watts idle, 25 watts normal usage. I haven't stress-tested the power draw. The router I'm testing with is a Mikrotik hEX lite 5. That's around ~$150, though clearly if you are accustomed to more "rack-mount" style homelab these will seem very modest.

What I'm testing for now is getting representative loads on the devices to see how they perform.

I’m not really sure what value add you are bringing to the table that one wouldn’t get from just buying used hardware from an office surplus and if one is very inexperienced in self-hostong, looking into something like LTT is partnered with like Hexos.

Oh, I totally agree, my value add just isn't there if you are experienced at hosting. The value add is to help people get started, and to keep them running at a modest level. Not everyone wants to experiment with Kubernetes at home or train LLMs. Some folks just want a password manager, a shared calendar, something to organize their tax documents, a pihole, and a Minecraft server for their kids.

I don't follow LTT, I was under the impression it was more hardware reviews for the experienced than tutorials to help people get started.

I've read a bit about Hexos, I'm thinking of some similar things, and it would make sense to work with them. I'm excited for their coming beta.

I recently upgraded my homelab/self-hosting server from an old Dell T410 with dual X5650's (2 - 6 core/12 thread CPU) and 24 GB ram to an old Dell Optiplex (7020 I think) with an i5-4590 (4 core/4 thread) and 32 GB ram. Its barely enough for a proxmox host with 5 VMs; but way faster than the old T410.

If you are offering some sort of self-hosting box, would it be bundled with some sort of software for someone to easily spin up whatever services they want?

Are you going to be able to make money at the $150 mark with all this hardware and configuration? If you are targeting people who are new to self-hosting, it will need to be a complete package (will need to have ram and storage installed).

What is the aim? People who want to get into it, but does not know how, or experts? Think half of the attraction of selfhosting is the diy aspect.

What extra would this bring if people can just buy the parts cheaper?

And for those who only want the out of the box experience why would this be better than, let's say a beestation? (Yeah price, I know, but you obviously would not have the same support level.)

What is the aim? People who want to get into it, but does not know how, or experts? Think half of the attraction of selfhosting is the diy aspect.

I don't disagree, and I would imagine what I'm offering would only be useful to people who are very early and don't yet know they enjoy the DIY aspect.

The aim, though, is this: I've enjoyed self-hosting. It's given me some powers that most people don't get to have who aren't also technical professionals. I'm also deeply frustrated by the environment created by the various major tech companies. If I can, I'd like to lower the barrier for people to get some of those powers without having to become experts and to make it more feasible for them to do what they want to do, rather than just what they are permitted to do.

What extra would this bring if people can just buy the parts cheaper?

Much shorter time going from "how can I control some of my own data" to "I'm running NextCloud, and its kinda like iCloud/Google Drive/Whatever Microsoft does and it's running right here under my control! Not everyone knows the path from buying parts online to having a working reverse-proxy and reasonable firewall rules. Also, standardization makes it much easier to support people, which is really what the business would be doing.

why would this be better than, let’s say a beestation?

I knew about Synology, but as a NAS product, which assumes a certain familiarity with backup schemes, etc. Kind of a prosumer-only thing. The Beestation is new to me, thanks for the tip. Quite possible what I'm proposing would have some overlap and compete with it, I'll have to read up on it.

Needs serious market research to not flop out of the box.

From reading the comments, I think you could be a lot leaner by selling the $100 setup fee, and telling people which "kit" is supported, and they buy that on their own.

That way you don't have to deal with any of the physical infrastructure of buying/selling/storing hardware, and people can do some customization.

However I do think you'd need to put some restrictions in place so that people don't buy cheap crap that doesn't work and expect you to set it up and support it. They have to buy the kit or other compatible hardware.

I'm not sure what services you'd support, but personally I'd be interested in something like a personal introduction and setup of

  • docker
  • proxmox
  • yunohost
  • backups / restore (practice restoring)
  • smb shared folder
  • pihole / pivpn (can you have wire guard and openvpn setup at the same time for different uses?

Maybe migration of

  • nextcloud

You could make different prices depending on what service they want, kind of like a bike stop.

I wouldn't want a perpetual subscription, but I could stomach something like $100 setup + $5/mo for limited support for a year.

Best thing for me is that community support also exists for all these things too, but it's hard to do it on your own sometimes.

The hypothesis is that $150 of equipment to avoid dozens of hours of software configuration

OK fair try, but you also need to sell me 20-25 TB of disk space on 5 spindles (plus a SSD for the bootdisk), 64 GB RAM (with a chance to go up to 128) and the CPU must have 16 threads or more.

What kind of workload do you run that makes you confident you need that much hardware? Do you think people just beginning could get buy on 4 cores and 8 GB RAM for a while? How long before you think most people need more?

This will be the spec for my next server. The current one is smaller, and several years old

I have several different requirements for my server, for example, my son does video editing and needs lots of storage. I want to experiment with more VM's and containers, therefore RAM and threads.

Do you think people just beginning could get buy on 4 cores and 8 GB RAM for a while?

For most people I think they just want to have some NAS and a reliable machine. But please grant them 16 GB, otherwise they would ask why their laptop has so much more than their server :-)

Would only be worth it if you created a system for easily deploying applications on an already set up subnet with routing preconfigured.

Like set up a single server kubernetes distribution like microk8s or minikube on the server with metalLB and ingress already preconfigured on the server and router. You could also give instructions on how to install a GUI like Lens and how to use it to deploy a few things. Probably using workstation applications would be better than a web UI like Portainer to keep the server lighter, but either might work.

I probably would. However it has become increasingly obvious that the flaws with solutions so far have been in the organisation. Not so much the particular hardware or software. If I'm going to buy something I'd like some hope that it'll be there in 5 or 10 or 20 years. So please if you go serious with this, look into worker-owned organizations because I'm tired of dodging profit-maximizing traps and pretend-non-profit landmines. If the people building and supporting the thing aren't the ones deciding what to do with the revenue and profit, you're the only one doing it and you're going to make mistakes that will hurt them and us. And then you become a landmine to dodge.

These are great points, and I fully agree. I'd be interested in knowing what kind of license or corporate structure or contract would give you confidence that the organization is worth investing in. I could put all the software out with a really strong Affero license so that you've got the source code, but I get the impression that you, like me, want more than that. Corporations like Mondragon are interesting to me, and I'm aware of a few different tech cooperative organizations. I'm not confident that a cooperative structure alone is enough. Yes, it helps avoid the company taking VC money, shooting for the moon, failing, and then selling everything that's not clearly legally radioactive. But it doesn't protect you against more insidious forces like the founders selling to private capital and adjusting the EULA every few months until they have the right to sell off your baby photos.

I've been batting around the idea of creating a compliment to the "end-user license agreement" - the "originating company license agreement". Something like a poison pill that forces the company to pay out to customers in the event of a data breach, sale of customer data, or other events that a would-be acquirer may think is worth it for them.

I'm just not sure yet what kinds of controls would be strong enough to convince people who have been burned by this sort of thing in the past. What do you think?

Purely on the product side, if I decide to buy it, I wouldn't buy it for myself. I'd buy it for friends and family who are not that tech literate. Either to make my life easier to give them self-hosted services, or ideally for themselves to be able to do so. I want this product to be a non-shitty, open source "Synology," from a firm I can trist to support it for a very long time. Doesn't have to have that form factor. And I'm totally fine with an ongoing subscription. I'd like to be able to say - hey friend, buy this from ACME Co-op and sign up for their support plan. Follow the wizard and you'll have Immich, Nextcloud, etc. A support plan might include external cloud HTTP proxy with authentication and SSL that makes access trivial. Similar to how Home Assistant's subscription (Nabu Casa) works. It could also include a cloud backup. Perhaps at a different subscription rate.

I don't know enough to say what the structure should be but this should not be possible:

But it doesn't protect you against more insidious forces like the founders selling to private capital

It implies that the founders have more voting power and ownership than the rest of the people in the org. In my mind, everyone should have an equal vote, which should prevent a sale on the whim of the founders or another minority group. If a sale is in the cards, a majority of the people in the org should have to approve for it to proceed. And this shouldn't be advisory but a legal barrier to pass.

If I were to start a firm today, I'd be looking into this because not only this is the kind of firm I'd like to work in, but I think so would quite a few people in software. And those aren't the dumb kids.

I can also say that as a customer, the few worker co-ops I've able to buy things from give me a much more trustworthy impression than the baseline. They just behave differently. Noticeably more ethically.

But it doesn’t protect you against more insidious forces like the founders selling to private capital

It implies that the founders have more voting power and ownership than the rest of the people in the org. In my mind, everyone should have an equal vote, which should prevent a sale on the whim of the founders or another minority group.

I'm not confident that simple democracy is enough. While I do expect that a one-worker-one-vote system would make it harder to sell out, it's still possible. I do think that a cooperative has many benefits. I just want to make it fatal to the business to go down certain dark paths: selling user data, seller user compute, selling user attention, etc.

I wish there were more examples of functional high-tech cooperatives I could learn lessons from.

If I were to start a firm today, I’d be looking into this because not only this is the kind of firm I’d like to work in, but I think so would quite a few people in software. And those aren’t the dumb kids.

I strongly agree with this sentiment.

The tech savvy will just buy a Raspberry Pi and install yunohost on it.

An interesting customer base might be small communal organisations. At our local scouts troop I had a discussion with a friend, who is also in IT. His idea (not fleshed out) was to provide small local organizations with a stack of already configured open source software to support the typical needs of such organizations (like a wordpress website, a nextcloud for file storage and common calender, limesurvey for surveys and event registration, mailman3 for mailing lists,...). Depending on the needs you could sell the initial setup process (your personal work in setting up and skill transfer) or ongoing support. Though such organizations normally don't have much money to give away. So probably its not really worth your time financially (though probably really appreciated in the community).

I'd probably buy it.

Do you already have an idea of what kinds of things you'd want to run on it?

Honestly, not really. I'm just kind of at a point in my life where it's something I'm thinking about looking into, and an out-of-the-box option like this would be really handy.

Why not just have a script that sets up all of the software one would want to host?

I'm not aware of a script alone that could do it, assuming you bought some hardware that came with Windows and wanted to run Linux. Is it possible these days to install Linux from within Windows? I've been flashing via disks for too long now.

I do know that some routers are scriptable, but not all routers are, so it may not be possible to do things like expose a port on the Internet with just scripts on whatever router they have.

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
AP WiFi Access Point
CGNAT Carrier-Grade NAT
DHCP Dynamic Host Configuration Protocol, automates assignment of IPs when connecting to a network
DNS Domain Name Service/System
ESXi VMWare virtual machine hypervisor
Git Popular version control system, primarily for code
HTTP Hypertext Transfer Protocol, the Web
HTTPS HTTP over SSL
LTS Long Term Support software version
LTT Linus Tech Tips YouTube channel
NAS Network-Attached Storage
NAT Network Address Translation
NFS Network File System, a Unix-based file-sharing protocol known for performance and efficiency
Plex Brand of media server package
RAID Redundant Array of Independent Disks for mass storage
SSD Solid State Drive mass storage
SSH Secure Shell for remote terminal access
SSL Secure Sockets Layer, for transparent encryption
VPN Virtual Private Network
VPS Virtual Private Server (opposed to shared hosting)

[Thread #961 for this sub, first seen 9th Sep 2024, 20:55] [FAQ] [Full list] [Contact] [Source code]