this post was submitted on 04 May 2025
110 points (96.6% liked)

Selfhosted

46671 readers
270 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
 

Hey all, i've decided I should probably setup something else to help block nefarious IP addresses. I've been looking into CrowdSec and Fail2Ban but i'm not really sure the best one to use.

My setup is OpnSense -> Nginx Proxy Manager -> Servers. I think I need to setup CrowdSec/Fail2Ban on the Nginx Proxy Manager to filter the access logs, then ideally it would setup the blocks on OpnSense - but i'm not sure that can be done?

Any experience in a setup like this? I've found a few guides but some of them seem fairly outdated.

Edit: thanks everybody for the great info. General consensus seems to be with crowdsec so I'll go down that path and see how it goes.

Edit 2: So after having it up and running for the better part of a day, i'm going to remove it again. For some reason there was a performance impact loading websites, probably because it was waiting for a response from the Crowdsec hub? Either way, after stopping it from running everything is back to normal again. So I might revisit how I do it and probably try Fail2Ban now instead. Thanks everybody

you are viewing a single comment's thread
view the rest of the comments
[–] SirMaple__@lemmy.ca 8 points 1 day ago* (last edited 1 day ago) (1 children)

Crowdsec with a central LAPI server. You should install it on the servers themselves to monitor the application logs directly. Then every bouncer(firewall, router, edge device) connected to the LAPI will all block the same IPs. I got sick of repeat offenders and upped the ban time to 1 year in hours.

[–] Matty_r@programming.dev 2 points 1 day ago (1 children)

Awesome that makes a lot of sense, cheers. So I'll install the Crowdsec agent on the Nginx Proxy Manager, and potentially also on the servers.

[–] SirMaple__@lemmy.ca 2 points 1 day ago* (last edited 1 day ago) (1 children)

No problem. It's a great piece of software. I have it monitoring logs for nextcloud, vaultwarden, mailcow(postfix & dovecot), basic nginx proxies (just to be safe and for rate limiting). I have 4 OPNsense and 1 Debian bouncers.

I had an issue with so a note about setting up the bouncer on OPNsense. If you have the LAPI on a different machine you can currently only connect OPNsense to it using the command line. The LAPI options in the web interface are for defining the interface to bind to and run the LAPI on OPNsense itself. Which isn't an issue, I just wanted it on a VM so it's easier to keep online instead of it going down if the OPNsense it's on fails. Plus I like to keep SSH disabled on my OPNsense devices and spend a bit of time using cscli on the LAPI VM from time to time.

[–] Matty_r@programming.dev 1 points 23 hours ago

Cheers, I've since discovered that's is "bouncers" that I want on the endpoints I.e on my Nginx Proxy Manager. I'll just use the LAPI on the Opnsense box for now I think.