]> git.mxchange.org Git - fba.git/log
fba.git
10 months agoFixed:
Roland Häder [Fri, 28 Jul 2023 07:50:49 +0000 (09:50 +0200)]
Fixed:
- also need to check if data[json] has at least one entry
- mode=avg_peers shows software names, let's link to /list?mode=software here

10 months agoContinued:
Roland Häder [Thu, 27 Jul 2023 19:30:14 +0000 (21:30 +0200)]
Continued:
- don't reset during exceptions, maybe later they have fixed their instance

10 months agoContinued:
Roland Häder [Thu, 27 Jul 2023 10:59:53 +0000 (12:59 +0200)]
Continued:
- move nodeinfo handling to new module 'nodeinfo'
- also had to renamed variable nodeinfo to other names
- first newest version at /.well-known/x-nodeinfo2

10 months agoContinued:
Roland Häder [Thu, 27 Jul 2023 09:12:47 +0000 (11:12 +0200)]
Continued:
- check if bot_token is configured

10 months agoContinued:
Roland Häder [Thu, 27 Jul 2023 06:59:04 +0000 (08:59 +0200)]
Continued:
- again a lot of creativity was found, so let's clean this up to 'nextcloud'
  for later support (if they later add it)

10 months agoContinued:
Roland Häder [Thu, 27 Jul 2023 06:08:45 +0000 (08:08 +0200)]
Continued:
- added alias for forgejo

10 months agoContinued:
Roland Häder [Wed, 26 Jul 2023 20:24:12 +0000 (22:24 +0200)]
Continued:
- also show in scoreboard when an unsupported mode was provided
- fixed indenting

10 months agoContinued:
Roland Häder [Wed, 26 Jul 2023 15:49:52 +0000 (17:49 +0200)]
Continued:
- run.app is another mass-hoster for testing/developing code, no real instances
  are hosted there

10 months agoContinued:
Roland Häder [Wed, 26 Jul 2023 14:51:06 +0000 (16:51 +0200)]
Continued:
- command fetch_relays() should be locked
- fixed exception when row[column] is NoneType

10 months agoPartly reverted cdcd2b0109e126bca887d0712a7ddf602e5d6e62:
Roland Häder [Wed, 26 Jul 2023 14:22:34 +0000 (16:22 +0200)]
Partly reverted cdcd2b0109e126bca887d0712a7ddf602e5d6e62:
- "Accept" is not being accepted by misskey (gladly only these instances)
- it must be "Content-Type: application/json" or otherwise it is blocked

10 months agoContinued:
Roland Häder [Wed, 26 Jul 2023 10:34:05 +0000 (12:34 +0200)]
Continued:
- mode 'origin' added for header
- also unsupported are shown

10 months agoContinued:
Roland Häder [Wed, 26 Jul 2023 10:08:05 +0000 (12:08 +0200)]
Continued:
- moved/renamed utils.is_domain_wanted() to domain_helper.is_wanted()
- removed no longer used imports
- tpzo fixed: sof(t)ware

10 months agoContinued:
Roland Häder [Tue, 25 Jul 2023 18:29:21 +0000 (20:29 +0200)]
Continued:
- let also find instances by origin
- added target and title attributes

10 months agoContinued:
Roland Häder [Tue, 25 Jul 2023 12:17:48 +0000 (14:17 +0200)]
Continued:
- blacklisted 'vercel.app'

10 months agoContinued:
Roland Häder [Tue, 25 Jul 2023 02:34:30 +0000 (04:34 +0200)]
Continued:
- can be more accepted charsets

10 months agoContinued:
Roland Häder [Tue, 25 Jul 2023 02:19:04 +0000 (04:19 +0200)]
Continued:
- only set success (status code 200) when software was determined

10 months agoContinued:
Roland Häder [Tue, 25 Jul 2023 01:45:48 +0000 (03:45 +0200)]
Continued:
- owohub is yet another alias for misskey

10 months agoContinued:
Roland Häder [Tue, 25 Jul 2023 01:27:04 +0000 (03:27 +0200)]
Continued:
- request header is "Accept"
- also need to send api_headers (ops)
- need to convert variable 'path' to string

10 months agoContinued:
Roland Häder [Tue, 25 Jul 2023 00:44:31 +0000 (02:44 +0200)]
Continued:
- fixed instances.is_recent()
- blacklisted misskey-forkbomb.cf (the name says it)
- logger level changed to debug

