Сервер Matrix Synape не подключается к другим серверам

Сервер Matrix Synape не подключается к другим серверам

Я наконец-то установил свой собственный экземпляр Synapse. Я могу общаться с коллегами внутри своего собственного экземпляра. Он подключен к моему серверу через 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******)

решение1

Я исправил две вещи:

  • Я перенаправил localhost:8008 как порт 8448 публичный с TLS
  • У меня был cert.pemкак SSLCertificateFile, но нужно использовать fullchain.pemдля SSL. Вы также можете проверить это с помощью curl.

Этот сайтпомог мне проверить, чего не хватает.

Связанный контент