Matrix

Matrix Synape 伺服器未連接到其他伺服器

  • January 10, 2021

我終於設置了我自己的突觸實例。我可以在自己的實例中與我的大學聊天。他通過 WAN 連接到我的伺服器(prodforwarding),而我正在通過 LAN 寫入。

但是我們無法連接到其他伺服器(我試過了,matrix.org、mozilla.org 和 librem.one)。當我嘗試從另一個實例邀請一個人時,我會得到這個日誌:

2021-01-08 - synapse.http.matrixfederationclient - 505 - INFO - POST-2857 - {GET-O-41} [librem.one] Got response headers: 401 Unauthorized
2021-01-08 - synapse.http.matrixfederationclient - 583 - WARNING - POST-2857 - {GET-O-41} [librem.one] Request failed: GET matrix://librem.one/_matrix/federation/v1/query/profile?user_id=******librem.one&field=displayname: HttpResponseException('401: Unauthorized')
2021-01-08 - synapse.handlers.message - 511 - INFO - POST-2857 - Failed to get profile information for @******:librem.one: 401: Failed to find any key to satisfy VerifyJsonRequest(server=example.com, key_ids=['ed25519:***'], min_valid=161013554******)
2021-01-08 - synapse.http.matrixfederationclient - 505 - INFO - POST-2857 - {PUT-O-42} [librem.one] Got response headers: 401 Unauthorized
2021-01-08 - synapse.http.matrixfederationclient - 583 - WARNING - POST-2857 - {PUT-O-42} [librem.one] Request failed: PUT matrix://librem.one/_matrix/federation/v2/invite/******: HttpResponseException('401: Unauthorized')
2021-01-08 - synapse.http.server - 83 - ERROR - POST-2857 - Failed handle request via 'RoomCreateRestServlet': <XForwardedForRequest at 0x************ method='POST' uri='/_matrix/client/r0/createRoom' clientproto='HTTP/1.0' site=8008>
Traceback (most recent call last):
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/http/server.py", line 224, in _async_render_wrapper
   callback_return = await self._async_render(request)
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/http/server.py", line 400, in _async_render
   callback_return = await raw_callback_return
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/rest/client/v1/room.py", line 83, in on_POST
   requester, self.get_room_config(request)
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/handlers/room.py", line 795, in create_room
   content=content,
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/handlers/room_member.py", line 578, in update_membership_locked
   require_consent=require_consent,
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/handlers/room_member.py", line 219, in _local_membership_update
   requester, event, context, extra_users=[target], ratelimit=ratelimit,
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/util/metrics.py", line 92, in measured_func
   r = await func(self, *args, **kwargs)
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/handlers/message.py", line 971, in handle_new_client_event
   requester, event, context, ratelimit=ratelimit, extra_users=extra_users
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/handlers/message.py", line 1121, in persist_and_notify_client_event
   invitee.domain, event
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/handlers/federation.py", line 1298, in send_invite
   pdu=event,
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/federation/federation_client.py", line 745, in send_invite
   content = await self._do_send_invite(destination, pdu, room_version)
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/federation/federation_client.py", line 779, in _do_send_invite
   "invite_room_state": pdu.unsigned.get("invite_room_state", []),
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/federation/transport/client.py", line 311, in send_invite_v2
   destination=destination, path=path, data=content, ignore_backoff=True
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/http/matrixfederationclient.py", line 716, in put_json
   timeout=timeout,
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/http/matrixfederationclient.py", line 293, in _send_request_with_optional_trailing_slash
   response = await self._send_request(request, **send_request_args)
 File "/opt/synapse/env/lib/python3.7/site-packages/synapse/http/matrixfederationclient.py", line 538, in _send_request
   raise exc
synapse.api.errors.HttpResponseException: 401: Unauthorized

每當我嘗試連接到 Element 中的遠端房間時,我都會收到這樣的消息:

Failed to find any key to satisfy VerifyJsonRequest(server=example.com, key_ids=['ed25519:XXXXXX'], min_valid=1610140******)

我修復了兩件事:

  • 我通過 TLS 將 localhost:8008 轉發為公共埠 8448
  • 我有cert.pemas SSLCertificateFile,但應該使用fullchain.pemfor SSL。您也可以使用 curl 進行檢查。

該站點幫助我檢查了缺少的內容。

引用自:https://serverfault.com/questions/1049142