this post was submitted on 25 Oct 2023
33 points (76.2% liked)

Selfhosted

40458 readers
362 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

I'd like to have my own server at home sorta like a home AWS.

How to set up one and make it available to anyone over the Internet? What tech specs should I buy (RAM, CPU, # of cores, operating system, etc.)?

How much does it cost to keep one running all the time?

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 4 points 1 year ago (4 children)
[–] [email protected] 35 points 1 year ago (1 children)

Generally speaking, not a well-advised idea, especially for someone who has to ask how to do it (truly not being snarky).

I was a cisco instructor in the 90's, (so teaching networking and security were my bread and butter for a while) and I wouldn't think of doing this - except... If the only access was via a mesh network client such as Tails/Tailscale, the server was dedicated to just this purpose, it was isolated on its own LAN segment/DMZ with no routing path to my home network segment, the server was not Windows, but Linux, and I had a robust backup plan, access control plan, and access monitoring with alerts.

There's just too much risk exposing a port to the world.

[–] [email protected] 2 points 1 year ago (1 children)

If you’re only accessing the server remotely via Tailscale and no ports are open, is it necessary to have the server on its own isolated VLAN? I like accessing my server locally most of the time and via Tailscale when I’m out and about.

[–] [email protected] 1 points 1 year ago

I'd still do this.

Security isn't one thing, it's layers. So if any single layer fails another still prevents access.

With just Tails, if a bad actor gets access via a compromised user machine, they could potentially get access to the rest of your network. If the server is on an isolated Lan, there's nothing for them to access - it's a rock-solid guarantee that the most they can do is damage to that server and network segment.

We (us IT folks) see users get compromised almost daily, largely through social engineering. It's a huge risk.

And it's trivial to have something on its own Lan segment.

[–] [email protected] 20 points 1 year ago

If you let random people install stuff on your server all you get is assholes install monero miners to gain 1 cent from you wasting 30 dollars in electricity

[–] [email protected] 13 points 1 year ago* (last edited 1 year ago)

You can host most basic web apps off a raspberry pi. You just need to:

  1. connect your device to the internet
  2. start your server application
  3. set up port forwarding on your router to forward the port your application is being hosted on
  4. get a domain name
  5. configure ddns
  6. Maybe get some SSL certs

.

Edit: BearOfaTime brings up a great point. I'm telling you how to do what you asked but you probably shouldn't. If you do, try to airgap the server from your personal network as best as you can

Edit edit: You know people will let you use their servers for small projects for free right? Check out https://ctrl-c.club/#what or hang out in the LowEndTalk forums and provide quality input and enter some of the giveaways for server space

Although the drawback to ctrl-c club is that you're not going to get full control of how you install libraries and applications

[–] ArbiterXero 7 points 1 year ago

That’s a REALLY broad definition.

A web app that does what?

Are you running your own Netflix-ish server? Transaction processing? Cloud storage? Ai chatbot?

Each one has very different requirements, and this is just the first four that came to mind .

AWS has hundreds of buildings filled with millions of servers, so you aren’t going to compete with that, even on a small scale.

But could you run your own little Facebook type thing? For a handful of users, sure. Could you handle the number of users that Facebook actually has in a day? You are looking at buildings filled with Computers, not a single machine’s spec