Here's the code: https://git.mills.io/yarnsocial/validator
Looking forward to that, @prologic. :-)
proxy-1:~# curl -qs https://openai.com/gptbot.json | jq -r '.prefixes[].ipv4Prefix' | xargs -I{} ./block-ip.sh {}
Where
block-ip.sh is simply:
#!/bin/sh
ufw insert 1 deny from "$1" to any
proxy-1:~# curl -qs https://openai.com/gptbot.json | jq -r '.prefixes[].ipv4Prefix' | xargs -I{} ./block-ip.sh {}
Where
block-ip.sh is simply:
#!/bin/sh
ufw insert 1 deny from "$1" to any
validator.twtxt.net 😅😅
validator.twtxt.net 😅😅
"twtxtfeevalidator/0.0.1" UA about? I thought I could ask before throwing a 1000GB file at it 🪤 could it be the same 'xt' thing @lyse was talking about the other day?
"twtxtfeevalidator/0.0.1" UA about? I thought I could ask before throwing a 1000GB file at it 🪤 could it be the same 'xt' thing @lyse was talking about the other day?
proxy-1:~# ./audit-log-by-ip.sh 4.227.36.76 | coraza-log-formatter -m -
2025/01/04 23:17:04 4.227.36.76 58982 GET /external?aff-HY0BLO=&f=mediaonly&f=noreplies&nick=g1n&uri=https%3A%2F%2Fthe-president-codes.linegames.org null 0 On OWASP_CRS/4.7.0
Actionset: OWASP_CRS/4.7.0
Message: Bad User Agent
Severity: 0
Raw: SecRule REQUEST_HEADERS:User-Agent "@pmFromFile /etc/caddy/waf/bad_user_agents.txt" "id:2000,log,phase:1,deny,msg:'Bad User Agent'"
proxy-1:~# ./audit-log-by-ip.sh 4.227.36.76 | coraza-log-formatter -m -
2025/01/04 23:17:04 4.227.36.76 58982 GET /external?aff-HY0BLO=&f=mediaonly&f=noreplies&nick=g1n&uri=https%3A%2F%2Fthe-president-codes.linegames.org null 0 On OWASP_CRS/4.7.0
Actionset: OWASP_CRS/4.7.0
Message: Bad User Agent
Severity: 0
Raw: SecRule REQUEST_HEADERS:User-Agent "@pmFromFile /etc/caddy/waf/bad_user_agents.txt" "id:2000,log,phase:1,deny,msg:'Bad User Agent'"
proxy-1:~# ./audit-log-by-ip.sh 4.227.36.76 | coraza-log-formatter -m -
Actionset: OWASP_CRS/4.7.0
Message: Bad User Agent
Severity: 0
Raw: SecRule REQUEST_HEADERS:User-Agent "@pmFromFile /etc/caddy/waf/bad_user_agents.txt" "id:2000,log,phase:1,deny,msg:'Bad User Agent'"
proxy-1:~# ./audit-log-by-ip.sh 4.227.36.76 | coraza-log-formatter -m -
Actionset: OWASP_CRS/4.7.0
Message: Bad User Agent
Severity: 0
Raw: SecRule REQUEST_HEADERS:User-Agent "@pmFromFile /etc/caddy/waf/bad_user_agents.txt" "id:2000,log,phase:1,deny,msg:'Bad User Agent'"
proxy-1:~# jq '. | select(.request.remote_ip=="4.227.36.76")' /var/log/caddy/access/mills.io.log | jq -s '. | last' | caddy-log-formatter -
4.227.36.76 - [2025-01-05 04:05:43.971 +0000] "GET /external?aff-QNAXWV=&f=mediaonly&f=noreplies&nick=g1n&uri=https%3A%2F%2Fmy-hero-ultra-impact-codes.linegames.org HTTP/2.0" 0 0
proxy-1:~# date
Sun Jan 5 04:05:49 UTC 2025
😱
proxy-1:~# jq '. | select(.request.remote_ip=="4.227.36.76")' /var/log/caddy/access/mills.io.log | jq -s '. | last' | caddy-log-formatter -
4.227.36.76 - [2025-01-05 04:05:43.971 +0000] "GET /external?aff-QNAXWV=&f=mediaonly&f=noreplies&nick=g1n&uri=https%3A%2F%2Fmy-hero-ultra-impact-codes.linegames.org HTTP/2.0" 0 0
proxy-1:~# date
Sun Jan 5 04:05:49 UTC 2025
😱
$ grep twtxt.net .config/twtxt/config | wc -l
26
oh yeah i think i might have a tripod around but i do need a sandbag or something i could use as one. maybe yeah a giant bag of rice could work LOL. thanks for the tips!!! i took a video class last year in college and we worked with cameras and tripods with sandbags so it was on my mind
oh yeah i think i might have a tripod around but i do need a sandbag or something i could use as one. maybe yeah a giant bag of rice could work LOL. thanks for the tips!!! i took a video class last year in college and we worked with cameras and tripods with sandbags so it was on my mind
base(2) or base(16) in calc to do that. That’s exhausting after a while.So I now replaced calc with a little Python script which always prints the results in dec/hex/bin, grouped in bytes (if the result is an integer). That’s what I need. It’s basically just a loop around Python’s
exec().$ mcalc
> 123
123 0x[7b] 0b[01111011]
> 1234
1234 0x[04 d2] 0b[00000100 11010010]
> 0x7C00 + 0x3F + 512
32319 0x[7e 3f] 0b[01111110 00111111]
> a = 10; b = 0x2b; c = 0b1100101
10 0x[0a] 0b[00001010]
> a + b + 3 * c
356 0x[01 64] 0b[00000001 01100100]
> 232 - 1
4294967295 0x[ff ff ff ff] 0b[11111111 11111111 11111111 11111111]
> 4 * atan(1)
3.141592653589793
> cos(pi)
-1.0=
base(2) or base(16) in calc to do that. That’s exhausting after a while.So I now replaced calc with a little Python script which always prints the results in dec/hex/bin, grouped in bytes (if the result is an integer). That’s what I need. It’s basically just a loop around Python’s
exec().$ mcalc
> 123
123 0x[7b] 0b[01111011]
> 1234
1234 0x[04 d2] 0b[00000100 11010010]
> 0x7C00 + 0x3F + 512
32319 0x[7e 3f] 0b[01111110 00111111]
> a = 10; b = 0x2b; c = 0b1100101
10 0x[0a] 0b[00001010]
> a + b + 3 * c
356 0x[01 64] 0b[00000001 01100100]
> 232 - 1
4294967295 0x[ff ff ff ff] 0b[11111111 11111111 11111111 11111111]
> 4 * atan(1)
3.141592653589793
> cos(pi)
-1.0=
base(2) or base(16) in calc to do that. That’s exhausting after a while.So I now replaced calc with a little Python script which always prints the results in dec/hex/bin, grouped in bytes (if the result is an integer). That’s what I need. It’s basically just a loop around Python’s
exec().$ mcalc
> 123
123 0x[7b] 0b[01111011]
> 1234
1234 0x[04 d2] 0b[00000100 11010010]
> 0x7C00 + 0x3F + 512
32319 0x[7e 3f] 0b[01111110 00111111]
> a = 10; b = 0x2b; c = 0b1100101
10 0x[0a] 0b[00001010]
> a + b + 3 * c
356 0x[01 64] 0b[00000001 01100100]
> 232 - 1
4294967295 0x[ff ff ff ff] 0b[11111111 11111111 11111111 11111111]
> 4 * atan(1)
3.141592653589793
> cos(pi)
-1.0=
base(2) or base(16) in calc to do that. That’s exhausting after a while.So I now replaced calc with a little Python script which always prints the results in dec/hex/bin, grouped in bytes (if the result is an integer). That’s what I need. It’s basically just a loop around Python’s
exec().$ mcalc
> 123
123 0x\n 0b\n
> 1234
1234 0x\n 0b\n
> 0x7C00 + 0x3F + 512
32319 0x\n 0b\n
> a = 10; b = 0x2b; c = 0b1100101
10 0x\n 0b\n
> a + b + 3 * c
356 0x\n 0b\n
> 232 - 1
4294967295 0x\n 0b\n
> 4 * atan(1)
3.141592653589793
> cos(pi)
-1.0=
robots.txt files at all really, because they mostly get ignored. I don't generally mind if "normal" web crawlers crawl things. But LLM(s) can go fuck themselves 🤣
robots.txt files at all really, because they mostly get ignored. I don't generally mind if "normal" web crawlers crawl things. But LLM(s) can go fuck themselves 🤣