Commit Graph

59 Commits

Author SHA1 Message Date
Thomas Lynch
1a1faf9e03 Merge branch 'argon2' into kikeflare 2022-09-25 04:38:02 +00:00
Thomas Lynch
84fe5037b9 Make the staggered start work properly 2022-09-25 14:34:21 +10:00
Thomas Lynch
4806dea4fc Merge branch 'argon2' into kikeflare 2022-09-24 14:57:05 +00:00
Thomas Lynch
fe972b0868 Remove unused times variable 2022-09-24 23:11:05 +10:00
Thomas Lynch
a50b35b65d argon2 implementation
- memory and time params customisable as well as "difficulty", default 1 iteration, 6000KB, 3 difficulty.
- updated the noscript bash method to work with argon2
- works in webworkers or main thread, capped at 8 threads (doesn't seem to crash firefox anymore -- we could go higher)
2022-09-24 22:56:55 +10:00
Thomas Lynch
ea3f8bf291 Small docker improvement for better testing/development (no more 503) 2022-09-23 00:41:33 +10:00
Thomas Lynch
d019440bc0 Move POW proof checking to POST and sign a cookie there, kinda like captcha flow, so we can do a more intensive one without it happening on every request. We just check the hmac now.
Still TODO actually converting it to argon, but should be straightforward from this point.
Another advantage of making POW check use POST is a better noscript experience. We now provide a box and "submit" button, so they don't have to mess with setting a cookie.
2022-09-23 00:26:20 +10:00
Thomas Lynch
7eaa1d7ac0 Merge branch 'master' into kikeflare 2022-09-21 13:37:56 +00:00
Thomas Lynch
521f9742c1 revert back to 2 thread max again because turns out firefox didnt get better, just tor limits to 1 thread anyway 2022-09-21 21:32:33 +10:00
Thomas Lynch
e1c786a1d7 Add example snippet of how to acl/whitelist stats sockte 2022-09-18 19:01:38 +10:00
Thomas Lynch
ff779c7cce Merge branch 'captcha-auto-submit' into kikeflare 2022-09-17 15:47:29 +00:00
Thomas Lynch
0af1a740ab Make captcha submission automatic and not require clicking a "submit" form button 2022-09-18 01:41:02 +10:00
Thomas Lynch
3f40192d55 Update README with new env vars
Remove dataplaneapi junk
2022-09-17 19:22:27 +10:00
Thomas Lynch
f6d234ff7d Merge branch 'master' into kikeflare 2022-09-16 18:06:55 +00:00
Thomas Lynch
571d01db27 Merge branch 'master' into kikeflare 2022-09-16 18:04:52 +00:00
Thomas Lynch
207c3af05b Patch some bugs in the updated challenge.js especially related to the fallback mode 2022-09-17 04:04:27 +10:00
Thomas Lynch
598790cb4f - Fix some docker-compose issues close #14
- Move to new scheme with some hashing, sigs, and a random user key. close #13
- Change to sha256 rather than sha1 (temporary, but i guess its slightly more secure which is nice for now) ref #10
- Change POW output checked value
- Add lib for randombytes, udpate lua sha lib
- Remove outdated difficulty checks in frontend (was hardcoded 0 anyway) and since algo change is coming soon, there is no need to keep it
2022-09-17 02:45:27 +10:00
Thomas Lynch
0d991770cf google recaptcha v2 support 2022-09-12 23:37:21 +10:00
Thomas Lynch
c9e007639e - Make the "checking your browser for robots" look more like cloudflare
- Reduce the default concurrency of the frontend script to 2 threads because any higher seems to crash firefox (and its quick enough even with 2 threads anyway)
- Remove the footerlogo from challenge and maintenance page, and update the link
2022-09-10 08:23:09 +10:00
Thomas Lynch
fa4c437725 New based domain 2022-09-03 14:58:52 +00:00
Thomas Lynch
d2c9e1a15f reduce max concurrency to 2 because firefox is such a complete pile of dogshit that cant cope with multithreaded javascript 2022-09-02 14:31:40 +00:00
Thomas Lynch
c6227ab2cf Merge branch 'master' into kikeflare 2022-04-26 07:32:08 +00:00
Thomas Lynch
77518cee69 maintenance mode 2022-04-26 07:30:34 +00:00
Thomas Lynch
e139b04f4b kikeflare branch customisations and error pages 2022-04-25 14:11:57 +10:00
Thomas Lynch
1857e79137 Merge branch 'master' into kikeflare 2022-04-25 01:10:51 +10:00
Thomas Lynch
76e9cad8a8 add map for whitelisting ip/subnets. also cleanup the config a bit. 2022-04-25 01:07:57 +10:00
Thomas Lynch
d23ee6c897 kikeflare customisation branch 2022-03-15 22:00:02 +11:00
Thomas Lynch
c3a3648469 readme update,
remove ssl from haproxy since its just the docker example
2022-01-22 13:00:31 +11:00
Thomas Lynch
e406ac46ca Merge branch 'lua-httpclient-test' 2022-01-19 18:09:30 +11:00
Thomas Lynch
d38713b4cb haproxy snapshot fixes bug, and use url biuld query to make body for hcaptcha post 2022-01-19 18:01:08 +11:00
Thomas Lynch
52da926ed2 set ssl verify none on template servers
make trace for debug plain for no xss and add ms to timestamp
2022-01-02 01:31:21 +11:00
Thomas Lynch
2fbba3c8f8 haproxy 2.5 docker 2021-12-30 17:42:24 +11:00
Thomas Lynch
7e2e8d6de3 remove debug template page 2021-12-30 01:41:48 +11:00
Thomas Lynch
83cecb6a18 fhdr for user-agent 2021-12-30 01:25:25 +11:00
Thomas Lynch
7de768d731 /cdn-cgi/trace test 2021-12-30 00:13:14 +11:00
Thomas Lynch
e9111471b7 add simple cache and x-cache info header for example/testing 2021-12-28 01:25:15 +11:00
Thomas Lynch
06b28c8650 add dataplaneapi for --save-map-files, and bugfix some small things. custom domain/backendip working pretty well now 2021-12-27 20:42:27 +11:00
Thomas Lynch
9557c06aa1 update, dynamic backends based on hostname ,can be updated live control panel/management socket 2021-12-26 23:56:15 +11:00
Thomas Lynch
6f52ee8977 improved, now handles domain OR path protection with 0, 1, 2 setting for none, pow, captcha
global override does POW only (for now --or can be easily changed for captcha+pow) until i make that customisable level too
no more confusing inverted map
use maps correctly as k:v
cleaned up some stuff
added comments
2021-12-04 21:42:27 +11:00
Thomas Lynch
bc55ce5a93 reduce concurrency of client check again to max 4 thread 2021-12-01 13:54:21 +11:00
Thomas Lynch
54be416a39 add crypto.subtle check for lokinet and idiots using non-tor browser for .onion 2021-11-30 02:27:19 +11:00
Thomas Lynch
876d0835bc change script threads to hardwareconcurrency/2 instead of -1, because it can still cause browsers to be sluggish or crash moreso on powerful machines 2021-11-27 01:02:37 +11:00
Thomas Lynch
e651d25dbb remove unnecessary layer of tcp mode for stripping proxy, works just fine without it 2021-11-26 14:43:43 +11:00
Thomas Lynch
bec6bddf40 close #4 2021-11-26 00:27:47 +11:00
Thomas Lynch
48382434c4 change haproxy pathing from /usr/share/etc to /etc 2021-11-25 18:16:07 +11:00
Thomas Lynch
5a4a02beba switch 2 maps, one for ddos enabled, the other to disable captcha leaving only POW
minor change script messages
todo: update CLI to allow changing
2021-11-24 19:37:56 +11:00
Thomas Lynch
9f26e53798 combine POW and captcha into one 2021-11-24 05:23:33 +11:00
Thomas Lynch
6400d98975 make the useragent header fetch properly
add a salt to the generate_secret function -- that was kinda important right? lol
just pass through to `end` if not POST or GET
make it not use calls to hostname and dig in lua scripts, use haproxy backend resolving instead
improve the template a lot and make it theme-matched to my site and similar to ngx_http_js_challenge robot page
fix various bugs
2021-11-24 00:34:41 +11:00
Eugene Prodan
26ae929644 refactor: get rid of luarocks completely, better exceptions handling 2021-06-14 01:21:38 +03:00
Eugene Prodan
ff669a9e64 refactor: organize lua dependencies 2021-06-12 00:55:15 +03:00