10 months agoContinued:
Roland Häder [Mon, 24 Jul 2023 23:58:08 +0000 (01:58 +0200)]
Continued:
- added command fetch_joinmobilizon() to fetch instances JSON for mobilizon
  (federated events)

10 months agoContinued:
Roland Häder [Mon, 24 Jul 2023 22:51:40 +0000 (00:51 +0200)]
Continued:
- instances.is_recent() now checks recheck_block if 'last_blocked' is provided
- command fetch_blocks() now supports --force parameter
- blacklisted fnaf.stream as this domain has super-long sub-domains (troll)

10 months agoContinued:
Roland Häder [Mon, 24 Jul 2023 22:05:50 +0000 (00:05 +0200)]
Continued:
- ignorelist.com is also for testing/developing

10 months agoContinued:
Roland Häder [Mon, 24 Jul 2023 21:58:15 +0000 (23:58 +0200)]
Continued:
- added column `obfuscated_blocks` to save count of (still) obfuscated blocks
- also exposed it in infos.html view
- blacklisted gitpod.io as this domain floods `instances` table

10 months agoContinued:
Roland Häder [Mon, 24 Jul 2023 14:35:53 +0000 (16:35 +0200)]
Continued:
- added command fetch_relay() for fetching instances from ActivityPub relays
  which show their peers in index page (/)
- added grid.tf as this flooded a lot "testing/developing" sub domains

10 months agoContinued:
Roland Häder [Mon, 24 Jul 2023 12:53:53 +0000 (14:53 +0200)]
Continued:
- custom aoderelay name aliased

10 months agoContinued:
Roland Häder [Mon, 24 Jul 2023 11:17:08 +0000 (13:17 +0200)]
Continued:
- radiant is being "detected" as mastodon and needs to be skipped
- unless forced, skip any recently checked nodeinfos

10 months agoContinued:
Roland Häder [Mon, 24 Jul 2023 10:33:21 +0000 (12:33 +0200)]
Continued:
- added Korean translation of Mastodon

10 months agoContinued:
Roland Häder [Mon, 24 Jul 2023 09:56:39 +0000 (11:56 +0200)]
Continued:
- added info messages when a website is being fetched

10 months agoContinued:
Roland Häder [Mon, 24 Jul 2023 09:48:58 +0000 (11:48 +0200)]
Continued:
- let's not iterate directly (always possible, of course) on the CSV reader
  object, but generate a list from its rows
- this also allow us to check if 'reader' is not NoneType

10 months agoContinued:
Roland Häder [Mon, 24 Jul 2023 09:18:50 +0000 (11:18 +0200)]
Continued:
- added alias iceshrimp (misskey)

10 months agoContinued:
Roland Häder [Mon, 24 Jul 2023 08:30:42 +0000 (10:30 +0200)]
Continued:
- added more aliases, please don't touch this part of your software or else
  other software cannot maybe handle it correctly

10 months agoContinued:
Roland Häder [Mon, 24 Jul 2023 06:16:17 +0000 (08:16 +0200)]
Continued:
- added support for x-nodeinfo2 which can be directly fetched from /.well-known/
  "directory"
- also rewrote fetching well-known nodeinfo URLs to more flexible way

10 months agoOptimized:
Roland Häder [Mon, 24 Jul 2023 05:04:51 +0000 (07:04 +0200)]
Optimized:
- first simple checks then invoke methods
- recheck_obfuscation() is about block lists, not instances, therefore we need
  to check 'last_blocked' timestamp

10 months agoContinued:
Roland Häder [Sun, 23 Jul 2023 18:50:56 +0000 (20:50 +0200)]
Continued:
- fetch_fedipact() belongs to beach.city, those who have their blocklist
  "hidden" in a federated account

10 months agoContinued:
Roland Häder [Sun, 23 Jul 2023 17:30:13 +0000 (19:30 +0200)]
Continued:
- better check if no peers has further been added

10 months agoContinued:
Roland Häder [Sun, 23 Jul 2023 17:14:31 +0000 (19:14 +0200)]
Continued:
- simplified some lines ({node})

10 months agoContinued:
Roland Häder [Sat, 22 Jul 2023 15:23:35 +0000 (17:23 +0200)]
Continued:
- no need to issue warnings for these messages

10 months agoContinued:
Roland Häder [Sat, 22 Jul 2023 12:56:10 +0000 (14:56 +0200)]
Continued:
- added more checks for misskey forks

