23
submitted 10 months ago by TCB13@lemmy.world to c/linux@lemmy.ml

cross-posted from: https://lemmy.world/post/11162262

Hey,

For all of you that are running proper setups and use nftables to protect your servers be aware that pvxe/nftables-geoip now has the ability to generate IP lists by country.

This can be used to, for instance, drop all traffic from specific countries or the opposite, drop everything except for your own country.

https://github.com/pvxe/nftables-geoip/commit/c137151ebc05f4562c56e6802761e0a93ed107a2

Here's how you can block / track traffic from certain countries:

Previously you had to load the entire geoip DB containing multiple GB and would end up using a LOT of RAM. Those guides aren't yet updated to use the country specific files but it's just about changing the include line to whatever you've generated with pvxe/nftables-geoip.

top 6 comments
sorted by: hot top controversial new old
[-] h3ndrik@feddit.de 5 points 10 months ago* (last edited 10 months ago)

Mmh. We should use georestriction with caution. Ultimatly the internet was made to connect people. And blocking people based on their origin is an attack on freedom and equality. There are valid use-cases, though. Just don't take it lightly.

[-] TCB13@lemmy.world 3 points 10 months ago* (last edited 10 months ago)

Not people, it's more about adding an extra protection step for some services like a system management-only VPN or SSH (if not behind the VPN) and it shouldn't be the only thing deployed. Fail2ban and others should be there as well.

After all it doesn't make sense to allow access to your VPN from China or maybe restrict it to your country if you're not traveling. There's another use case that is, you need to access some service from another system where you can't have a VPN and that system doesn't have a static IP, this increases the security a bit. It should be narrowed down to the ISP ranges level but that's not always possible.

[-] h3ndrik@feddit.de 4 points 10 months ago* (last edited 10 months ago)

Sure, I didn't list what I meant by 'valid use-cases'. If it's just your private VPN or SSH endpoint, it's like blocking your bank card from being used abroad. It might backfire once you travel and forgot about it. But I think it's a valid use case. Ultimately it's not the countries you want to block but address ranges which get used by attackers. But security is complex, it may not be feasible to allow-list just the carriers you use to connect, or find a suitable blocklist.

I'd be happy if georestriction wasn't a thing and I could stream Doctor Who from the BBC and some news sites wouldn't refuse service to me because I live in the EU and they don't want to implement the GDPR.

But I agree, this is just a tool. And it can be used for good things and bad things.

I don't complain if the same tool is used to route my requests to a datacenter nearby.

[-] moreeni@lemm.ee 1 points 10 months ago

What's the point of your comment? I doubt anyone here would just block countries on random from accessing their servers. The tool doesn't seem to promote such behaviour either.

[-] h3ndrik@feddit.de 3 points 10 months ago* (last edited 10 months ago)

Yeah, back when the war with Russia and the Ukraine started I've seen people post tutorials about how to block people in Russia from accessing their blog and self-hosted services. So just for political reasons. I don't think this makes the world a better place.

Same with countries where lots of attacks originate from. I think a better approach would be to block offending address ranges if possible, not directly block countries and all the people who live there.

I don't think something needs to directly promote bad behaviour. Sometimes just making it easy, is enough to warrant a disclaimer to think before applying it.

[-] N0x0n@lemmy.ml 3 points 10 months ago

Totally agree! This will isolate people from accessing useful information.

this post was submitted on 25 Jan 2024
23 points (96.0% liked)

Linux

48317 readers
676 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS