listmonk icon indicating copy to clipboard operation
listmonk copied to clipboard

Self-hosted Captcha Support via mCaptcha

Open 0xdade opened this issue 1 year ago • 4 comments

Is your feature request related to a problem? Please describe. One of the primary reasons I want to use listmonk is because I am self hosting as much as I can and making as much an effort as I can to reduce tracking of users who visit my sites. I would love to use a captcha to deter abuse of my subscribe forms, but I don't want to use a hosted solution like hcaptcha.

Describe the solution you'd like mCaptcha is a self hosted captcha solution that is API-compatible with hCaptcha (at least according to the homepage). I believe that to enable support for mCaptcha servers, the only change needed for listmonk would be an additional configuration in the captcha settings, to optionally set a URL. This can default to hcaptcha if not set, but optionally be overridden to use a self-hosted mcaptcha instead.

0xdade avatar Jan 06 '25 23:01 0xdade

Indeed. The no-alternative dependency on hCaptcha has been bugging me.

There is also https://altcha.org, which I've tested. It doesn't come with a backend. The backend verification is a lib (available in many languages) that one includes in their backend for verification.

Will have to think of something universal and pluggable, perhaps defining a custom webhook-style interface.

knadh avatar Jan 13 '25 07:01 knadh

Oh interesting, in that case Listmonk could be the captcha backend for itself automatically. I hadn’t seen that option before, I just figured mCaptcha was close enough to be a drop in for the least amount of immediate effort.

Unfortunately I’m out of my depth in both go and vue, otherwise I’d have a PR open already 😅

0xdade avatar Jan 16 '25 03:01 0xdade

@knadh

First off, awesome project. Love it. 😍

Additionally, I double the Altcha movement. I did find a simple written self-hostable Docker on the internet here:

https://github.com/Umami-Creative-GmbH/altcha-docker

However, I find their Go library to be a solid alternative that can easily be integrated into listmonk.

https://github.com/altcha-org/altcha-lib-go

I'd be happy to contribute if you're ok. 🙌

Cheers 🍻

meysam81 avatar Feb 14 '25 15:02 meysam81

Found out this other promising alternative https://github.com/tiagorangel1/cap :)

ImaCrea avatar May 31 '25 22:05 ImaCrea

@knadh any chance altcha support is coming soon?

c-seeger avatar Jul 16 '25 08:07 c-seeger

@c-seeger, yep. It's planned for the next release. I'll create a new thread with the plan for the next release soon.

knadh avatar Jul 16 '25 13:07 knadh

I couldn't find any comparison of mcaptcha vs hcaptcha, Eg: how well each works, any problems, etc.

You guys don't have any concerns about this?

MaximilianKohler avatar Jul 19 '25 00:07 MaximilianKohler

ALTCHA is now integrated.

Image Image

knadh avatar Aug 16 '25 11:08 knadh

@knadh Fantastic, do you have an ETA for the next release version? Happy to wait for however long that'll be, just wasn't sure what your release schedule looked like!

0xdade avatar Aug 16 '25 23:08 0xdade