10 months agoContinued:
Roland Häder [Sat, 22 Jul 2023 12:50:39 +0000 (14:50 +0200)]
Continued:
- areionskey is not misskey, but it supports at least fetch_instances

10 months agoContinued:
Roland Häder [Sat, 22 Jul 2023 12:41:19 +0000 (14:41 +0200)]
Continued:
- added command fetch_joinmisskey to fetch instances from misskey.pages service

10 months agoContinued:
Roland Häder [Sat, 22 Jul 2023 07:30:06 +0000 (09:30 +0200)]
Continued:
- skip already blocked domains by any oliphant members

10 months agoContinued:
Roland Häder [Sat, 22 Jul 2023 07:00:00 +0000 (09:00 +0200)]
Continued:
- copy-paste mistake from blocks list

10 months agoContinued:
Roland Häder [Fri, 21 Jul 2023 07:53:20 +0000 (09:53 +0200)]
Continued:
- added alias fedibird as this is mastodon

10 months agoContinued:
Roland Häder [Fri, 21 Jul 2023 07:05:39 +0000 (09:05 +0200)]
Continued:
- added mitra network supporting fetch_instances (not domain_blocks unfortunate)
- if I fetch domain blocks from chaos.social, it is being reset to zero, so
  let's better bypass it here

10 months agoContinued:
Roland Häder [Fri, 21 Jul 2023 07:03:19 +0000 (09:03 +0200)]
Continued:
- added aliases for pleroma/misskey

10 months agoContinued:
Roland Häder [Fri, 21 Jul 2023 06:56:06 +0000 (08:56 +0200)]
Continued:
- is a dict, keys total, activeHalfyear, activeMonth and maybe more might be
  part of it

10 months agoContinued:
Roland Häder [Fri, 21 Jul 2023 06:53:36 +0000 (08:53 +0200)]
Continued:
- cannot on-the-fly convert a list(?) of sqlite3.Row objects dicts

10 months agoContinued:
Roland Häder [Fri, 21 Jul 2023 05:08:57 +0000 (07:08 +0200)]
Continued:
- prepared for reverse-proxy, e.g. Apache/nginx
- configuration keys "scheme" (newly added) and "hostname" are how your FBA
  instance is called from outside, I was not able to find any other way as
  url_for() was returning a http:// URL and not a https:// ... :-(

10 months agoContinued:
Roland Häder [Thu, 20 Jul 2023 15:22:02 +0000 (17:22 +0200)]
Continued:
- only attempt to fetch peers when software was detected
- added API /api/v1/instance/domain_blocks
- for this the blacklist needs to be rewritten for having "block" reasons
  included

10 months agoContinued:
Roland Häder [Thu, 20 Jul 2023 13:29:39 +0000 (15:29 +0200)]
Continued:
- FBA is now a Fediverse "instance"
- outbound "rss" is supported as feeds are provided
- peer list is available at `/api/v1/instance/peers`, but only instances with
  valid nodeinfo

10 months agoContinued:
Roland Häder [Thu, 20 Jul 2023 12:51:22 +0000 (14:51 +0200)]
Continued:
- added another alias for misskey
- / (index page) should be last

10 months agoContinued:
Roland Häder [Wed, 19 Jul 2023 15:09:54 +0000 (17:09 +0200)]
Continued:
- added some checks for parameter 'origin'

10 months agoContinued:
Roland Häder [Wed, 19 Jul 2023 11:41:24 +0000 (13:41 +0200)]
Continued:
- renamed parameter --all to --force

10 months agoContinued:
Roland Häder [Wed, 19 Jul 2023 11:05:14 +0000 (13:05 +0200)]
Continued:
- in case of database error (on their side), there is no navigation which
  lead here to a method invocation findAll() on NoneType

11 months agoContinued:
Roland Häder [Mon, 17 Jul 2023 16:12:04 +0000 (18:12 +0200)]
Continued:
- fetch_blocks should NOT check if a blocked domain has recently been "crawled"
  as this would exclude it from being blocked (ops!)

11 months agoContinued:
Roland Häder [Mon, 17 Jul 2023 16:06:59 +0000 (18:06 +0200)]
Continued:
- blacklisted `ngrok.app` as this is another testing/developing domain name

11 months agoContinued:
Roland Häder [Mon, 17 Jul 2023 13:47:09 +0000 (15:47 +0200)]
Continued:
- log returned empty lists separately from warning (mostly caught exception)

