Skip Navigation

User banner
Posts
34
Comments
2,750
Joined
2 yr. ago

  • Rspamd - basic spam filter

    Rspamd totally not a basic spam filter.

  • (It's painful, please help 🥲)

    Yes, cause you're using way too much Docker. lol

  • Lets see if this finally kills the AI hype. Big tech is pushing for AI because it is the ultimate spyware, nothing more.

  • That explanation is misleading because:

    1. OpenWrt does firewalling and routing very well;
    2. If you’ve a small / normal network and OpenWrt will provide you with a much cleaner open-source experience and also allow for all the customization you would like;
    3. There are routers specifically made to run OpenWrt, so it isn't only a replacement firmware.
  • They forgot the part where margins should be included on things... once again.

  • This has nothing to do with people... we're talking about leftist govts that want to track what people own and what money is moved around in order to tax people more.

  • That looks like a DDoS, for instance that doesn't ever happen on my ISP as they have some kind of DDoS protection running akin to what we would see on a decent cloud provider. Not sure of what tech they're using, but there's for certainly some kind of rate limiting there.

    1. Isolate the server from your main network as much as possible. If possible have then on a different public IP either using a VLAN or better yet with an entire physical network just for that - avoids VLAN hopping attacks and DDoS attacks to the server that will also take your internet down;

    In my case I can simply have a bridged setup where my Internet router get's one public IP and the exposed services get another / different public IP. If there's ever a DDoS, the server might be hammered with request and go down but unless they exhaust my full bandwidth my home network won't be affected.

    Another advantage of having a bridged setup with multiple IPs is that when there's a DDoS/bruteforce then your router won't have to process all the requests coming in, they'll get dispatched directly to your server without wasting your router's CPU.

    As we can see this thing about exposing IPs depends on very specific implementation detail of your ISP or your setup so... it may or may not be dangerous.

  • Oh well, If you think you're good with Docker go ahead use it, it does work but has its own dark side...

    cause its like a micro Linux you can reliably bring up and take down on demand

    If that's what you're looking for maybe a look Incus/LXD/LXC or systemd-nspawn will be interesting for you.

    I hope the rest can help you have a more secure setup. :)

    Another thing that you can consider is: instead of exposing your services directly to the internet use a VPS a tunnel / reverse proxy for your local services. This way only the VPS IP will be exposed to the public (and will be a static and stable IP) and nobody can access the services directly.

    client ---> VPS ---> local server

    The TL;DR is installing a Wireguard "server" on the VPS and then have your local server connect to it. Then set something like nginx on the VPS to accept traffic on port 80/443 and forward to whatever you've running on the home server through the tunnel.

    I personally don't think there's much risk with exposing your home IP as part of your self hosting but some people do. It also depends on what protection your ISP may offer and how likely do you think a DDoS attack is. If you ISP provides you with a dynamic IP it may not even matter as a simple router reboot should give you a new IP.

  • It depends on what you're self-hosting and If you want / need it exposed to the Internet or not. When it comes to software the hype is currently setup a minimal Linux box (old computer, NAS, Raspberry Pi) and then install everything using Docker containers. I don't like this Docker trend because it 1) leads you towards a dependence on property repositories and 2) robs you from the experience of learning Linux (more here) but I it does lower the bar to newcomers and let's you setup something really fast. In my opinion you should be very skeptical about everything that is "sold to the masses", just go with a simple Debian system (command line only) SSH into it and install what you really need, take your time to learn Linux and whatnot.

    Strictly speaking about security: if we're talking about LAN only things are easy and you don't have much to worry about as everything will be inside your network thus protected by your router's NAT/Firewall.

    For internet facing services your basic requirements are:

    • Some kind of domain / subdomain payed or free;
    • Preferably Home ISP that has provides public IP addresses - no CGNAT BS;
    • Ideally a static IP at home, but you can do just fine with a dynamic DNS service such as https://freedns.afraid.org/.

    Quick setup guide and checklist:

    1. Create your subdomain for the dynamic DNS service https://freedns.afraid.org/ and install the daemon on the server - will update your domain with your dynamic IP when it changes;
    2. List what ports you need remote access to;
    3. Isolate the server from your main network as much as possible. If possible have then on a different public IP either using a VLAN or better yet with an entire physical network just for that - avoids VLAN hopping attacks and DDoS attacks to the server that will also take your internet down;
    4. If you're using VLANs then configure your switch properly. Decent switches allows you to restrict the WebUI to a certain VLAN / physical port - this will make sure if your server is hacked they won't be able to access the Switch's UI and reconfigure their own port to access the entire network. Note that cheap TP-Link switches usually don't have a way to specify this;
    5. Configure your ISP router to assign a static local IP to the server and port forward what's supposed to be exposed to the internet to the server;
    6. Only expose required services (nginx, game server, program x) to the Internet us. Everything else such as SSH, configuration interfaces and whatnot can be moved to another private network and/or a WireGuard VPN you can connect to when you want to manage the server;
    7. Use custom ports with 5 digits for everything - something like 23901 (up to 65535) to make your service(s) harder to find;
    8. Disable IPv6? Might be easier than dealing with a dual stack firewall and/or other complexities;
    9. Use nftables / iptables / another firewall and set it to drop everything but those ports you need for services and management VPN access to work - 10 minute guide;
    10. Configure nftables to only allow traffic coming from public IP addresses (IPs outside your home network IP / VPN range) to the Wireguard or required services port - this will protect your server if by some mistake the router starts forwarding more traffic from the internet to the server than it should;
    11. Configure nftables to restrict what countries are allowed to access your server. Most likely you only need to allow incoming connections from your country and more details here.

    Realistically speaking if you're doing this just for a few friends why not require them to access the server through WireGuard VPN? This will reduce the risk a LOT and won't probably impact the performance. Here a decent setup guide and you might use this GUI to add/remove clients easily.

    Don't be afraid to expose the Wireguard port because if someone tried to connect and they don't authenticate with the right key the server will silently drop the packets.

    Now if your ISP doesn't provide you with a public IP / port forwarding abilities you may want to read this in order to find why you should avoid Cloudflare tunnels and how to setup and alternative / more private solution.

  • Note: iptables is "deprecated" you should be using nftables. Even Debian is on nftables nowadays.

  • “After years of pushing their proprietary and closed solutions to privacy minded people Proton decided that it was in their best interest to further bury said users into their service as a form of vendor lock-in. To achieve this they made yet another non-standard implementation of something that already existed, this time a crypto wallet." :)

  • Welcome to the communist Europe! This is what the friendly left got us.

  • Sublime Text is much faster to use a quick editor and IntelliJ is much better as a full featured IDE and totally worth the cost. IntelliJ saves me on a ton of time on merge conflicts, it much faster in large projects, code analysis to find unused stuff and issues is better... VSCode can handle merges but it requires extensions and isn't as good / you'll have do to more manual work.

  • It's called: vendor lock-in.

  • Is there a use case for CrowdStrike on any platform? No, there isn't. Anything that messes with the kernel at that level should be considered a security threat on the basis of potential service disruption / threat to business continuity. Do you really want to run a closed source piece of malware as a kernel module?

    They completely fuck over their customers in the business continuity aspect, they become the problem and I bet that most companies would never suffer any catastrophic failure this bad if they didn’t run their software at all. No hacker would be able to take down so many systems so fast and so hard.

  • Here’s the thing, malware protection is supposed to deliver protection and one important aspect of that is making sure there’s business continuity… what they did was to completely fuck over their customers in that aspect, they become the problem and I bet that most companies running their solution would never suffer any catastrophic failure this bad if they didn’t run their software at all. No hacker would be able to take down so many systems so fast and so hard.

  • Yeah, those same people totally paranoid about govt tracker are now carrying smartphones around no problem, how ironic isn’t it? :)