Chocobozzz / PeerTube

ActivityPub-federated video streaming platform using P2P directly in your web browser
https://joinpeertube.org/
GNU Affero General Public License v3.0
12.99k stars 1.49k forks source link

Can't follow from a GoToSocial account #6462

Open jcarnat opened 3 months ago

jcarnat commented 3 months ago

Describe the current behavior

Hello,

If it try to follow my Peertube account from one of my GoToSocial account, I'm stuck in the "waiting for approval" step on the GtS side. But my Peertube account is open and accept every request.

Looking at my peertube log, I can see: peertube34.log:{"level":"info","message":"Fetching remote actor https://gts.nogoo.me/users/chirp/main-key.","label":"eggflix.foolbazar.eu:443","timestamp":"2024-07-02T15:51:57.037Z"} peertube34.log:{"err":{"stack":"Error: Cannot fetch remote actor https://gts.nogoo.me/users/chirp/main-key\n at getOrCreateAPActor (file:///var/www/peertube/versions/peertube-v6.1.0/di st/core/lib/activitypub/actors/get.js:18:19)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async file:///var/www/peertube/versions/peertube-v6 .1.0/dist/core/middlewares/activitypub.js:78:23\n at async checkSignature (file:///var/www/peertube/versions/peertube-v6.1.0/dist/core/middlewares/activitypub.js:11:38)","message":"Can not fetch remote actor https://gts.nogoo.me/users/chirp/main-key"},"level":"warn","message":"Error in ActivityPub signature checker.","label":"eggflix.foolbazar.eu:443","timestamp":"2024- 07-02T15:51:57.106Z"} peertube35.log:{"level":"info","message":"Fetching remote actor https://gts.nogoo.me/users/chirp/main-key.","label":"eggflix.foolbazar.eu:443","timestamp":"2024-07-02T15:53:23.052Z"} peertube35.log:{"err":{"stack":"Error: Cannot fetch remote actor https://gts.nogoo.me/users/chirp/main-key\n at getOrCreateAPActor (file:///var/www/peertube/versions/peertube-v6.1.0/di st/core/lib/activitypub/actors/get.js:18:19)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async file:///var/www/peertube/versions/peertube-v6 .1.0/dist/core/middlewares/activitypub.js:78:23\n at async checkSignature (file:///var/www/peertube/versions/peertube-v6.1.0/dist/core/middlewares/activitypub.js:11:38)","message":"Can not fetch remote actor https://gts.nogoo.me/users/chirp/main-key"},"level":"warn","message":"Error in ActivityPub signature checker.","label":"eggflix.foolbazar.eu:443","timestamp":"2024- 07-02T15:53:23.116Z"}

I've also tested following @chocobozzz@peertube2.cpy.re and this behaves the same.

There's an issue in GtS's Github which refers to signature too https://github.com/superseriousbusiness/gotosocial/issues/624 but there don't seem to be a solution from the GtS side.

Steps to reproduce

  1. from a GoToSocial account, search for a Peertube account
  2. click the "Follow" button
  3. the status is "Waiting" and never changes.

Describe the expected behavior

No response

Additional information

MattyBoombalatty commented 3 months ago

Try turning off or on signed fetches in your production.yaml file

jcarnat commented 3 months ago

Try turning off or on signed fetches in your production.yaml file

Wether "federation: sign_federated_fetches" is set to true or false doesn't seem to change anything.

{"level":"info","message":"Fetching remote actor https://gts.nogoo.me/users/chirp/main-key.","label":"eggflix.foolbazar.eu:443","timestamp":"2024-07-03T12:35:29.095Z"} {"err":{"stack":"Error: Cannot fetch remote actor https://gts.nogoo.me/users/chirp/main-key\n at getOrCreateAPActor (file:///var/www/peertube/versions/peertube-v6.1.0/dist/core/lib/activitypub/actors/get.js:18:19)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async file:///var/www/peertube/versions/peertube-v6.1.0/dist/core/middlewares/activitypub.js:78:23\n at async checkSignature (file:///var/www/peertube/versions/peertube-v6.1.0/dist/core/middlewares/activitypub.js:11:38)","message":"Cannot fetch remote actor https://gts.nogoo.me/users/chirp/main-key"},"level":"warn","message":"Error in ActivityPub signature checker.","label":"eggflix.foolbazar.eu:443","timestamp":"2024-07-03T12:35:29.272Z"}

Chocobozzz commented 2 months ago

Can you enable debug logs in PeerTube, restart the server, follow the peertube account from GTS and paste them?

jcarnat commented 2 months ago

Can you enable debug logs in PeerTube, restart the server, follow the peertube account from GTS and paste them?

Here's the log attached. I ran grep -A 2 -B 2 gts.nogoo.me /var/www/peertube/storage/logs/peertube.log. nogoome.log.gz

Chocobozzz commented 2 months ago

Thanks! With the GTS documentation I was able to understand the issue. I'll work on this in the coming months.