Solar Bear

  • 0 Posts
  • 43 Comments
Joined 1 year ago
cake
Cake day: June 27th, 2023

help-circle
  • Something you might want to look into is using mTLS, or client certificate authentication, on any external facing services that aren’t intended for anybody but yourself or close friends/family. Basically, it means nobody can even connect to your server without having a certificate that was pre-generated by you. On the server end, you just create the certificate, and on the client end, you install it to the device and select it when asked.

    The viability of this depends on what applications you use, as support for it must be implemented by its developers. For anything only accessed via web browser, it’s perfect. All web browsers (except Firefox on mobile…) can handle mTLS certs. Lots of Android apps also support it. I use it for Nextcloud on Android (so Files, Tasks, Notes, Photos, RSS, and DAVx5 apps all work) and support works across the board there. It also works for Home Assistant and Gotify apps. It looks like Immich does indeed support it too. In my configuration, I only require it on external connections by having 443 on the router be forwarded to 444 on the server, so I can apply different settings easily without having to do any filtering.

    As far as security and privacy goes, mTLS is virtually impenetrable so long as you protect the certificate and configure the proxy correctly, and similar in concept to using Wireguard. Nearly everything I publicly expose is protected via mTLS, with very rare exceptions like Navidrome due to lack of support in subsonic clients, and a couple other things that I actually want to be universally reachable.


  • Whatever you get for your NAS, make sure it’s CMR and not SMR. SMR drives do not perform well in NAS arrays.

    I just want to follow this up and stress how important it is. This isn’t “oh, it kinda sucks but you can tolerate it” territory. It’s actually unusable after a certain point. I inherited a Synology NAS at my current job which is used for backup storage, and my job was to figure out why it wasn’t working anymore. After investigation, I found out the guy before me populated it with cheapo SMR drives, and after a certain point they just become literally unusable due to the ripple effect of rewrites inherent to shingled drives. I tried to format the array of five 6TB drives and start fresh, and it told me it would take 30 days to run whatever “optimization” process it performs after a format. After leaving it running for several days, I realized it wasn’t joking. During this period, I was getting around 1MB/s throughput to the system.

    Do not buy SMR drives for any parity RAID usage, ever. It is fundamentally incompatible with how parity RAID (RAID5/6, ZFS RAID-Z, etc) writes across multiple disks. SMR should only be used for write-once situations, and ideally only for cold storage.



  • Hard disagree. Everything you learn on Arch is transferable because Arch is vanilla almost to a fault. The deep understandings of components I learned from Arch have helped me more times than I can count. It’s only non-transferable if you view each command as an arcane spell to be cast in that specific situation. I’ve fixed so many issues over the years using this knowledge, and it’s literally what landed me my current job and promotions.

    Arch is why I know how encryption and TPM works at a deeper level, which helped me find and fix the issue a Windows Dell PC was having that kept tripping into Bitlocker recovery. Knowledge of Grub and kernel parameters that I learned from Arch’s install process is why I was able to effortlessly break into a vendor’s DNS server whose root password was lost by the previous sysadmin before me when everybody else was panicking. Hell, it even helps in installing other distros, because advanced disk partitioning is a hot mess on a lot of distro GUI installers, so intimate knowledge of what I actually need helps me work around their failings. Plus all the countless other times that knowledge has helped me solve little problems instantly, because I knew how it worked from implementing it manually. When my coworkers falter because the GUI fails them and they know nothing else, I simply fix it with a command.

    If you use Arch and actually make the effort to learn, not just copy and paste commands from the wiki, you will objectively learn a lot about how Linux works. If you seek a career in Linux, there’s nothing I can recommend more than transitioning to using Arch (not Garuda, not Manjaro, Arch) full-time on your daily driver computer.

    Anyways, after about a decade I’ve recently switched to NixOS. Now there’s a distro where the skills you learn can’t be transferred out, but the knowledge I gained from Arch absolutely transferred in and gave me a head start.



  • Your response is “why are you doing X, you should do Y”

    Because they’re right, you shouldn’t do X. I know that’s not a satisfying answer for most people to hear, but it’s often one people need to hear.

    If the process must run as root, then giving a user direct and unauthenticated control over it is a security vulnerability. You’ve created a quick workaround for your issue, and to be clear it is unlikely to realistically cause you problems individually, but on a larger scale that becomes a massive issue. A better solution is required rather than recommend everybody create a hole in their security like yours in order to do this thing.

    If this is something that unprivileged users reasonably want to control, then this control should be possible unprivileged, or at least with limited privilege, not by simply granting permanent total control of a root service.

    This is ultimately an upstream issue more than anything else.






  • If you’re waiting for Jellyfin to run some kind of relay like Plex, you’ll be waiting a long time. That takes a lot of money to upkeep, and the demand for people who self-host FOSS and then want to depend on an external service is very minimal, certainly not enough to sustain such a service. I’d recommend just spending a weekend afternoon learning how to set up Nginx Proxy Manager and being done with it, the GUI makes it very easy.



  • Solar Bear@slrpnk.nettoSelfhosted@lemmy.worldTv box recommendations?
    link
    fedilink
    English
    arrow-up
    6
    ·
    edit-2
    11 months ago

    I will have an OG Xiaomi Mi Box and it’s absurd how over the years it went from a purely functional media device to a complete shit show covered ads. Genuinely disgusted me every time I turned the TV on. I couldn’t stand it anymore, I had to tear out the launcher with ADB and replace it with FLauncher.

    I wish Kodi wasn’t such a pain in the ass to deal with, especially for YouTube. We really need a new FOSS media center application. Until then, at least FLauncher works for now as a simple app switcher for a handful of Android apps.





  • It’s not an opinion that proprietary for-profit software will betray you, it is an inevitability. It has happened every single time. If it was FOSS, we could salvage it. It’s proprietary, so we can’t. When it fails it must simply be abandoned. I just hope you learn the right lesson when this happens.


  • Solar Bear@slrpnk.nettolinuxmemes@lemmy.worldEveryone loves snaps
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    1
    ·
    1 year ago

    I’d argue it’s pretty stupid to use FOSS but then depend on a proprietary server that only one for-profit company is allowed to run to deliver all that software, trusting them to just never do wrong or leave you high and dry. I’d also argue it fits the analogy perfectly, because the analogy was about saying “I haven’t had a problem yet” in response to being shown the potential problems of the action.



  • I very recently started using borgbackup. I’m extremely impressed with how much it compressed the data before sending, and how well it detects changes and only sends the difference. I have not yet attempted a proper restore from backup, though.

    I have much less data I’m currently securing (~50gb) and much more uplink bandwidth (~115mbps) so my situation isn’t nearly as dire. But it was able to compress that down to less than 25gb before sending, and after the initial upload, the next week’s backup only required about 100mb of data transfer.

    If you can find a way to seed your data from a faster location, reduce the amount you need to back up, and/or break it up into multiple smaller transfers, this might be an effective solution for you.

    Borgbase’s highest plan has an upper limit of 8TB, which you would be brushing right up against, but Hetzner storage boxes go up to 20TB and officially support Borg.

    Outside of that, if you don’t expect the data to change often, you might be looking for some sort of cheap S3 storage from AWS or other similar large datacenter company. But you’ll still need to find a way to actually get them the data safely, and I’m not sure if they support differential uploads like Borg does.