11 months agoContinued:
Roland Häder [Mon, 17 Jul 2023 13:24:30 +0000 (15:24 +0200)]
Continued:
- rewrote a bit for better logging
- also don't nest function/method invocations, they are not easy to debug

11 months agoContinued:
Roland Häder [Mon, 17 Jul 2023 09:20:54 +0000 (11:20 +0200)]
Continued:
- skip below code when vital elements 'domain', 'severity' are not found

11 months agoContinued:
Roland Häder [Sun, 16 Jul 2023 22:17:44 +0000 (00:17 +0200)]
Continued:
- added "alias" (long version)

11 months agoContinued:
Roland Häder [Sun, 16 Jul 2023 22:14:53 +0000 (00:14 +0200)]
Continued:
- added flooder to blacklist
- added more networks for peers at least: 'gotosocial', 'brighteon',
  'wildebeest', 'bookwyrm'

11 months agoContinued:
Roland Häder [Sat, 15 Jul 2023 01:19:59 +0000 (03:19 +0200)]
Continued:
- abostrophed alias for 'takahe' network
- alias added for misskey

11 months agoContinued:
Roland Häder [Sat, 15 Jul 2023 00:47:38 +0000 (02:47 +0200)]
Continued:
- init rows list
- log type and length
- check if 'domain' and 'severity' are part of 'block' dictionary

11 months agoContinued:
Roland Häder [Fri, 14 Jul 2023 02:56:35 +0000 (04:56 +0200)]
Continued:
- alias for misskey (Russian)

11 months agoContinued:
Roland Häder [Thu, 13 Jul 2023 10:46:52 +0000 (12:46 +0200)]
Continued:
- check if dict 'row' has key 'hostname'

11 months agoContinued:
Roland Häder [Thu, 13 Jul 2023 07:32:12 +0000 (09:32 +0200)]
Continued:
- these values don't cause you 3 GB RAM usage, here they run fine with
  800MB to 1GB

