]> git.mxchange.org Git - fba.git/log
fba.git
15 months agoContinued:
Roland Häder [Sun, 6 Aug 2023 23:25:19 +0000 (01:25 +0200)]
Continued:
- also store peer count for relays

15 months agoContinued:
Roland Häder [Sun, 6 Aug 2023 21:40:58 +0000 (23:40 +0200)]
Continued:
- added debug line

15 months agoContinued:
Roland Häder [Sun, 6 Aug 2023 05:05:04 +0000 (07:05 +0200)]
Continued:
- ignore unsupported content type when response.text has zero length

15 months agoContinued:
Roland Häder [Sun, 6 Aug 2023 01:01:37 +0000 (03:01 +0200)]
Continued:
- ops, missed 1st parameter

15 months agoContinued:
Roland Häder [Sat, 5 Aug 2023 21:57:07 +0000 (23:57 +0200)]
Continued:
- added --timeout option for easy re-checking instances with timeout
- please increase "connection_timeout" and "read_timeout" config keys first!

15 months agoContinued:
Roland Häder [Sat, 5 Aug 2023 21:54:19 +0000 (23:54 +0200)]
Continued:
- added network 'mammuthus[ experimental]' for retriving peers
- moved software-related (not version number) functions to software.py
- strip off " experimental", so you can enter e.g. 'mammuthus' easier

15 months agoContinued:
Roland Häder [Sat, 5 Aug 2023 16:17:20 +0000 (18:17 +0200)]
Continued:
- don't link or show 'None', just a dash is okay

15 months agoContinued:
Roland Häder [Sat, 5 Aug 2023 13:52:13 +0000 (15:52 +0200)]
Continued:
- throw exception again, if they happen then they won't be fixed within a
  split of a second
- also make sure that home directory of FBA is properly set, sure you can
  choose a different directory or take the default /home/fba/
- added recheck.sh, a small wrapper script I wrote for myself and you should
  try. For example above exceptions might cause the used software not being
  detected (sure with timeouts) then you can run ./recheck.sh --software
  to re-test them

15 months agoContinued:
Roland Häder [Fri, 4 Aug 2023 08:36:36 +0000 (10:36 +0200)]
Continued:
- ignore 'None' as content-type it often happens with Lemmy instannces

15 months agoContinued:
Roland Häder [Thu, 3 Aug 2023 19:33:05 +0000 (21:33 +0200)]
Continued:
- update last_blocked timestamp when a blocklist has been fetched/generated for
  an instance aka. "blocker"

15 months agoContinued:
Roland Häder [Mon, 31 Jul 2023 23:10:27 +0000 (01:10 +0200)]
Continued:
- also mode=obfuscator is showing software names, let's link them, too

15 months agoContinued:
Roland Häder [Mon, 31 Jul 2023 09:51:56 +0000 (11:51 +0200)]
Continued:
- prevent blacklisted entries being processed, throw an exception if it happens

15 months agoContinued:
Roland Häder [Fri, 28 Jul 2023 08:19:39 +0000 (10:19 +0200)]
Continued:
- added re+ as alias but not with a regular + sign but UTF-8 encoded ...

15 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

16 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

16 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

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

16 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)

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

16 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

16 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

16 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

16 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

16 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

16 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

16 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

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

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

16 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

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

16 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

16 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

16 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)

16 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)

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

16 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

16 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

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

16 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

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

16 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

16 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

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

16 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

16 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

16 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

16 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

16 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

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

16 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

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

16 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

16 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

16 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

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

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

16 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

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

16 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

16 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

16 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:// ... :-(

16 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

16 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

16 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

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

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

16 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

16 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!)

16 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

16 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)

16 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

16 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

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

16 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'

16 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

16 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

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

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

16 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

16 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

16 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

16 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

16 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

16 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

16 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()

16 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

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

16 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!

16 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 ...

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

16 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

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

16 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

16 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

16 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?

16 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)

16 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

16 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

16 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

16 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())