Just some Internet guy

He/him/them 🏳️‍🌈

  • 1 Post
  • 882 Comments
Joined 2 years ago
cake
Cake day: June 25th, 2023

help-circle
  • It’s not impossible, been running my own email server for about 10 years and I inbox pretty much everywhere. I even emailed my work address and straight to inbox. I do have the full SPF, DKIM and DMARC stuff set up, for which I get notices from several email provides of failed spoof attempts.

    Takes a while and effort to gain that reputation, but it’s doable. And OVH’s IPs don’t exactly have a great reputation either. Once you’re delisted from most spam databases / old spam reputation is expired, it’s not that bad.

    Although I do agree it’s possibly one of the hardest services to self host. The software to run email servers is ancient and weird, and takes a lot to set up right. If you get it wrong you relay spam and start over, it’s rough.



  • As a starting point. Are there any hardware recommendations for a toy home server?

    Whatever you already have. Old desktop, even old laptop (those come with a built-in battery backup!). Failing what, Raspberry Pis are pretty popular and cheap and low power consumption, which makes it great if you’re not sure how much you want to spend.

    Otherwise, ideally enough to run everything you need based on rough napkin math. Literally the only requirement is that the stuff you intend to run fits on it. For reference, my primary server which hosts my Lemmy instance (and emails and NextCloud and IRC and Matrix and Minecraft) is an old Xeon processor close to a third gen Intel i7 with 32GB of DDR3 memory, there’s 5 virtual machines on it (one of which is the Lemmy one), and it feels perfectly sufficient for my needs. I could make it work with half of that no problem. My home lab machine is my wife’s old Dell OptiPlex.

    Speaking of virtual machines, you can test the waters on your regular PC by just loading whatever OS you choose in a virtual machine (libvirt if you’re on Linux, VirtualBox or VMware otherwise). Then play with it. When it works makes a snapshot. Continue playing with it, break it, revert to the last good snapshot. A real home server will basically be the same but as a real machine that’s on 24/7. It’s also useful to test things out as a practice run before putting them on your real server machine. It’s also give you a rough idea how much resources it uses, and you can always grow your VM until it fits and then know how much you need for the real thing.

    Don’t worry too much about getting it right (except the backups, get those right, verify and test those regularly). You will get it wrong and eventually tear it down and rebuild it better what what you learn (or want to learn). Once you gain more experience it’ll start looking more and more like a real server setup, out of your own desire and needs.


  • Max-P@lemmy.max-p.metoSelfhosted@lemmy.worldStarting to self host
    link
    fedilink
    English
    arrow-up
    7
    arrow-down
    1
    ·
    5 days ago

    I feel like a lot of the answers in this thread are throwing a lot of things with a lot of moving parts: Unraid, Docker, YunoHost, all that stuff. Those all still require generally knowing what the hell a Docker container is, how to use them and such.

    I wouldn’t worry about any of that and start much simpler than that: just grab any old computer you want to be your home server or rent a VPS and start messing with it. Just pick something you think would be cool to run at home. Anything you run on your personal computer you wish was up 24/7? Start with that.

    Ultimately there’s no right or wrong way to do things. It’s all about that learning experience and building up that experience over time. You get good by trying out things, failing and learning. Don’t want to learn Linux? Put Windows on it. You’ll get a lot of flack for it maybe, but at the very least over time you’ll probably learn why people don’t use Windows for server stuff generally. Or maybe you’ll like it, that happens too.

    Just pick a project and see it to completion. Although if you start with NextCloud and expose it publicly, maybe wait to be more comfortable with the security aspect before you start putting copies of your taxes and personal documents on it just in case.

    What would you like to self host to get started?




  • It ran fairly well for me out of the box. I think it’s similar to trying to run Windows 98/2000/XP on modern VM software, it gets utterly confused and needs very specific hardware configuration to boot. Modern VMs run this good in big part because of paravirtualized hardware.

    I think what made Ubuntu so good is a combination of being based on Debian and also being there at the right time when Linux software was getting generally better. When I tried Mandrake it was too early for Wine to run any sort of game, codecs were lacking for video. When I tried Linux again with Ubuntu, there was now VirtualBox and computers fast enough to run that reasonably, graphics drivers were more usable. Compiz was popping off to show off that Xorg could now do compositing like macOS and Vista.

    Mandrake was good but limited by what Linux could do back then. Enjoyed it quite a bit but 9 year old me ran back to XP for the games. When I tried Ubuntu I was a bit older and more interested in programming and WoW ran great in Wine, so I managed to stick and have been on Linux since.




  • Because phones are a mess of out of tree patches specific to that phone model with zero hope of being upstreamed into the Linux kernel without a cleaner rewrite because it’s not good, it’s made to work and nothing more. They do stuff like just copy pasting the drivers into the project for the next chip, make some changes, and now you have several versions of the same driver for a whole bunch of slighly different chips. The community can’t keep up with that or make it generic enough.

    It’s improved but companies like Qualcomm also used to basically drop the code to the manufacturers when the chip launches and then move on with little maintenance for the code and stop maintaining the code once the chip is not produced anymore. Manufacturers don’t have the expertise to maintain that forever nor the will, so you end up with a kernel that keeps aging and isn’t keeping up with Android and the community hasn’t been successful in integrating it all either.

    Google’s been pushing hard for this to improve but they’re the only ones to even care. Samsung and others would much rather sell you a new phone.

    There’s also the problem that phones don’t really have a BIOS, the kernel is expected to just know where the devices are via the device tree. So each phone needs a specially built kernel for it too.

    Projects like LineageOS often manage to push those phones a couple versions longer but eventually interest dies as well because of kernel pains.






  • The website requests an image or whatever from 27748626267848298474.example.com, where the number is unique for the visitor. To load the content the browser has to resolve the DNS for it, and the randomness ensures it won’t be cached anywhere as it’s just for you. So it queries its DNS server which queries your DNS provider which queries the website’s DNS server. From there the website’s DNS server can see where the request came from and the website can tell you where it came from and who it’s associated with if known.

    Yes it absolutely can be used for fingerprinting. Everything can be used for fingerprinting, and we refuse to fix it because “but who thinks of the ad companies???”.




  • It’s going to depend on how the access is set up. It could be set up such that the only way into that network is via that browser thing.

    You can always connect to yourself from the Windows machine and tunnel SSH over that, but it’s likely you’ll hit a firewall or possibly even a TLS MitM box.

    Virtual desktops like that are usually used for security, it would be way cheaper and easier to just VPN your workstation in. Everything about this feels like a regulated or certified secure environment like payment processing/bank/government stuff.


  • but I’m curious if it’s hitting the server, then going the router, only to be routed back to the same machine again. 10.0.0.3 is the same machine as 192.168.1.14

    No, when you talk to yourself you talk to yourself it doesn’t go out over the network. But you can always check using utilities like tracepath, traceroute and mtr. It’ll show you the exact path taken.

    Technically you could make the 172.18.0.0/16 subnet accessible directly to the VPS over WireGuard and skip the double DNAT on the game server’s side but that’s about it. The extra DNAT really won’t matter at that scale though.

    It’s possible to do without any connection tracking or NAT, but at the expense of significantly more complicated routing for the containers. I would do that on a busy 10Gbit router or if somehow I really need to public IP of the connecting client to not get mangled. The biggest downside of your setup is, the game server will see every player as coming from 192.168.1.14 or 172.18.0.1. With the subnet routed over WireGuard it would appear to come from VPN IP of the VPS (guessing 10.0.0.2). It’s possible to get the real IP forwarded but then the routing needs to be adjusted so that it doesn’t go Client -> VPS -> VPN -> Game Server -> Home router -> Client.