11 months agoContinued:
Roland Häder [Wed, 12 Jul 2023 09:38:28 +0000 (11:38 +0200)]
Continued:
- */* catches all, so let it pass as valid content type

11 months agoContinued:
Roland Häder [Wed, 12 Jul 2023 09:20:12 +0000 (11:20 +0200)]
Continued:
- don't let the user set something higher (- 50) than system allows

11 months agoContinued:
Roland Häder [Wed, 12 Jul 2023 09:05:03 +0000 (11:05 +0200)]
Continued:
- max "crawl" depth and min peerlist size to go deeper is now configurable
- for example for low-memory systems, keep max_crawl_depth small and
  min_peers_length big
- the default values may cause python3 to consume ~550 MB RAM
- so you can practially say each depth adds another MB RAM usage

11 months agoContinued:
Roland Häder [Wed, 12 Jul 2023 08:30:27 +0000 (10:30 +0200)]
Continued:
- roadhouse is an alias for hubzilla, it is currently unsupported as it doesn't
  provide needed APIs for fetching peers and blocklists but just in case they
  add it
- same with nextcloud and others
- shumihub is an alias for misskey

11 months agoContinued:
Roland Häder [Wed, 12 Jul 2023 05:28:43 +0000 (07:28 +0200)]
Continued:
- a recursive (aka. "crawl") depth of 500 is REALLY far deep, practically the
  whole Fediverse
- minimum peer count to deepen the "crawl" to max depth is 100 peers
- flush any pending data of current domain before continuing

11 months agoContinued:
Roland Häder [Wed, 12 Jul 2023 04:49:13 +0000 (06:49 +0200)]
Continued:
- recursive adding is totally okay, as it won't happen to go endless
- renamed blocks.add_instance() to add()

11 months agoContinued:
Roland Häder [Wed, 12 Jul 2023 00:37:40 +0000 (02:37 +0200)]
Continued:
- okay, this instance floods with non-existing sub-domains

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 21:27:34 +0000 (23:27 +0200)]
Continued:
- added IDNA encoding

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 13:21:38 +0000 (15:21 +0200)]
Continued:
- ops, header was wrong here due to previous changes (search for all headers)
- but after a few renames, all is back in order!

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 12:26:58 +0000 (14:26 +0200)]
Continued:
- need to find all, not just first element ...

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 12:00:27 +0000 (14:00 +0200)]
Continued:
- fixed issues from pylint

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 11:48:05 +0000 (13:48 +0200)]
Continued:
- moved utils.alias_block_level() to blocks model
- fixed some pylint issues

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 10:31:23 +0000 (12:31 +0200)]
Continued:
- introduced new module "processing"
- renamed process_*() to *() ;-)

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 10:22:24 +0000 (12:22 +0200)]
Continued:
- strip off leading dots as the IDNA encoder gets confused about it

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 08:24:04 +0000 (10:24 +0200)]
Continued:
- exclude chaos.social here as their API for fetching blocks is disabled and
  invoking set_total_blocks() would reset it to zero

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 06:22:04 +0000 (08:22 +0200)]
Continued:
- maybe does not contain any header at all?

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 06:14:33 +0000 (08:14 +0200)]
Continued:
- find more blocklists/peer lists from Lemmy by also scanning for (out-dated?
  class=container)

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 05:58:58 +0000 (07:58 +0200)]
Continued:
- alias "quarantined_instances" to "quarantined", you may have to run
  `DELETE FROM blocks WHERE block_level='quarantined_instances';`
- ... and: `UPDATE instances SET last_blocked = NULL WHERE software IS NOT NULL AND last_status_code = 200;`
- ... to reset your database, then don't forget to execute ./fba.py fetch_blocks

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 05:52:03 +0000 (07:52 +0200)]
Continued:
- just remove that single hash to get final SQL statements being printed

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 05:37:16 +0000 (07:37 +0200)]
Continued:
- nope, the returned 'blocking' list is differently structured

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 04:42:34 +0000 (06:42 +0200)]
Continued:
- blacklisted hexbear.net as their JavaScript contains Shell commands + broken
  JSON inside that script
- added parsing JSON from JavaScript starting with 'isoData' (encapsulated to
  function parse_script())

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 02:53:55 +0000 (04:53 +0200)]
Continued:
- more generic scan for possible linked/blocked instances

11 months agoContinued:
Roland Häder [Tue, 11 Jul 2023 02:32:43 +0000 (04:32 +0200)]
Continued:
- updating distinct domain nodeinfos can be forced

11 months agoFixed:
Roland Häder [Mon, 10 Jul 2023 23:04:13 +0000 (01:04 +0200)]
Fixed:
- "TypeError: 'sqlite3.Row' object does not support item assignment"

11 months agoContinued:
Roland Häder [Mon, 10 Jul 2023 22:58:18 +0000 (00:58 +0200)]
Continued:
- code UTF-8 international domains to punycode (IDNA) here, too

11 months agoContinued:
Roland Häder [Mon, 10 Jul 2023 22:53:18 +0000 (00:53 +0200)]
Continued:
- okay, then don't check if they are punycode and then raise an exception ...

11 months agoContinued:
Roland Häder [Mon, 10 Jul 2023 22:51:49 +0000 (00:51 +0200)]
Continued:
- added command convert_idna to convert UTF-8 encoded international domain
  names to punycode domains (IDNA), it caused some to be added in both
  encodings

11 months agoContinued:
Roland Häder [Mon, 10 Jul 2023 21:06:51 +0000 (23:06 +0200)]
Continued:
- fixed missing dict key element
- added debug messages

11 months agoContinued:
Roland Häder [Mon, 10 Jul 2023 20:19:40 +0000 (22:19 +0200)]
Continued:
- added CSV file gardenfence.csv for oliphant blocklist member sunny.garden

11 months agoContinued:
Roland Häder [Mon, 10 Jul 2023 19:38:29 +0000 (21:38 +0200)]
Continued:
- alias severity level during fetch_oliphant, too

11 months agoContinued:
Roland Häder [Mon, 10 Jul 2023 19:30:40 +0000 (21:30 +0200)]
Continued:
- handle over proper severity level

11 months agoContinued:
Roland Häder [Mon, 10 Jul 2023 19:12:11 +0000 (21:12 +0200)]
Continued:
- renamed utils.deobfuscate_domain() to deobfuscate()
- oliphant blocklists may contain obfuscated domains, need to deobfuscate them
  first to get actual domain names

11 months agoContinued:
Roland Häder [Mon, 10 Jul 2023 17:35:39 +0000 (19:35 +0200)]
Continued:
- cannot get len() (number of rows) from reader
- instances.set_total_blocks() accepts as 2nd parameter not direct count, so
  let's handle the domain list

11 months agoContinued:
Roland Häder [Mon, 10 Jul 2023 12:07:39 +0000 (14:07 +0200)]
Continued:
- "storage share" is nextcloud again
- proper domain for bka.li